Skip to main content

A fixed bank account number belonging to your platform or a connected account. It does not expire and can receive deposits at any time.

id
string
required

Unique identifier for the virtual account, prefixed va_. It appears at payment_method_details.bank_transfer.virtual_account.id on each payment received through this account.

Example:

"va_8Hs2kQ4mZpXv"

currency
string
required

Three-letter ISO 4217 code for the money this account accepts, e.g. NGN. Money sent in any other currency cannot reach it.

Example:

"NGN"

account_number
string
required

The account number the sender enters in their banking app. Show it with bank_name so the sender can select the correct destination.

Example:

"9902847361"

bank_name
string
required

The bank that issued the number, as the sender sees it in their banking app. Read it from this field rather than storing one name, because accounts created later can be issued by a different bank.

Example:

"Example Bank"

status
enum<string>
required

Whether the virtual account is in use. active: the number appears in reads and accepts deposits. inactive: the number no longer appears in reads, but deposits sent to it are still received.

Available options:
active,
inactive
Example:

"active"

created_at
string<date-time>
required

ISO 8601 timestamp of when the account number was issued.

Example:

"2026-09-22T09:14:02.000Z"

bank_code
string | null

The issuing bank's code, for apps that select a bank by code rather than by name. null when the issuing bank gives us none.

Example:

"000"