Skip to main content
A platform holds USDC in a treasury wallet and needs to pay out to dozens or hundreds of recipients across different countries. Each recipient gets their local currency via ACH, wire, or SWIFT. OMS handles conversion and delivery per recipient in parallel, from a single disbursement run. This replaces the operational overhead of managing multiple banking relationships and currency accounts. One wallet, one API, every corridor. Recipients without a bank account can be paid out to physical cash, covered in Cash disbursements below. Who this is for:
  • Gig economy platforms paying drivers, couriers, or freelancers across markets
  • Global payroll providers managing contractor payments in multiple currencies
  • Marketplaces that settle earnings to international sellers on a weekly or monthly basis

How it works

Per-recipient disbursement
1AppOMSPOST /quotes per recipient (treasury wallet → recipient bank)
2OMSAppRate + fee per recipient locked for confirmation window
3AppOMSPOST /transactions per recipient (execute quoted disbursement)
4OMSPulls USDC from treasury, initiates ACH/wire/SWIFT per recipient
5OMSAppWebhook: transaction.cryptoToFiat.completed per transaction
Each payout is a separate quote-and-execute pair, with the recipient’s external bank account as the destination. On a quote, an external account is referenced by its ext_ identifier (for example ext_bankUs_..., ext_bankIban_..., ext_bankCa_...). All quotes for a disbursement run can be created in parallel. Idempotency keys on each transaction make retries safe if a run is interrupted. Register each recipient once before their first payout. Create a counterparty with POST /counterparties (the recipient’s name plus optional contact and address details), then register their bank account with POST /external-accounts, setting the owner to that counterparty. The account starts pending and becomes active once provisioning succeeds; reference its ext_ identifier on every subsequent quote.

OMS resources

ResourceRole
Platform walletCentral USDC treasury that funds all disbursements
Counterparty (per recipient)Named third-party recipient, created with POST /counterparties
External account (per recipient)Recipient’s bank account for delivery, registered with POST /external-accounts and referenced by ext_ ID
QuoteLocked rate + fee for one recipient’s payout
cryptoToFiatAccount transactionExecutes one recipient’s bank disbursement
cryptoToCash transactionExecutes one recipient’s cash disbursement

Cash disbursements

Recipients without a bank account can be paid out to physical cash. OMS converts the wallet balance, issues a time-limited pickup code, and the recipient collects bills at a retail counter or ATM. This is the disbursement counterpart to cash-in funding: together they form a complete cash loop, accepting cash into digital wallets and paying digital balances back out as cash. A cash disbursement uses the same payout model as a bank transfer. Instead of an external bank account, the destination is a cash network, and the recipient redeems a pickup code rather than receiving an ACH or wire.
Cash disbursement flow
1AppOMSPOST /quotes (cryptoToCash, amount on the cash destination)
2OMSAppPulls USDC from wallet, issues time-limited pickup code + nearest location
3RecipientRetailPresent code at counter or ATM, collect cash
4OMSAutomatically refunds the USDC to the wallet if the code expires unused
Cash disbursements suit US fintech apps paying customers who prefer cash over ACH or card, remittance recipients in cash-dependent corridors, and relief or gig platforms paying recipients without bank accounts. The amount on a cash payout must be a multiple of 20.00,uptoamaximumof20.00, up to a maximum of 400.00 per transaction.
Bank and cash payouts run on the quote-and-execute flow available today; see Pay a third party for the per-recipient walkthrough. Bulk-payout tooling for large disbursement runs is on the roadmap; for now, create and execute each payout individually. To be notified when bulk tooling launches, register your interest.

Register interest

Share your use case and we’ll reach out when bulk-payout tooling is available.