---
title: "Update Virtual Account"
method: PATCH
path: "/partners/accounts/update-virtual-account"
tags: ["Partners"]
---

# Update Virtual Account

`PATCH /partners/accounts/update-virtual-account`

## Request

- Base URL: `//mapi.boomfi.xyz` (relative, and the document’s source URL is not known)
- URL: `//mapi.boomfi.xyz/partners/accounts/update-virtual-account`
- Auth: one of:
  - API key in header `X-API-KEY`
  - API key in header `X-API-Signature`
  - API key in header `X-API-Nonce`
- TypeScript: <https://skmtc.dev/boomfi/apis/boomfi-merchants-api/docs/partners/accounts/update-virtual-account/patch.ts> (a function with typed inputs; its response is checked against the schema)

Update an existing virtual account: add or enable chains with currencies, disable managed chains, add external wallet addresses, and configure deposit splits.

## Request body

- PartnersUpdateVirtualAccountRequest
  - `reference` string, required: Reference of the virtual account to update.
  - `chains` PartnersChainConfig[]: Add or update chain configurations. Entries without wallet_address add/enable managed wallets; entries with wallet_address add/update external wallets.
    - `chain_id` integer: The blockchain network ID.
    - `currencies` string[]: List of currency symbols to enable on this chain.
    - `wallet_address` string: External wallet address for this chain. When provided, creates an external (self-custody) sub-account instead of a managed wallet. Omit for managed (DFNS) wallets.
  - `disable_chains` integer[]: List of chain IDs to disable for managed (pay-in) sub-accounts.
  - `deposit_splits` PartnersDepositSplitInput[]: Update deposit split configuration. Omit to keep current splits unchanged. Send empty array to clear splits. Send array with entries to replace splits.
    - `account_ref` string: Reference of the target virtual account to receive this split. Exactly one of account_ref or account_id must be provided.
    - `account_id` integer: ID of the target virtual account to receive this split. Exactly one of account_ref or account_id must be provided.
    - `pct` string, required: Percentage of gross deposit amount to route to this destination. Use decimal string (e.g. "2.5" for 2.5%).

## Response `200`

OK

- InternalResponseAccountsUpdateVirtualAccountResponse
  - `data` AccountsUpdateVirtualAccountResponse
    - `id` integer: The unique identifier for the account.
    - `org_id` string: The organization ID.
    - `parent_id` integer: Parent account ID, if applicable.
    - `reference` string: The account reference identifier.
    - `account_type` 1 | 2 | 3: The type of the current account. - 1 = Crypto - 2 = Bank - 3 = Card
    - `name` string: Account name.
    - `chain_id` integer: Blockchain network ID.
    - `address` string: Crypto wallet address.
    - `currencies` string[]: Supported currencies.
    - `enabled` boolean: Whether the account is enabled.
    - `provider` string: Account provider (e.g. DFNS, External).
    - `state` 1 | 2 | 3
    - `created_at` string: Creation timestamp.
    - `updated_at` string: Last update timestamp.
    - `chain` AccountsChainResponse
      - `category` string: The category or classification of the chain.
      - `code` string: The code or abbreviation associated with the chain.
      - `is_testnet` boolean: Indicates whether the chain is a testnet (true) or not (false).
      - `name` string: The name or title associated with the chain.
      - `native_currency_symbol` string: The symbol representing the native currency of the chain.
    - `sub_accounts` AccountsUpdateVirtualAccountResponse[]: Sub-accounts under this virtual account.
  - `error` boolean
  - `message` string

## Other responses

- `400`: Bad Request
- `500`: Internal Server Error

---

[API](https://skmtc.dev/boomfi/apis/boomfi-merchants-api.md) - [All operations](https://skmtc.dev/boomfi/apis/boomfi-merchants-api/llms.txt) - [OpenAPI document](https://skmtc.dev/boomfi/apis/boomfi-merchants-api/revisions/ace3c3df05fe?raw)
