---
title: "Retrieve Payout"
method: GET
path: "/payouts/{id}"
tags: ["Payouts"]
---

# Retrieve Payout

`GET /payouts/{id}`

Fetches one payout by its `wdrl_` or `cofr_` ID. Use the `cofr_` payout request ID returned by `POST /payouts` for a stablecoin account to poll until the payout settles.

## Query parameters

- `account_id` string
- `user_id` string

## Response `200`

payout found for a user

- object
  - `amount` number, float, required — The payout amount in whole currency units.
  - `created_at` string, date-time, required — When the payout was created.
  - `currency` string, required — Payout currency.
  - `destination_amount` number, float, nullable, required — The amount delivered in the destination currency, in whole currency units. Assigned when the payout is processed, so it is `null` before then and on payouts without a recorded conversion.
  - `destination_currency` string, nullable, required — Currency the funds are delivered in, taken from the payout method when the payout is created. On a stablecoin payout it follows the settlement payout minted alongside it — the `GET /payouts` row carrying this payout's id as `payout_request_id` — and is `null` only when no settlement payout exists.
  - `estimated_arrival` string, date-time, nullable, required — Estimated time the funds become available in the destination account.
  - `exchange_rate` number, float, nullable, required — Exchange rate from the payout currency to the destination currency. Assigned when the payout is processed, so it is `null` before then and on payouts without a recorded rate.
  - `failure` object, nullable, required — Why the payout ended without paying. Present on failed, canceled, and denied payouts; `null` otherwise.
    - `code` string, nullable, required — Classified failure code from the maintained error catalog.
    - `funds_returned_at` string, date-time, nullable, required — The effective time of the reversal that put the funds back in the balance — `null` if they never left it or have not returned yet. Set only once the return is confirmed in the ledger; the ledger posting itself can land moments after this time.
    - `message` string, nullable, required — Human-readable explanation of the failure. Callers holding `payout:destination:read` may receive text personalized to the destination; other callers get the generic catalog message.
  - `fee_amount` number, float, required — The fee charged for the payout, in the payout currency.
  - `fee_paid_by` 'self' | 'platform', required — Who bore the payout fee: the account itself, or its parent platform.
  - `id` string, required — Payout ID, prefixed `wdrl_` for a payout returned by `GET /payouts` or `cofr_` for a payout request returned by `POST /payouts`.
  - `markup_fee` number, float, required — Whop's markup on the provider fee, in the payout currency. `0.0` when none applies.
  - `metadata` object, required — Key-value data attached at creation and echoed on every read. At most 50 keys, key names up to 40 characters, string values up to 500 characters.
  - `net_amount` number, float, required — The planned net for the destination, in the payout currency: amount minus fee_amount minus markup_fee when fee_paid_by is `self`; equal to amount when the platform covers the fees. A payout that ends denied, canceled, or failed delivered nothing — most keep the planned figure and `failure` says where the funds are, but a canceled stablecoin payout can report the settled outcome instead: `amount` carries what stayed in the balance, fees are zero because none were charged, and `net_amount` is 0 because nothing was delivered.
  - `notes` string, nullable, required — Free-form notes attached by the payout creator, or `null` when none were provided. Maximum 255 characters.
  - `object` 'payout', required
  - `payer_name` string, nullable, required — Name of the entity processing the payout.
  - `payout_method` object, nullable, required — The saved payout method used. Requires payout:destination:read; null without it.
    - `nickname` string, nullable, required — Saved payout method nickname.
    - `supported_payout_method` object, nullable, required — Supported payout method display details.
      - `delivery_type` 'cash_pickup' | 'bank_deposit' | 'home_delivery' | 'mobile_wallet' | 'masspay_card' | 'paper_check' | 'bill' | 'cryptocurrency' | 'unknown', required — How the funds are delivered to the recipient.
      - `icon_url` string, nullable, required — Supported payout method icon URL.
      - `payer_name` string, nullable, required — Supported payout method display name.
  - `payout_request_id` string, nullable, required — Payout request ID, prefixed `cofr_`, returned by `POST /payouts`. For a request retrieved by its own `cofr_` ID, this equals `id`. Returns `null` for payouts not created by `POST /payouts`.
  - `source` 'api' | 'dashboard' | 'automatic' | 'null', nullable, required — How the payout was created. `automatic` means a scheduled auto-payout; `null` on payouts created before source tracking or through internal tooling.
  - `speed` 'standard' | 'instant', required — Payout delivery speed.
  - `status` 'requested' | 'awaiting_payment' | 'in_transit' | 'completed' | 'failed' | 'canceled' | 'denied', required — Current payout status.
  - `trace_code` string, nullable, required — ACH trace number the recipient's bank can use to locate this payout. Assigned when the payout is submitted to the bank, so it is `null` before then and on payouts not sent over ACH.

## Other responses

- `400` — Invalid Parameters
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Resource not found

---

[API](https://skmtc.net/whop/apis/whop-api.md) · [All operations](https://skmtc.net/whop/apis/whop-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/whop/whop-api/revisions/4a1a4a5d2c72/schema)
