Payin
Initiate payin
POST
/api/v1/mbiyopay/payinRequests a mobile money charge from a payer through MbiyoPay — the same underlying call buyer checkout uses, covering DRC and Rwanda.
Requires Authorization
ADMIN only
Payment
Body parameters
amountnumberrequired | Within the supported range for the currency — see Supported countries below. |
currencystringrequired | Must be supported by the given countryCode. |
networkstringrequired | Must be supported by the given countryCode. |
phoneNumberstringrequired | 9–15 digits — formatting characters are stripped automatically. |
countryCodestringrequired | CD or RW. |
orderIdstring | Your own reference. Auto-generated if omitted. |
Possible errors
| 400 | MBIYOPAY_PAYIN_FAILED | Le paiement a été refusé par l'opérateur mobile money. |
Notes
- If orderId isn't provided, one is derived deterministically from amount, currency, network, and phone number within a 5-minute window — a duplicate submission resolves to the same payin instead of charging twice.
Request
curl --request POST \
--url https://api.swiftgoma.com/api/v1/mbiyopay/payin \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"amount": "<amount>",
"currency": "<currency>",
"network": "<network>",
"phoneNumber": "<phoneNumber>",
"countryCode": "<countryCode>",
"orderId": "<orderId>"
}'201Example response
{
"success": true,
"data": {
"orderId": "SWG-IN-9f8e7d6c5b4a3210",
"transactionId": "txn_5e6f7a8b",
"status": "pending",
"amount": 50,
"currency": "USD",
"network": "vodacom",
"countryCode": "CD",
"createdAt": "2026-02-15T09:00:00.000Z"
}
}