Skip to main content
POST
Create a virtual bank account
Provisions a virtual bank account. Provide a display name, the fiat inCurrency to receive (EUR provisions a EUR_SEPA IBAN), the targetCryptocurrency incoming funds convert to, and a unique idempotencyKey (safe retries). The response includes the IBAN/BIC and a referenceCode the payer must quote so the wire is matched to this account.
The account must be verified (and have a linked account-holder party) before a virtual bank account can be created. See Account verification.

Authorizations

Path Parameters

accountId
string<uuid>
required

Unique account identifier

Body

application/json

Request to create a virtual bank account. The backend provisions the appropriate bank account type based on inCurrency (e.g. EUR -> EUR_SEPA).

name
string
required

Display name for the bank account

Maximum string length: 255
inCurrency
string
required

Fiat currency to receive (ISO 4217). Determines the bank account type (EUR -> EUR_SEPA)

Pattern: ^[A-Z]{3}$
targetCryptocurrency
string
required

Cryptocurrency to convert incoming fiat payments to (e.g. USDC)

Pattern: ^[A-Za-z0-9]{2,10}$
idempotencyKey
string
required

Unique key to prevent duplicate operations on retry

Maximum string length: 255

Response

Virtual bank account created

success
boolean

Indicates whether the request was successful

result
object

Virtual bank account for receiving payments. EUR_SEPA accounts return iban/bic.