SwiftGoma.SwiftGoma

Search endpoints

Jump to any API endpoint by name, method, or path

Payouts

Request payout approval

POST/api/v1/pawapay/payouts/request-approval

First step of the OTP-gated payout flow — validates the payout details and emails a verification code to the requesting admin. Nothing is sent to PawaPay yet.

Requires Authorization
ADMIN only
Payout OTP

Body parameters

amountnumberrequired
Greater than 0.
currencystringrequired
e.g. USD.
countrystringrequired
ISO country code.
providerstringrequired
Mobile money provider code.
recipientPhoneNumberstringrequired
Digits only, with country code.
customerMessagestringrequired
4–22 alphanumeric characters.
clientReferenceIdstring
Your own reference for this payout.

Notes

  • Also enforces a daily payout count and per-currency amount limit for the requesting admin.
  • This is the same OTP-gated payout mechanism the expense-approval flow uses to pay vendors — it's not used for seller wallet payouts, which go through MbiyoPay instead.
Request
curl --request POST \
  --url https://api.swiftgoma.com/api/v1/pawapay/payouts/request-approval \
  --header 'Authorization: Bearer <access_token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "amount": "<amount>",
  "currency": "<currency>",
  "country": "<country>",
  "provider": "<provider>",
  "recipientPhoneNumber": "<recipientPhoneNumber>",
  "customerMessage": "<customerMessage>",
  "clientReferenceId": "<clientReferenceId>"
}'
200Example response
{
  "success": true,
  "data": {
    "pendingId": "9f8e7d6c-5b4a-3210-9f8e-7d6c5b4a3210",
    "message": "Un code de vérification a été envoyé à admin@swiftgoma.com. Saisissez-le pour approuver ce paiement.",
    "expiresInMinutes": 5,
    "summary": {
      "amount": 50,
      "currency": "USD",
      "country": "CD",
      "provider": "MTN_MOMO_COD",
      "recipientPhoneNumber": "243812345678"
    }
  }
}