Brale makes it easy for you to fund stablecoins in custodial wallets via offchain transfer types like ach_credit, or wire.There are three common ways of funding a custodial wallet at brale (Type=Internal) using offchain transfers:
- Submit a Transfer request with a source value_type of
wire
- Submit a Transfer request with a source value_type of
ach_debit
- Create an Automation, which automatically mints stablecoins to a pre-configured destination wallet when funds are received via ach or wire.
Submitting a Transfer request with a source value_type of wire
Here is an example of onramping to your own stablecoin (SBC) via wire transfer by calling the Transfers endpoint with the source transfer_type of wire.
POST https://api.brale.xyz/accounts/account_id/transfers
{
"amount": {
"value": "100",
"currency": "USD"
},
"source": {
"value_type": "USD",
"transfer_type": "wire"
},
"destination": {
"address_id": "2VcUIonJeVQzFoBuC7LdFT0dRe4",
"value_type": "SBC",
"transfer_type": "solana"
}
}
{
"id": "transfer_123",
"status": "pending",
"amount": {
"value": "100",
"currency": "USD"
},
"source": {
"transfer_type": "wire",
"value_type": "USD"
},
"destination": {
"transfer_type": "polygon",
"value_type": "SBC",
"address_id": "2VcUIonJeVQzFoBuC7LdFT0dRe4"
},
"wire_instructions": {
// ...Brale bank details
}
}
Initially, the status of the transfer will be pending. Once Brale receives the funds at the bank account provided in source_deposit_instructions the stablecoins will immediately be minted to the destination wallet.
Submitting a Transfer request with a source value_type of ach_debit
You can initiate ACH debits from Plaid-linked addresses. See Addresses for the full flow of linking Plaid accounts as addresses you can pull from. This guide is specifically designed for first party funding of stablecoin mints, into a Brale custodial wallet.
POST https://api.brale.xyz/accounts/account_id/transfers
{
"amount": {
"value": "100",
"currency": "USD"
},
"source": {
"address_id": "2VcUIonJeVQzFoBuC7LdFT0dRe4",
"value_type": "USD",
"transfer_type": "ach_debit"
},
"destination": {
"address_id": "2VcUIonJeVQzFoBuC7LdFT0dRe4",
"value_type": "SBC",
"transfer_type": "canton"
}
}
{
"id": "transfer_123",
"status": "pending",
"amount": {
"value": "100",
"currency": "USD"
},
"source": {
"address_id": "2VcUIonJeVQzFoBuC7LdFT0dRe4",
"value_type": "USD"
"transfer_type": "ach_debit",
},
"destination": {
"address_id": "2VcUIonJeVQzFoBuC7LdFT0dRe4"
"value_type": "SBC"
"transfer_type": "canton"
}
}
Fetching Transfers
Query a transfer that has been created.
GET https://api.brale.xyz/accounts/account_id/transfers/:id
{
"status": "pending",
"amount": {
"value": "1",
"currency": "USD"
},
"created_at": "2025-02-05T19:39:14.316Z",
"updated_at": "2025-02-05T19:39:14.316Z",
"source": {
"value_type": "usd",
"transfer_type": "wire"
},
"destination": {
"address_id": "2VcUIonJeVQzFoBuC7LdFT0dRe4",
"value_type": "SBC",
"transfer_type": "polygon"
}
}
Fiat to Stablecoin Automation (Automatic Onramp)
Automations provide a unique account number and routing number that accepts wire transfers and ACH deposits, and automatically reconcials funds received and mints them to a bound wallet address.
Here is an example of onramping to your own stablecoin (SBC) via wire transfer by creating a fiat-to-stablecoin automation.
POST https://api.brale.xyz/accounts/account_id/automations
{
"name": "XYZ Onramp",
"source": {
"value_type": "USD"
},
"destination": {
"address_id": "2MhCCIHulVdXrHiEuQDJvnKbSkl",
"value_type": "SBC",
"transfer_type": "Solana"
}
}
Automations are opened in a pending state and automatically transition into processing.
When an automation becomes active, the source.funding_instructions object is populated with the virtual account’s bank details (routing number, account number, beneficiary name, etc.). These are the coordinates you share with your customer to fund the automation.
GET https://api.brale.xyz/accounts/{account_id}/automations/{automation_id}
{
"id": "35kVg1llbsOBYvx9XKr9eOtsD9z",
"name": "Customer XYZ Automation",
"status": "active",
"source": {
"transfer_type": null,
"value_type": "USD",
"funding_instructions": {
"bank_address": "123 Example St, Example City, NY 10001",
"beneficiary_address": "25 Main Ave, Suite 100, Example City, IA 50000",
"beneficiary_name": "Company ABC",
"routing_number": "000111222",
"account_number": "000123456789",
"bank_name": "Example Bank",
"memo": null
}
},
"destination": {
"transfer_type": "solana",
"address_id": "35LWXNTO2jem13nXCLyciFdi162",
"value_type": "SBC"
},
"updated_at": "2025-11-20T15:56:05.017508Z",
"created_at": "2025-11-20T15:56:03.531196Z"
}