Create customer virtual account
Creates a dedicated named virtual IBAN for the customer. For individual customers, address and identity information is automatically pulled from Sumsub KYC verification. The account creation is asynchronous. Corporate customer virtual accounts creation is not yet supported via API.
Creates a dedicated named virtual IBAN for the customer. For individual customers, address and identity information is automatically pulled from Sumsub KYC verification. The account creation is asynchronous. Corporate customer virtual accounts creation is not yet supported via API.
Authorization
bearerAuth Organization API key obtained from PropelAuth
In: header
Path Parameters
Unique identifier of the customer
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST 'https://compose.finance/api/v2/customers/{customerId}/virtual-account' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Content-Type: application/json' \ -d '{"currency": "EUR"}'{
"customerId": "550e8400-e29b-41d4-a716-446655440001",
"status": "PENDING",
"virtualAccountId": "corr-12345-abcde",
"message": "Virtual account creation initiated. IBAN will be provided via webhook once the provider processes the request."
}{
"error": "No virtual account provider configured for USD. Please contact support."
}{
"error": "Unauthorized - Invalid or missing API key or session"
}{
"error": "Virtual accounts feature is not enabled for your organization"
}{
"error": "Customer not found"
}{
"error": "Customer already has an active virtual account for this provider"
}{
"error": "Internal server error"
}Verify Ethereum address POST
Validates an Ethereum address and provides information about its type. **Checks Performed** - Address format validation (checksum) - Contract detection (checks if address has deployed code) - Safe wallet identification (checks if it's a Gnosis Safe multisig) **Use Cases** - Validate customer wallet addresses before saving - Detect if a recipient is a smart contract - Identify Safe wallets for display purposes
Get customer virtual account GET
Returns the virtual account details and status for a specific virtual account ID. Use `GET /virtual-accounts` to list all virtual accounts for a customer.