Send money to customers via mobile money
Post https://dashboard.mbiyo.africa/api/v1/merchant/payout
Authorization* string
Pass your merchant API key as a bearer token in the request header to authorize this call
Content-Type* string
application/json
amount* number
The amount to send to the recipient (minimum: 0.01)
currency* string
3-letter ISO currency code (e.g., XOF, GHS, KES)
payment_method* string
Payment method to use. Currently only supports: mobile_money
order_id string
Your internal order/transaction reference ID (optional, max 255 characters)
callback_url* string
URL where payout status updates will be sent (webhook URL) - Required
metadata* object
Recipient information (required for mobile_money)
metadata.network* string
Mobile money network (e.g., mtn, orange, moov, airtel, mpesa)
metadata.phone_number* string
Recipient phone number for mobile money
metadata.country_code* string
2-letter ISO country code (e.g., BF, GH, KE, CI)
curl -X POST "https://dashboard.mbiyo.africa/api/v1/merchant/payout" \
-H "Authorization: Bearer YOUR_MERCHANT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 5000,
"currency": "XOF",
"payment_method": "mobile_money",
"order_id": "PAYOUT-12345",
"callback_url": "https://yourdomain.com/webhook/payout-status",
"metadata": {
"network": "orange",
"phone_number": "+22670123456",
"country_code": "BF"
}
}'
{
"status": "success",
"message": "Payout initiated successfully",
"data": {
"transaction_id": "TXN-PAYOUT-9876543210",
"amount": 5000,
"fee": 50,
"charged_amount": 5050,
"currency": "XOF",
"order_id": "PAYOUT-12345",
"status": "pending",
"payment_method": "mobile_money",
"created_at": "2025-12-16T14:20:00Z",
"metadata": {
"phone_number": "22670123456",
"network": "orange",
"country_code": "BF"
},
}
}
{
"status": "error",
"message": "KYC approval required for live payouts",
"data": null
}
{
"status": "error",
"message": "Insufficient balance for payout",
"data": {
"required_amount": 5050,
"available_balance": 2000,
"currency": "XOF"
}
}
| Status | Description |
|---|---|
| pending | Payout has been initiated and is being processed |
| successful | Payout has been completed successfully and money has been sent to recipient |
| failed | Payout has failed. The amount will be refunded to your balance |
| cancelled | Payout has been cancelled |
When the payout status changes, we will send a POST request to your callback_url with the following payload:
{
"event": "payout.status.updated",
"transaction_id": "TXN-PAYOUT-9876543210",
"order_id": "PAYOUT-12345",
"status": "successful",
"amount": 5000,
"fee": 50,
"currency": "XOF",
"payment_method": "mobile_money",
"recipient": {
"phone_number": "22670123456",
"network": "orange"
},
"updated_at": "2025-12-16T14:25:00Z"
}
Payout fees are automatically deducted from your merchant wallet balance. The total charged amount includes: