Payout
Last updated
Last updated
Send money locally with Klasha to bank accounts and mobile money wallets in Africa.
NGN
GHS (beta)
KES (beta)
You can transfer money in four easy steps:
Verify the account number
Create transfer recipient
Initiate a transfer
Listen for status.
to the Postman collection
Find your keys on the Klasha Dashboard → Settings → Generate API Keys ()
Klasha Dashboard, Generate API Keys page
It’s a unique reference sent as requestId
that can be used to uniquely identify a transfer.
Serialize the payload
You need to encrypt the entire create transfer payload that we specify on the previous point (here). In order to encrypt the body correctly, you’d need the encryptionKey (that you can obtain following this guide here). Find an encryption algorithm code snippet below:
Merchant Payout request
POST
{{env_url}}/wallet/merchant/{businessId}/bank/transfer/v2/request
You would need to pass, as a header the x-auth-token. This can be obtained from your merchant dashboard → Settings → Generate API keys → Merchant public key.
Content-Type
application/json
x-auth-token
Your merchant public key
Authorization
Bearer <token here>
Request body (encrypted):
When a transfer is initiated, it could take a few seconds or minutes to be processed. This is why we recommend relying on webhooks for verification as opposed to polling.
Once a transfer is processed, we send the final status of the transfer as a POST request to your webhook URL.
To get your wallet balance you would need to make a GET request to the API below:
GET
{{env_url}}/nucleus/business/api/wallets
Headers
Content-Type
application/json
Authorization
Bearer <token>
x-auth-token
<public key>
Response
The possible statuses are listed and described in the following table:
successful
This is sent when the transfer is successful
failed
This is sent when the transfer fails
pending
This transfer is still in progress. Please wait for either success or failed.
You can fetch the transfer from the Find by ref
API on the Postman collection to know the status. See example in the below screenshot.
All transfers would be debited from NGN Wallet balance. Ensure you have sufficient balance before making any transfer request.
From the bank code API on the Postman collection , you can fetch the bank codes. see the screenshot below for an example
Using the Resolve account number endpoint on the Postman collection , verify the account number by making use of the bank codes gotten from here. See an example in the screenshot below