VirtualAccount

Update a Virtual Account

Update a Virtual Account. Patchable fields: destination (re-point), sponsorGas, label, metadata; any other JSON key is rejected with 400. Re-pointing destination to a healthy External Account recovers a VA from inactiveActionRequired back to active.

patch/virtual-accounts/{virtualAccountId}

Request

Path parameters

virtualAccountIdstring required

Virtual Account ID (va_ prefix).

Request body

sponsorGasboolean

When true, OMS absorbs the on-chain gas cost for the destination delivery. Only true is currently supported; accepted for forward-compatibility.

labelstring

Partner display label.

metadataobject

Free-form key-value pairs stored on the resource and echoed back on reads.

Response

The request has succeeded.

idstring

Public TypeID, e.g. txn_01h455vb4pex5vsknk084sn02q; legacy UUID suffixes are accepted until non-v7 rows are retired.

object'virtualAccount'

Resource type discriminator. Always "virtualAccount".

customerIdstring

Public TypeID, e.g. txn_01h455vb4pex5vsknk084sn02q; legacy UUID suffixes are accepted until non-v7 rows are retired.

status'pending' | 'active' | 'frozen' | 'closed' | 'deleted' | 'failed' | 'inactiveActionRequired'

Lifecycle of a Virtual Account. pending: awaiting bank provisioning. active: accepting deposits. frozen: deposits held by compliance. inactiveActionRequired: destination unusable - re-point destination to recover. closed: permanently disabled. deleted: close flow finalized. failed: provisioning failed.

statusReasonstring

Human-readable explanation of the current status.

sponsorGasboolean

Whether OMS absorbs the on-chain gas cost for the destination delivery. Persisted from the create/update request (currently only true is accepted).

bankMemostring

Wire/ACH memo the customer can include with deposits.

labelstring

Partner display label.

metadataobject

Free-form key-value pairs supplied at creation or update.

createdAtstring date-time

When the virtual account was created.

updatedAtstring date-time

When the virtual account was last updated.

failureReason'provisioningTimeout' | 'systemError' | 'ereborRejected' | 'deletePendingTimeout'

Closed enum stamped by failVA when a VA flips to terminal failed state.

deletionRequestedAtstring date-time

Set when DELETE has been requested but the close webhook has not yet finalized.

deletionRequestedBystring

Identity (JWT subject claim) of the caller who invoked DELETE.

Changes

No recorded changes to this operation across all 1 revision of this API.