Domestic Bank Payout Endpoint
You can use your chpter.’s wallet as a source to send money across countries and different currencies. We've got different options to match your use case. With chpter. , you can transfer to bank accounts, mobile money wallets, and other chpter. accounts NOTE: The minimum withdrawal amount is Ksh. 100.
To initialize the transaction, you’ll need to pass information such as payout method, account details, full name, total amount etc. Some of the information is required and you can pass additional information to the particular payout.
Endpoint Parameters
Here is the full list of parameters you can pass:
client_details: object | required
An object providing recipient's payouts details.
full_name: string | required
The recipient's full name.
phone_number: string | required
The recipient's phone number to process the Mobile payout. Country code followed by the 9-digit customer’s Mobile Number phone number in the 2547xxxxxxxx format. The phone number should start with 7.
email: string | required
The recipient's email address.
destination: object | required
An object providing payout destination details.
type: string | required
The type of payout method at the time of the transaction.
country_code: string | required
The recipient's ISO country code.
bank_name: string | required
The recipient's bank name.
bank_code: integer | required
A 2 digit code that belongs to he recipient's bank.
account_name: string | required
The recipient's bank account name.
account_number: integer | required
The recipient's bank account number.
transfer: object | required
An object providing payout details.
amount: double | required
Total Amount intended to be sent by this payout. A positive integer representing how much to payout.
currency: string | required
The currency which is used to make the payout. (3 character code)
reference_id: integer | required
Payout reference number. (unique 12 digit string for each transfer.)
description: string | required
Any additional descriptions about the payout.
webhook_endpoint: object | required
An object providing your webhook/ callback url.
webhook_url: url | required
Your callback/web hook url to get success or failed responses once payouts are complete.
Request Payload
The Payment Redirect API payload example.
{
"client_details": {
"full_name": "John Doe",
"phone_number": "254700123123",
"email": "johndoe@mail.com"
},
"destination": {
"type": "bank",
"country_code": "KE",
"bank_name": "ABSA BANK",
"bank_code": "03",
"account_name": "ACCOUNT NAME LTD",
"account_number": "1234567890"
},
"transfer": {
"amount": "200",
"currency": "KES",
"currency_code": "KES",
"reference_id": "692194627798",
"description": "test description"
},
"webhook_endpoint": {
"webhook_url": "https://chpter.co/webhook-url"
}
}
Response
The response you get to confirm that the mobile payout has been initiated.
Successfull response
{
"message": "Domestic Bank Transfer Initiated",
"success":true,
"status": 200
}
Failed response
{
"message":"Insufficient balance",
"success":false,
"status":400
}
Successful CallBack Response
The response your callback/webhook gets when the domestic bank payout is successful.
{
"amount":"150",
"currency":"KES",
"message":"Payout Successful",
"payout_fee":"0.75",
"reference_id":"692194627798",
"status":"Success",
"transaction_id":"345516573007",
"wallet_balance":"10000.55",
"code":200,
"success":true
}
Failed CallBack Response
The response your callback/webhook gets when the domestic bank payout fails.
{
"amount":"150",
"currency":"KES",
"message":"Payout Failed",
"reference_id":"692194627798",
"status":"Failed",
"transaction_id":"345516573007",
"code":400,
"success":false
}