---
title: "Update wallet"
method: PATCH
path: "/wallets/{walletId}"
tags: ["Wallets"]
---

# Update wallet

`PATCH /wallets/{walletId}`

Update wallet metadata

## Path parameters

- `walletId` string, required — Wallet ID (wal_*).

## Headers

- `Idempotency-Key` string, required
- `X-Agent-ID` string, nullable
- `X-Instance-ID` string, nullable

## Request body

- object
  - `data` object, required
    - `attributes` object, required
      - `displayName` string — Wallet name.
      - `description` string, nullable — User-facing wallet description.

## Response `200`

Successful Response

- object
  - `data` object, required
    - `type` 'wallet', required
    - `id` string, required — Wallet ID (wal_*).
    - `attributes` object, required
      - `status` 'active' | 'frozen' | 'closed', required — Wallet readiness status.
      - `walletType` 'standard' | 'vault', required — Wallet type: a spendable standard wallet or the vault.
      - `isDefault` boolean, required — Whether this wallet is the party's default for unnamed operations.
      - `createdAt` string, date-time, nullable, required — Wallet creation time, when available.
      - `displayName` string, nullable, required — Wallet name, when set.
      - `description` string, nullable, required — User-facing wallet description, when set.
      - `balance` object, nullable, required — Wallet ledger balance, when available.
        - `available` integer, required — Amount currently available to spend or withdraw in cents.
        - `total` integer, required — Total wallet ledger balance in cents.
        - `currency` 'USD', required — Currency code.
      - `claims` object, required — Party-level claimable payment totals, surfaced on the default wallet (or the first wallet when none is default).
        - `amount` integer, required — Total unclaimed product-payment amount in cents.
        - `count` integer, required — Number of unclaimed product payments.
      - `depositInstructions` object, nullable, required — Receiving bank for ACH deposits to this wallet, when available.
        - `bankName` string, required — Name of the receiving bank.
        - `accountNumber` string, nullable, required — Account number for ACH deposits. Returned when fetching a single wallet, null in list responses.
        - `routingNumber` string, nullable, required — Bank routing number for ACH deposits. Returned when fetching a single wallet, null in list responses.
    - `relationships` object, required
      - `party` object, required — Party that owns the wallet.
        - `data` object, required — Related resource identifier.
          - `type` 'party', required
          - `id` string, required

## Other responses

- `400` — Validation Error
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found. Returned when the resource does not exist, or when it exists but is not accessible to your account. The two cases are intentionally indistinguishable, so that resource IDs cannot be enumerated by probing.
- `409` — Conflict
- `422` — Validation Error
- `428` — Precondition Required
- `429` — Too Many Requests
- `500` — Internal Server Error
- `501` — Not Implemented
- `502` — Bad Gateway
- `503` — Service Unavailable

---

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