---
title: "Create Virtual Account V2"
method: POST
path: "/v2/customers/{customer_id}/virtual-accounts"
tags: ["Virtual Accounts"]
---

# Create Virtual Account V2

`POST /v2/customers/{customer_id}/virtual-accounts`

Create a virtual bank account for a specific customer to convert fiat deposits to crypto. The `customer_id` path parameter identifies the customer for whom the virtual account is being created.

## Path parameters

- `customer_id` string, uuid, required

## Request body

- object
  - `destination` object, required
    - `wallet` string, required — Destination wallet address in hexadecimal format (0x...)
    - `currency` 'USDC', required
    - `rail` 'POLYGON', required
  - `source` object, required
    - `currency` 'USD' | 'EUR' | 'MXN', required
    - `rail` 'ACH' | 'SWIFT' | 'FEDWIRE' | 'FEDNOW' | 'SEPA' | 'SPEI', required
  - `developer_fee` object, required
    - `percentage` number, required
    - `fixed` number, required

## Response `200`

Virtual account created successfully

- object
  - `data` object
    - `id` string, uuid
    - `status` 'PROCESSING' | 'IN_COMPLIANCE' | 'REQUEST_FOR_INFORMATION' | 'ACTIVE' | 'INACTIVE' | 'DECLINED'
    - `customer_id` string, uuid
    - `created_at` string, date-time
    - `rfi` object, nullable

## Other responses

- `401` — Authentication failed due to invalid credentials
- `422` — Failed due to a formatting error.

---

[API](https://skmtc.net/fin/apis/fin-com-api.md) · [All operations](https://skmtc.net/fin/apis/fin-com-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fin/fin-com-api/versions/6e69503ee7b8/schema)
