Transactional Accounts are a managed-account configuration. For the account-model comparison and platform-to-customer relationship, see Managed Accounts.
What transactional accounts are
A transactional account is a verified business (KYB) or individual (KYC) account that your platform creates and operates through the API. Each one has its ownaccount_id.
This guide applies to both business and individual managed accounts. The account-creation payload and verification requirements differ by entity type; see Accounts and Individual Accounts for those details.
Transactional accounts are non-custodial. They receive no internal wallet addresses and hold no Brale-custodied balance. A transactional account is not a wallet or a stored-value account. It is a verified identity with one or more registered external destination addresses.
When to use them
Use a transactional account when:- Your end customer needs a verified identity and an external, self-custody destination.
- Your platform does not need the end customer to hold a Brale-custodied balance.
Key limitations
Branded Automations: Verified business and individual transactional accounts can be used asbrand.account_id, subject to applicable program eligibility. Funding instructions show the business’s verified name and address or the individual’s legal name and address. This does not change the external-destination restrictions above. See Branded Automations.
How it works
- Create the account.
CallPOST /accountswithentity_typeset tobusinessorindividualandaccount_type: "transactional". See Accounts for the request fields for each entity type. - Wait for verification.
Brale runs verification asynchronously. When it succeeds,statusbecomescompleteandaccount.verification.completedfires. See Accounts for how to handle document requests. - Register an external destination address.
Add the customer’s self-custody wallet withPOST /accounts/{account_id}/addresses/external. See Addresses. - Deliver value to the destination.
Use the external address as the destination in a transfer that originates elsewhere. A transactional account itself cannot be the source of an on-chain transfer. See Transfers and Automations for supported funding and delivery flows. - Attribute activity.
Inbound events carrydata.account_id. A webhook subscription on your managing account receives events for every account it manages, so you can attribute activity to the correct managed customer account. See Webhook Events.
Off-ramp to a bank account
A transactional account cannot be the source of an off-ramp. To pay a transactional account holder out to their own bank account, route the payout through your managing account:- The holder sends stablecoins from their self-custody wallet to an internal address on your managing account. This can be an omnibus address or a dedicated address per user.
- You register the holder’s bank account as an external address, under either the managing account or the holder’s transactional account.
- You submit a stablecoin-to-USD transfer from the managing account’s internal address to that bank address.
Business and individual accounts
Both business and individual entities can use the transactional model, subject to your configured program, eligibility, and availability. The request shape and geographic rules differ by entity type:- Accounts covers the request fields for business and individual accounts.
- Account types explains the
entity_type,account_type, andverification_modecombinations. - Account availability lists the U.S. states and approved countries where each account type can be created.
- Individual accounts walks through the end-to-end individual flow.