- Create an Account representing your customer
- Create an Address which is your customer’s bank account where Brale will deposit USD
- Deposit stablecoins to a Brale custodial address (address with type
internal)
Link an Address to your customer’s Account
Destination bank addresses can be created in two ways:- Plaid-linked bank account — Securely connect a bank account via the Plaid Link SDK. Supports
ach_debit,ach_credit, andrtp. - Direct bank entry — Submit bank details directly via the Addresses API. Supports
wire,ach_credit, andrtp.
| Capability | Plaid-linked bank account | Direct bank entry |
|---|---|---|
ach_debit | Supported | Not supported |
ach_credit | Supported | Supported |
rtp | Supported | Supported |
wire | Not supported | Supported |
wire transfers. For the full comparison and guidance, see External bank addresses.
Direct bank entry
Here is an example of adding an offchain address via Direct bank entry using Create a new external address. POSThttps://api.brale.xyz/accounts/account_id/addresses/external
Request
Response
Need
ach_debit? Use the Plaid-linked bank account flow instead. See External bank addresses for details.RTP Enablement
Offramps via RTP use thertp_credit transfer_type on the destination Address. RTP capability is enabled asynchronously by our banking partner, so a newly created bank Address may initially not show rtp_credit even though it is eligible for real-time payments. Only treat an Address as RTP-capable once "rtp_credit" appears in its transfer_types. See Key Concepts → Addresses → Create External Address for RTP for details.
Stablecoin to USD via Wire
Once your customer has an address and stablecoins are held in a Brale controlled address, you can submit a Transfer request with the destination of the address. For outbound wire transfers, you can optionally passdestination.wire_memo to include a memo or payment reference with the wire.
POST https://api.brale.xyz/accounts/account_id/transfers
Request
Self-custody redemption
If your customer holds stablecoins in a self-custody or external wallet (for example, Crossmint), the redemption is a two-step process:- Transfer the stablecoins from the external wallet to a Brale internal address.
- Submit the off-ramp transfer from that internal address to the customer’s bank account.
Step-by-step example
- Your customer holds USDC in an external wallet.
- You retrieve or display the appropriate Brale internal deposit address for the supported chain.
- Your customer sends the stablecoins from their external wallet to that Brale internal address.
- Wait until the on-chain deposit is confirmed and the funds are held in the Brale internal address.
- Submit the stablecoin-to-fiat transfer using that internal address as the source and the customer’s bank address as the destination.
- Brale burns or converts the stablecoins and sends USD to the destination bank account.
https://api.brale.xyz/accounts/account_id/transfers
Request
Brale cannot redeem directly from an external wallet it does not control. The stablecoins must first be received into a Brale internal address so Brale can complete the redemption and fiat payout flow.