Introduction to Virtual Accounts

Last updated: February 2, 2026

What is a Virtual Account?

A Virtual Account is a dedicated bank account that automatically converts fiat deposits into stablecoins. When users send money via bank transfer (ACH, wire, or RTP), the funds are instantly converted to stablecoins and delivered to their wallet.

How Virtual Accounts Work (Fiat → Stablecoins)

  1. Create virtual account - Specify source currency (e.g., USD), destination currency (e.g., USDC), and blockchain (e.g., POLYGON)

  2. User deposits fiat - User sends money to the provided bank account details

  3. Automatic conversion - HIFI detects the deposit, converts it to stablecoins

  4. Delivery - Stablecoins are sent to the user's wallet

Virtual Accounts vs One-Time Accounts

TypeUse Case

Virtual Account

Reusable, permanent bank account for recurring USD deposits

Onramp API

One-time virtual account per transaction; supports USD and Africa currencies

Use virtual accounts for recurring deposits with a simplified flow. Use the Onramp API when you need one-time accounts or support for Africa currencies.

How Micro-Deposits Work

Micro-deposits are small payments used to verify bank account ownership. When you fetch a virtual account, the microDeposits object shows these verification payments with details like amount, source bank info, and payment rail. They help confirm the user controls the linked bank account.

Payment Rails

Virtual accounts support multiple payment methods to accommodate different use cases:

Payment RailSpeedCostUse 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

Users can deposit via any supported rail using the same account number. The conversion and delivery happens automatically regardless of which payment method is used.

Deposit Processing

When a deposit is detected, HIFI automatically:

  1. Validates the deposit - Confirms amount and sender details

  2. Converts to stablecoin - Exchanges fiat for stablecoins at current rates

  3. Sends to wallet - Delivers stablecoins to the configured destination

  4. Triggers webhooks - Sends ONRAMP.CREATE and ONRAMP.UPDATE events

Processing times vary by payment rail:

  • ACH: 1-3 business days for funds to clear, then instant conversion

  • Wire: Same-day processing, then instant conversion

  • RTP: Real-time processing and instant conversion