---
title: "Update Virtual Account"
method: PUT
path: "/v1/instances/{instance_id}/customers/{customer_id}/virtual-accounts/{id}"
tags: ["Virtual Accounts"]
---

# Update Virtual Account

`PUT /v1/instances/{instance_id}/customers/{customer_id}/virtual-accounts/{id}`

## Path parameters

- `instance_id` string, required
- `customer_id` string, required — Customer ID
- `id` string, required

## Headers

- `Idempotency-Key` string — Optional key to safely retry this request without performing the action twice. Retrying with the same key and an identical body replays the original response; reusing a key with a different body returns an error. Keys are kept for 24 hours.

## Request body

- UpdateVirtualAccountIn
  - `token` 'USDC' | 'USDT' | 'USDB', required
  - `blockchain_wallet_id` string, required
  - `partner_fee_id` string, nullable

## Response `200`

Update virtual account

- Success
  - `success` boolean, required

## Other responses

- `400` — Possible error codes: `BANK_ACCOUNTS_PARTNER_NOT_SUPPORTED`, `BLOCKCHAIN_NETWORK_NOT_SUPPORTED`, `CUSTOMERS_COUNTRY_NOT_SUPPORTED`, `CUSTOMERS_ENHANCED_KYC_REQUIRED`, `CUSTOMERS_ID_DOCUMENT_INVALID`, `CUSTOMERS_INVALID_PHONE`, `CUSTOMERS_INVALID_TAX_ID`, `CUSTOMERS_KYC_NOT_APPROVED`, `CUSTOMERS_OWNERSHIP_INVALID`, `FILES_UNREADABLE`, `VALIDATION_FAILED`, `VALIDATION_MISSING_REQUIRED_FIELDS`, `VIRTUAL_ACCOUNTS_DISABLED`, `VIRTUAL_ACCOUNTS_DOCUMENTS_REQUIRED`, `VIRTUAL_ACCOUNTS_PARTNER_NOT_ELIGIBLE`, `VIRTUAL_ACCOUNTS_REGION_NOT_SUPPORTED`. See the Error responses section for retry semantics.
- `401` — Possible error codes: `AUTH_UNAUTHORIZED`. See the Error responses section for retry semantics.
- `403` — Possible error codes: `AUTH_FORBIDDEN`. See the Error responses section for retry semantics.
- `404` — Possible error codes: `CUSTOMERS_NOT_FOUND`, `FEES_NOT_FOUND`, `INSTANCES_NOT_FOUND`, `VIRTUAL_ACCOUNTS_NOT_FOUND`, `WALLETS_NOT_FOUND`. See the Error responses section for retry semantics.
- `429` — Possible error codes: `AUTH_RATE_LIMITED`. See the Error responses section for retry semantics.
- `500` — Possible error codes: `FILES_UNREADABLE`, `INTERNAL_ERROR`. See the Error responses section for retry semantics.

---

[API](https://skmtc.dev/blindpay/apis/blindpay-api.md) · [All operations](https://skmtc.dev/blindpay/apis/blindpay-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/blindpay/blindpay-api/revisions/e9c7485e1cc5/schema)
