Skip to main content

What is a Virtual Account?

A virtual account is a USD bank account provisioned for a customer. Customers can receive USD deposits into their virtual account — deposits settle into the merchant collection balance and a webhook is sent. Virtual accounts are separate from the NGN virtual accounts used in onramps. These are USD-denominated accounts designed for customers who need to receive US dollar payments.

Prerequisites

The customer must have completed tier 2 verification before a virtual account can be created.See Submit Tier 2 Verification.
The verification flow:
  1. Create a customer via POST /v1/customers
  2. Complete tier 1 verification (BVN + selfie) via POST /v1/customers/{id}/tier1-verification
  3. Complete tier 2 verification (KYC documents) via POST /v1/customers/{id}/tier2-verification
  4. Once tier 2 status reaches VERIFIED, create the virtual account

Virtual Account Properties

Each virtual account includes:
PropertyDescription
idUnique virtual account identifier
customer_idThe customer this account belongs to
currencySource currency (usd)
statusAccount status (active or inactive)
developer_fee_percentOptional fee percentage on deposits
deposit_instructionsBank details for receiving deposits (routing number, account number, payment rails)

How Deposits Work

When a USD deposit is received into the virtual account:
  1. The deposit is received at the bank details in deposit_instructions
  2. Supported payment rails include ACH and wire transfers
  3. Funds settle into the merchant collection balance
  4. A webhook is sent to notify you of the deposit
  5. The deposit appears in the Deposits API with type USD_DEPOSIT

Relationship to Tier 2 Verification

Tier 2 verification is the gateway for customer banking features:
FeatureRequires Tier 2
USD virtual accountsYes
US_BANK_ACCOUNT recipientsYes
SWIFT_BANK_ACCOUNT recipientsYes
USD transfers (ACH, wire, SWIFT)Yes

API Routes


Next Steps

Create Virtual Account

Provision a USD account for a customer

Tier 2 Verification

Complete the prerequisite KYC step

List Deposits

View deposits including USD virtual account deposits