USDB and credited to their smart wallet. Available to international users on the USD and rest-of-world paths, and to Nigerian users as their second stage.
1. Gate on USD readiness
USD has its own readiness check, separate from/kyc/readiness:
ready is true. Render missing back into your KYC form rather than retrying blindly — the field names match the PATCH /kyc payload.
2. Provision the account
smartWalletId is the destination — the wallet credited with USDB when USD lands in the account. This one call both provisions the account and binds it, so there is no separate linking step.
Idempotent: repeated calls do not create duplicate accounts, so a retry after a network failure is safe.
3. Poll for the account details
account is only populated on active. Treat rejected and failed differently: one is terminal, the other is a retry.
When
depositMessage is non-null, the account requires that reference on incoming transfers. Show it alongside the account number — deposits without it can be delayed or returned.Re-routing deposits later
Only needed if you want an already-issued account to credit a different smart wallet than the one passed tostart-usa:
Withdrawing USD
There is no USD bank payout rail. To get value out, either swapUSDB into a currency that has one, or use a crypto offramp:
Related
- KYC — USD requirements — the profile fields
usd-readinessgates on - KYC — Rest of world — same rail, country-specific extras
- Integration flow — every wallet-home endpoint in one table

