Cancel Payout
Cancels a payout before it is sent to the payout provider, or asks the provider to stop one already sent. While the payout is in_review, or processing with nothing sent yet (see cancelable), it is canceled and the funds, fees included, return to the balance. Once sent, the response is 202 with a cancellation object, and the payout reads canceled only if the provider confirms it stopped. A requested payout returns 409 until it reaches review, a payout the provider can no longer stop returns 409 with error type not_cancelable, and canceling an already-canceled payout returns it unchanged.
Authorizations
An Account API key, an App API key, an account access token, an account-scoped user token, or a user OAuth token. Prepend the key or token with Bearer, for example Bearer ***************************. See Auth & API keys for how to get each one.
Headers
A unique key that makes this request safe to retry. See Idempotent requests.
255"d9105228-4a08-46b1-8b91-42fed586d383"
Pins the request to a dated API version.
"2026-10-24"
Path Parameters
Payout ID, prefixed wdrl_, or the cofr_ payout request ID returned by POST /payouts — both cancel the same payout.
Query Parameters
Owning account ID, prefixed biz_. Provide exactly one of account_id or user_id.
Owning user ID, prefixed user_. Provide exactly one of account_id or user_id.
Response
payout canceled and funds returned
The payout amount in whole currency units, as a decimal string.
"500.0"
Whether POST /payouts/{id}/cancel would act on this payout right now: true while it is in_review, while it is processing with nothing yet submitted to the payout provider, or while a submitted payout can still be asked to cancel at the provider. false once the money has arrived or the payout has already ended.
false
When the payout was created.
"2026-07-29T18:22:00.000Z"
Payout currency.
"usd"
The amount delivered in the destination currency, as a decimal string. Assigned when the payout is processed, so it is null before then and on payouts without a recorded conversion.
"461.7"
Currency the funds are delivered in, taken from the payout method when the payout is created. On a payout funded by a conversion request 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.
"eur"
Estimated time the funds become available in the destination account.
"2026-08-03T00:00:00.000Z"
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.
0.9234
Why the payout ended without paying, or why it reversed after settlement. Present on failed, canceled, denied, and reversed payouts; null otherwise.
The fee charged for the payout, in the payout currency, as a decimal string.
"0.25"
Who bore the payout fee: the account itself, or its parent platform.
self, platform "self"
Payout ID, prefixed wdrl_ for a payout returned by GET /payouts, cofr_ for a payout request returned by POST /payouts, or pay_ for a payout funded by a card payment that has not been submitted yet.
"wdrl_xxxxxxxxxxxxx"
Whop's markup on the provider fee, in the payout currency, as a decimal string. "0.0" when none applies.
"0.0"
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.
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 payout funded by a conversion request 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.
"49.75"
Free-form notes attached by the payout creator, or null when none were provided. Maximum 255 characters.
255"Detailing supplies restock"
payout "payout"
Name of the entity processing the payout.
"ACH Bank Deposit"
The saved payout method used. Requires payout:destination:read; null without it.
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.
"cofr_xxxxxxxxxxxxx"
How the payout was created. automatic means a scheduled auto-payout; null on payouts created before source tracking or through internal tooling.
api, dashboard, automatic, null "api"
Payout delivery speed.
standard, instant "standard"
The payment description sent with the payout, or null if no descriptor was set. When set, 5-80 printable ASCII characters.
5 - 80"MYCOMPANY"
Current payout status.
requested, in_review, processing, completed, reversed, canceled, failed, denied "canceled"
The finest machine phase under status — for example awaiting_provider_acceptance vs in_transit under processing, or the conversion phase under requested. Informational vocabulary: values can be added without a version bump; status is the versioned contract.
"awaiting_provider_acceptance"
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.
"021000021234567"

