---
title: "List Account Reserves"
method: GET
path: "/accounts/{account_id}/reserves"
tags: ["Accounts"]
---

# List Account Reserves

`GET /accounts/{account_id}/reserves`

Lists what the account's held balance is made of, one entry per currency: the total held, why each part is held, and the days it unlocks.

## Path parameters

- `account_id` string, required

## Headers

- `Api-Version-Date` string

## Response `200`

empty when nothing is held

- object
  - `data` AccountReserve[], required
    - `amount` string, required — Total held in this currency, in native units, as a decimal string. `usd` and `usdt` are reported as one `usd` entry, matching how the balance row groups them.
    - `by_type` AccountReserveType[], required
      - `amount` string, required — Amount held for this reason, in native units, as a decimal string.
      - `hold_period_days` integer, nullable, required — Days money is currently held for this reason before it unlocks, or `null` when release depends on something other than time. Money already held keeps the terms it was taken under.
      - `percentage` number, nullable, required — Percentage of each incoming payment currently held for this reason, or `null` when the reason is not a percentage of anything. Money already held keeps the release date it was given, which `unlocks_by_date` reflects.
      - `type` 'regular' | 'bnpl' | 'sequra' | 'fraud_hold' | 'preshipment_hold', required — Why this part of the balance is held. `regular` is the account's standing risk reserve; `bnpl` and `sequra` cover buy-now-pay-later settlement; `preshipment_hold` covers a physical order that has not shipped yet; `fraud_hold` is held while activity is reviewed.
    - `currency` string, required — Lowercase ISO currency code, such as `usd` or `eur`.
    - `unlocks_by_date` AccountReserveUnlock[], required
      - `amount` string, required — Amount unlocking that day across every reason, in native units, as a decimal string.
      - `date` string, required — The day this money unlocks, as an ISO 8601 date.

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `503` — Service Unavailable

## Changes

> 65 revisions in range; 1 not diffed.

- **2026-08-07** `f1020c3ecda4` — 3 info
  - added the optional property `error/code` to the response with the `401` status
  - added the optional property `error/code` to the response with the `403` status
  - added the optional property `error/code` to the response with the `503` status
- **2026-08-03** `72ff51b37dc4` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/whop/apis/whop-api/changes/accounts/:account_id/reserves/get.md)

---

[API](https://skmtc.dev/whop/apis/whop-api.md) · [All operations](https://skmtc.dev/whop/apis/whop-api/llms.txt) · [OpenAPI document](https://skmtc.dev/whop/apis/whop-api/revisions/51933d70d7f5?raw)
