Split Payments
Share transaction settlements with third parties via subaccounts.
Split payments let you share settlement with third-party vendors via subaccounts.
What is a subaccount?
A subaccount stores the external bank info for a vendor/partner. When you split a payment, part of the funds go to the subaccount’s bank account.
Typical use: platforms and marketplaces sharing revenue with providers.
Create a subaccount
Create via Dashboard or API.
Endpoint https://api.chapa.co/v1/subaccount
Method POST
Authorization Bearer CHAPA_SECRET_KEY
Body fields
bank_code,account_number— Bank details (bank_code from Get Banks endpoint)business_name— Vendor/merchant nameaccount_name— Name matching bank recordsplit_type—percentageorflatsplit_value— Commission amount (e.g., 0.03 for 3%, or 25 for 25 ETB)
Settlements default to ETB; payload currency is converted to ETB for subaccount settlement.
If successful, the response includes a subaccount id you will use when initiating transactions.
Initialize a split payment
Use Initialize Transaction API or Direct Charge API.
Endpoints
https://api.chapa.co/v1/transaction/initializehttps://api.chapa.co/v1/charges?type={payment_method}
Method POST
Authorization Bearer CHAPA_SECRET_KEY
Override split defaults per transaction
You can override split_type and split_value in the subaccounts object when charging:
split_type:flatorpercentagesplit_value: amount or percentage (e.g., 0.03 for 3%, 25 for 25 ETB)
Example (100 ETB total, fees 6 ETB):
- If
split_type = flatandsplit_value = 25, subaccount gets 69 ETB; you keep the remainder after fees.
Know your vendors/subaccounts. Disputes/chargebacks are taken from your account. Chapa fees are taken from you or the customer.
Refer to Error Codes for response details.