Request Bank Payouts
Information
This guide is for Enterprise Bank Payouts. For Bank Payouts to Platform sub-entities, see Process sub-entity Bank Payouts.
Bank Payouts enables you to pay funds out to your customer’s bank accounts. You can access local clearing methods around the world, circumventing the challenges of international payments and simplifying complex payment infrastructures.
In your payout request, you can provide as the destination a bank account payment instrument, or bank account fields.
You provide a reusable bank account payment instrument.
For a new instrument:
- Check the required bank account field formatting for the country and currency you want to pay out to.
- Create a bank account payment instrument.
- Request a payout and provide the instrument ID.
For an existing instrument, request a payout and provide the instrument ID.
Call the Request a payment or payout endpoint.
post
https://api.checkout.com/payments
In the request body, provide the following:
source.id– The sending sub-account's unique identifier, prefixed withca_.source.type– Set tocurrency_account.destination.type– Set toid.destination.id– The unique identifier for the bank account payment instrument, prefixed withsrc_.amountcurrencybilling_descriptor.referenceprocessing_channel_id
Optionally, if the sender is different to the entity:
sender.type– This can becorporateorindividual, orinstrument.sender.reference– The sender's unique identifier.
1{2"source": {3"id": "ca_y3oqhf46pyzuxjbcn2giaqnb44",4"type": "currency_account"5},6"destination": {7"id": "src_gsd2agaqd2sernz5tpcfv555nq",8"type": "id"9},10"amount": 1000,11"currency": "GBP",12"reference": "PO-215-5721",13"billing_descriptor": {14"reference": "Withdrawal"15},16"instruction": {17"scheme": "local"18},19"processing_channel_id": "pc_hpswyyx23geezflc2ocz3exn4y"20}
If your payout request was sent:
- Successfully – You receive a
202 Acceptedresponse, with the statusPending. - Unsuccessfully – You receive a
422 Unprocessable Contentor429 Too Many Requestsresponse containing an error code.
1{2"id": "pay_dvxl6j6stpqufkzfgbaahmfrzm",3"status": "Pending",4"reference": "PO-215-5721",5"instruction": {6"value_date": "2024-06-12T22:27:42.512594Z"7},8"_links": {9"self": {10"href": "https://api.sandbox.checkout.com/payments/pay_dvxl6j6stpqufkzfgbaahmfrzm"11},12"actions": {13"href": "https://api.sandbox.checkout.com/payments/pay_dvxl6j6stpqufkzfgbaahmfrzm/actions"14}15}16}
You can configure your webhook server and subscribe to the following webhooks about the payout's status:
- Successful payout – You receive a Payment paid webhook, with
"response_code": "10000", and"response_summary": "Approved". - Declined payout – You receive a Payment declined webhook with
"response_code": "50001-50399", and aresponse_summaryexplaining the reason for the decline.
Information
For more information, see API response codes.
To test different payout scenarios, see Bank Payouts testing.
To view all pending, successful, rejected, and declined bank payouts during a specified time frame, see the Bank Payouts Report.