Skip to main content
POST

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

userId
string
required

ID of the user.

Pattern: ^user_[A-Za-z0-9]+$

Body

application/json

Virtual account details. The source combination of currency, country, and transferType must be a supported pair. Exactly one of destination.walletId or destination.externalWalletId must be provided.

Virtual account creation request.

source
object
required

Fiat source the virtual account receives deposits in. The combination of currency, country, and transferType must be a supported pair.

destination
object
required

Stablecoin destination that incoming fiat deposits are converted to and delivered to. Exactly one of walletId or externalWalletId must be set.

Response

Virtual account created successfully.

A virtual account.

id
string

Public ID of the virtual account (prefixed with va_).

Example:

"va_5Kf9dQ2mNpXwZ7bV1aLcs"

userId
string

Public ID of the user this virtual account belongs to (prefixed with usr_).

Example:

"usr_3Kf9dQ2mNpXwZ7bV1aLcs"

source
object

Fiat source configuration of the virtual account.

destination
object

Stablecoin destination of the virtual account.

status
enum<string>
Available options:
ACTIVE,
INACTIVE
Example:

"ACTIVE"

microDeposits
object | null

Deposits received into the virtual account.

depositInstructions
object | null

Bank details for funding the virtual account. Null until the account is active.

settlementRuleId
string | null

Public ID of the applied settlement rule (prefixed with sr_), if any.

Example:

null

createdAt
string<date-time>
Example:

"2026-07-01T10:30:00.000Z"

updatedAt
string<date-time>
Example:

"2026-07-01T10:30:00.000Z"