Disbursements
Send money from your Partner Wallet (OVA) to mobile money wallets or bank accounts. Use /disburse/ for standard payouts and /remittance/ when you need to include remittance sender details.
https://testxchange.korba365.com/api/v1.0/disburse/
https://testxchange.korba365.com/api/v1.0/remittance/
Request Body
Send JSON with Content-Type: application/json and the HMAC authorization header. Mobile money disbursements use network_code values such as MTN, AIR, TIG, and VOD. Bank transfers use ISP.
Bank Transfer Fields
When network_code is ISP, include the bank fields below.
Remittance Fields
The /remittance/ endpoint accepts the same payout fields plus remittance metadata. These fields can also be supplied on /disburse/ when you need the information stored for reporting.
Examples
Mobile Money Disbursement
curl -X POST https://testxchange.korba365.com/api/v1.0/disburse/ \ -H "Authorization: HMAC YOUR_CLIENT_KEY:YOUR_SIGNATURE" \ -H "Content-Type: application/json" \ -d '{ "client_id": 2, "customer_number": "0241234567", "amount": "100.00", "transaction_id": "DIS-20260626-001", "network_code": "MTN", "callback_url": "https://yourapp.com/callbacks/disburse/", "description": "Staff salary payment", "payer_name": "Acme Ltd", "sender_amount": "100.00", "sender_currency": "GHS", "sender_country": "GHA", "beneficiary_name": "Yaw Sarpong" }'
Bank Transfer
curl -X POST https://testxchange.korba365.com/api/v1.0/disburse/ \ -H "Authorization: HMAC YOUR_CLIENT_KEY:YOUR_SIGNATURE" \ -H "Content-Type: application/json" \ -d '{ "client_id": 2, "amount": "500.00", "transaction_id": "DIS-BANK-20260626-001", "network_code": "ISP", "callback_url": "https://yourapp.com/callbacks/disburse/", "description": "Vendor payment", "bank_account_number": "1001000425098", "bank_account_name": "Jane Doe", "recipient_bank_name": "ECOBANK GHANA LTD", "bank_code": "300312", "payer_name": "John Doe", "payer_mobile": "0244123456", "sender_amount": "40.00", "sender_currency": "USD", "sender_country": "USA" }'
Lookup Endpoints
Disbursement Network Options
https://testxchange.korba365.com/api/v1.0/disbursement_network_options/
Authorized Bank List
Use this endpoint to fetch active banks and the bank codes required for ISP transfers.
https://testxchange.korba365.com/api/v1.0/authorized_bank_list/
{ "results": [ { "bank_code": "300312", "full_name": "ECOBANK GHANA LTD" } ], "response_code": "100" }
Authorized Customer Lookup
Verify the account name before sending a bank or momo transfer.
https://testxchange.korba365.com/api/v1.0/authorized_customer_lookup/
{ "client_id": 2, "bank_account_number": "1001000425098", "bank_code": "300312" }
Responses
{ "success": true, "data": { "StatusCode":"100", "StatusMessage":"Success", "AccountName":"THOMAS AKOLOVI", "AccountNumber":"20********8", "BankCode":"300323", "BankName":"FIDELITY BANK LIMITED" }, "error_code": null }
{ "success": false, "error_code": 407, "error_message": "Duplicate Transaction ID" }
Callbacks
The synchronous response only confirms that the payout was accepted for processing. Korba Xchange calls your callback_url with the final transaction_id, status, and message.
https://yourapp.com/callbacks/disburse/?transaction_id=DIS-20260626-001&status=SUCCESS&message=Transaction%20completed