Save a bank destination
Saves a bank account the user can withdraw to. ach needs routing_number, account_number, and account_type; international_wire needs iban and swift_code. Some countries need extra fields via country_specific (for example ifsc, clabe, bsb); the validation error names any missing key. A user can hold up to 25 active destinations.
How it works
Before a user can withdraw to a bank, they save the destination once. Collect the bank details in your UI and pass them through; we validate per type and return the destination masked (last four digits only) — store theid and render the masked fields, never the raw numbers.
- US accounts (
type: "ach"):routing_number(9-digit ABA),account_number,account_type. - Everywhere else (
type: "international_wire"):iban+swift_code. Some countries need one extra field viacountry_specific— for example{"ifsc": "..."}for India,{"clabe": "..."}for Mexico,{"bsb": "..."}for Australia. For those common cases a missing key is rejected asrecipient_fields_invalidwith the field named; for other countries, include the fields the destination bank requires. - A user can hold up to 25 active destinations; remove one to add more.
Authorizations
A platform access token. Get one on the Create an access token endpoint by exchanging your client_id + client_secret, then send it as Authorization: Bearer <token>. Tokens live one hour.
Body
The connected user's id.
ach, international_wire The account holder's legal name.
ISO 3166-1 alpha-2 country of the bank account.
ACH: 9-digit ABA routing number.
ACH: the account number.
ACH only.
checking, savings International wire: the IBAN (spaces ok, normalized on save).
International wire: the SWIFT/BIC.
Country-specific banking fields, e.g. {"ifsc": "..."} for India or {"clabe": "..."} for Mexico.
Response
The saved destination, masked.
A saved bank destination. Account and IBAN numbers are always masked to their last four digits in responses.
withdrawal_recipient The connected user this destination belongs to.
Recipient id (wrec_...). Pass it as recipient_id when creating a withdrawal.
ach, international_wire ISO 3166-1 alpha-2 country of the bank account.
Masked, ACH only. Example: ••••6789.
ACH only.
checking, savings Masked, international wire only.
International wire only.