Update a wallet
Wallets
Update a wallet
Partially updates an existing wallet. Returns the wallet in the same shape as
POST /v1/wallets.
The path id is the GlobalStack external identifier (wal_…).
Mutable fields
label— non-empty string, max 255 chars.metadata— free-formRecord<string, string>.
Immutable fields
currency and customer_id cannot be changed. Including either (or any unknown
field) in the request body fails validation with 400 bad_request. To move a
wallet to a different currency, create a new wallet.
Semantics
labelis replace-only. Omitting it leaves the stored label unchanged. Passingnull(or an empty string) to clear it is rejected as400 bad_request.metadatais replaced whole-cloth when present. No deep merge — the new map fully replaces the stored map.{}clears it. Explicitnullis rejected as400 bad_request.- A body with neither
labelnormetadatais rejected as400 invalid_input(nothing to update).
Errors
400 bad_request— class-validator failures: an immutable or unknown field (currency,customer_id, …) rejected;labelset to null/empty;metadataset tonullor a non-object.400 invalid_input— malformed path id (wal_…prefix required); empty patch body with neitherlabelnormetadata.401 authentication_failed— invalid or missing API key.404 not_found— wallet does not exist.
Example
PATCH /v1/wallets/wal_01HXYZABC1234567890ABCDEFG
{
"label": "Treasury Wallet"
}
PATCH
Update a wallet
Authorizations
API key issued during merchant onboarding.
Path Parameters
Pattern:
[^\/#\?]+?