Beta Ramps API
Bank accounts

Post Bank Accounts By Bank Account Id Replace Autoexchange

POST
/bank-accounts/{bank_account_id}/replace-autoexchange

Authorization

headerAuthorizationBearer <token>

Scope: bank-accounts:write

Path Parameters

bank_account_id*string

Header Parameters

Idempotency-Key*string

Unique key making the create idempotent across retries (16-64 chars of A-Z a-z 0-9 _ -).

Match^[a-zA-Z0-9_-]{16,64}$

Request Body

application/json
  1. body

Create a subaccount-scoped bank account. asset and network are required; all other fields are optional and depend on the rail.

asset*string

Settlement asset / currency, e.g. BRL, USD.

network*string

Payment rail the account belongs to, e.g. pix, ach, wire.

bank_type?string

Bank account type. Defaults to external.

Default"external"
Value in"external""shared"
bank_name?string
bank_code?string

Bank / institution code (e.g. Brazilian COMPE code, or SWIFT/BIC).

branch?string

Branch / agency number.

account?string

Account number.

bank_short_description?string

Optional human-readable label.

bank_address?string
bank_city?string
bank_state?string
bank_postal_code?string
instant_payment?string

Instant-payment key (e.g. a Pix key).

instant_payment_type?string

Instant-payment key type (e.g. evp, cpf, cnpj, email, phone).

country?string

ISO country code of the bank.

deposit_reference?string

Reference shown on deposits to this account.

routing_number?string

Routing number (e.g. US ABA).

iban?string
bic_swift?string
wire_message?string

Free-form message for wire transfers.

ffc_message?string

"For further credit" message for intermediary routing.

autoexchange?boolean

When true, funds received on this account are auto-exchanged and settled to autoexchange_destination_wallet_id.

Defaultfalse
autoexchange_destination_wallet_id?|

Wallet (wal_…) that receives auto-exchanged funds. Required when autoexchange is true.

Response Body

The old autoexchange bank account was soft-deleted and this replacement created in the same transaction. bank_type defaults to shared when omitted.

application/json
  1. response

A subaccount-scoped bank account, as returned by create and replace-autoexchange.

id*string

Bank account ID (bnk_…).

account_id*string

Owning account ID (acc_…).

subaccount_id*string

Owning subaccount ID (sub_…).

asset*string
network*string
bank_type*string
Value in"external""shared"
bank_short_description?string
bank_code?string
bank_name?string
branch?string
account?string
instant_payment?string
instant_payment_type?string
country?string
deposit_reference?string
compliance_status*string

approved for external, unchecked for shared.

is_active*boolean
autoexchange*boolean
autoexchange_destination_wallet_id?string

Destination wallet for auto-exchange, when configured.

created_at*string
Formatdate-time
updated_at*string
Formatdate-time
Example Request
curl -X POST 'https://api.betaramps.com/bank-accounts/string/replace-autoexchange' \  -H 'Idempotency-Key: string' \  -H 'Content-Type: application/json' \  -d '{  "asset": "BRL",  "network": "pix",  "bank_name": "Banco do Brasil",  "bank_code": "001",  "branch": "0001",  "account": "1234567-8",  "instant_payment": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",  "instant_payment_type": "evp",  "country": "BR",  "autoexchange": true,  "autoexchange_destination_wallet_id": "wal_0192f4e6-1a2b-7c3d-8e4f-5a6b7c8d9e01"}'
Example Response
{  "id": "bnk_0192f5a2-3c4d-7e5f-8a6b-7c8d9e0a1b23",  "account_id": "acc_0192f4e0-1a2b-7c3d-8e4f-5a6b7c8d9e01",  "subaccount_id": "sub_0192f4e3-8a9b-7c6d-5e4f-3a2b1c0d9e8f",  "asset": "BRL",  "network": "pix",  "bank_type": "shared",  "bank_name": "Banco do Brasil",  "bank_code": "001",  "branch": "0001",  "account": "1234567-8",  "instant_payment": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",  "instant_payment_type": "evp",  "country": "BR",  "compliance_status": "unchecked",  "is_active": true,  "autoexchange": true,  "autoexchange_destination_wallet_id": "wal_0192f4e6-1a2b-7c3d-8e4f-5a6b7c8d9e01",  "created_at": "2026-10-31T12:00:00Z",  "updated_at": "2026-10-31T12:00:00Z"}