SwiftGoma.SwiftGoma

Search endpoints

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

Payout

Request payout approval

POST/api/v1/mbiyopay/payout/request-approval

First step of the OTP-gated payout flow — the same pattern used for PawaPay. Validates the request and emails a verification code; nothing is sent to MbiyoPay yet.

Requires Authorization
ADMIN only
Payout OTP

Body parameters

amountnumberrequired
Within the supported range for the currency.
currencystringrequired
Must be supported by the given countryCode.
networkstringrequired
Must be supported by the given countryCode.
phoneNumberstringrequired
9–15 digits.
countryCodestringrequired
CD or RW.
beneficiarystringrequired
Name of the payout recipient.
orderIdstring
Your own reference.

Notes

  • Also enforces a daily payout count and per-currency amount limit for the requesting admin — shared with PawaPay's payout limits.
Request
curl --request POST \
  --url https://api.swiftgoma.com/api/v1/mbiyopay/payout/request-approval \
  --header 'Authorization: Bearer <access_token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "amount": "<amount>",
  "currency": "<currency>",
  "network": "<network>",
  "phoneNumber": "<phoneNumber>",
  "countryCode": "<countryCode>",
  "beneficiary": "<beneficiary>",
  "orderId": "<orderId>"
}'
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",
      "beneficiary": "Aline Mapendo",
      "phoneNumber": "243812345678",
      "network": "airtel"
    }
  }
}