Mobile Money

The Mobile Money APIs support payouts to bank accounts and mobile money wallets in Kenya and Ghana.

Use these APIs to retrieve supported institutions, verify beneficiary account details, initiate transfers, and receive payout status updates by webhook.

Base URL

https://backendapi.sayswitchgroup.com

Authentication

All requests require authentication and accept JSON payloads.

Authorization: Bearer YOUR_SECRET_KEY
Content-Type: application/json

Supported Currencies

CurrencyCountryDescription
KESKenyaKenyan Shilling
GHSGhanaGhana Cedi

Where a currency value is required, pass either KES or GHS.

Endpoints

ActionMethodEndpoint
Get bank and mobile money provider listGEThttps://backendapi.sayswitchgroup.com/api/v1/bank_list/{currency}
Verify account or mobile money numberPOSThttps://backendapi.sayswitchgroup.com/api/v1/account_name_verify
Initiate bank or mobile money payoutPOSThttps://backendapi.sayswitchgroup.com/api/v1/bank_transfer

Payout Flow

  1. Get the supported institutions for KES or GHS.
  2. Use the returned bankCode as the bank_code when verifying or initiating a payout.
  3. Verify the beneficiary account or mobile money number with account_name_verify.
  4. Initiate the payout with bank_transfer.
  5. Listen for webhook notifications to confirm the final payout status.

Best Practices

#Recommendation
1Always call /api/v1/account_name_verify before initiating a transfer to confirm account details.
2Use a UUID v4 as the reference value for every transfer to ensure uniqueness.
3Store your reference before calling the API to avoid duplicate transfers.
4Listen for webhook notifications instead of polling for transfer status.
5Respond to webhooks with HTTP 200 promptly and process heavy tasks asynchronously.
6Validate the notify and notifyType fields before acting on a webhook payload.