Creating a Virtual Account

Last updated: February 24, 2026

Creating a Virtual Account

  1. Go to the Users tab and select the user you want to create a virtual account for.

  2. Ensure the user's compliance (KYC or KYB) is 100% successful and they have access to at least one payment rail.

  3. Navigate to the Accounts tab.

  4. Click the + New button in the top-right corner. Select your preferred: - Fiat currency (e.g., USD) - Network/chain (e.g., Polygon) - Stablecoin (e.g., USDC)

  5. Once created, the virtual account will display deposit instructions (bank name, routing number, account number) that the user can use to receive fiat deposits.

Request Fields

  • sourceCurrency: Fiat currency to accept (currently only usd)

  • destinationCurrency: Stablecoin to receive (usdc or usdt)

  • destinationChain: Blockchain for stablecoins (POLYGONETHEREUMBASE)

  • externalWalletId (optional): Send stablecoins to an external wallet instead of the user's HIFI wallet

Key Response Fields

  • accountInfo.id: Unique virtual account ID (save this!)

  • accountInfo.statusactivated means ready for deposits

  • accountInfo.depositInstructions: Bank details to share with users (includes routing/account numbers for ACH, wire, and RTP)

Once created, share the depositInstructions with your user so they can send bank transfers that automatically convert to stablecoins.

Supported Currencies and Regions

  • Source currency: Currently only USD is supported

  • Destination currenciesUSDC or USDT (stablecoins)

  • Destination chainsPOLYGONETHEREUMBASESOLANA

For full currency and regional support details, see the USD Rail documentation.

Funding Timelines and Cut-off Times

Virtual accounts support multiple payment rails with different speeds:

Payment Rail

Speed

Cost

Use Case

ACH

1-3 business days

Low

Domestic US bank transfers

Wire

Same day

Medium

Larger amounts, faster processing

RTP

Real-time

Medium

Instant transfers

Instant Onramps: CRNow enables USDC minting in under 10 minutes after deposit during business operating hours.

Users can deposit via any supported rail using the same account number—conversion and delivery happens automatically.