How Virtual Accounts Work
Virtual accounts follow a simple three-step process:- Create virtual account – Generate a dedicated bank account for fiat-to-stablecoin conversions
- Receive deposits – Accept fiat deposits through multiple payment rails (ACH, Wire, RTP, SWIFT)
- Convert automatically – Deposits are automatically converted to stablecoins and sent to a Wallet
Account Configuration
Virtual accounts are configured per user and support multiple payment rails and destination currencies. You can create accounts for different blockchain networks and stablecoin types.Create Virtual Account
Either
destinationChain
or externalWalletId
must be provided. If
externalWalletId
is specified, the system will use the associated wallet’s
chain and address. USDT is only supported on Ethereum.Response Structure
When you create a Virtual Account, the API response includes detailed information about the account configuration:Account Features
We only support 🇺🇸 USD Virtual Accounts for automatic onramps. For other
currencies, use our Onramp API.
Payment Rail Support
Virtual accounts support multiple payment methods for maximum flexibility:- ACH: Direct bank transfers for domestic US transactions
- Wire: International wire transfers with SWIFT codes
- RTP: Real-time payments for instant transfers
- SWIFT: International wire transfers with full SWIFT support
Destination Options
Configure where converted stablecoins are sent:- Supported Currencies: USDC, USDT, and other supported stablecoins
- Chain Support: Ethereum, Polygon, Base, and other supported networks
Settlement Rules
Configure fee calculations and distribution
Account Management
You can change the destination or status of a Virtual Account.- Activated: Account accepts new deposits and processes conversions
- Deactivated: Account temporarily disabled, preventing new deposits
Sandbox Testing
In sandbox mode, you can simulate deposits to test your integration:Simulate Deposit
Learn how to simulate Virtual Account deposits