Add Counterparty External Bank Accounts
How do I create external bank accounts for counterparty payouts?
Overview
Create external bank accounts for counterparties to enable third-party payouts. You provide bank routing details and beneficiary information to create accounts using raw routing details.
Counterparty external bank accounts support credit operations only. You can send funds to them but cannot withdraw.
Important Notes for Self-Transfer (US to India) Use Cases:
- When creating a counterparty for self-transfers (e.g., a US customer sending to their own Indian bank account),
create the counterparty with the
customer_guidand using a customer-scoped token. This ensures the counterparty is only visible to that customer and avoids scoping errors. - The counterparty's address should use the most relevant address for the customer (often their US address, especially for NRE accounts that may not have an Indian address).
- Required fields for counterparties include:
type(must beindividual),name.first,name.last,address.city, andaddress.country_code. Additional fields such asaddress.streetandaddress.postal_codemay also be required depending on the country. - After creating and verifying the counterparty, create the external bank account using both the
customer_guidand thecounterparty_guid. - If you encounter errors such as "Counterparty not found" or "Invalid bank configuration," ensure that the counterparty was created with the correct scoping and that your bank is configured to support counterparty external bank accounts. Contact support if you need this enabled for your sandbox or production bank.
- For more details on required fields for counterparties, see the counterparty creation guide.
Payment directionCounterparty external bank accounts can only receive payments (credits), not send them (debits).
Feature availabilityCybrid disables this feature by default in Production. Contact Cybrid Support to enable it for your bank.
Prerequisites
Before creating a counterparty external bank account:
- Create a counterparty. See Creating a Counterparty.
- Verify the counterparty's identity. See Verifying a Counterparty.
Create a counterparty external bank account
After you complete the prerequisites, create an external bank account for the counterparty using the
POST /api/external_bank_accounts endpoint.
Accept-Version header requiredInclude the header
Accept-Version: 2025-10-01or later in your request. Requests without this header may result in errors about missing required fields.
The following example creates a domestic USD external bank account:
POST /api/external_bank_accounts
Content-Type: application/json
Authorization: Bearer YOUR_TOKEN
{
"name": "external_bank_account_name",
"account_kind": "raw_routing_details",
"customer_guid": "customer_guid",
"counterparty_guid": "counterparty_guid",
"asset": "USD",
"counterparty_bank_account_details": [
{
"bank_code_type": "ABA",
"bank_code": "routing_number",
"account_identifier": "account_number",
"payment_rail": "ACH"
}
]
}{
"guid": "external_bank_account_guid",
"name": "external_bank_account_name",
"account_kind": "raw_routing_details",
"customer_guid": "customer_guid",
"counterparty_guid": "counterparty_guid",
"asset": "USD",
"state": "completed",
"counterparty_bank_account_details": [
{
"bank_code_type": "ABA",
"bank_code": "routing_number",
"account_identifier": "account_number",
"payment_rail": "ACH"
}
]
}For foreign fiat external bank accounts, see Foreign Fiat External Bank Accounts.
For detailed API reference, see Create External Bank Account.
Failure codes
The following error occurs when creating a counterparty external bank account without verification:
- unverified_counterparty: Verify the counterparty before creating a counterparty external bank account.
Updated 14 days ago
