Skip to main content
POST
JavaScript

Authorizations

Authorization
string
header
required

An Account API key, account-scoped JWT, App API key, or user OAuth token. Prepend the key or token with Bearer, for example Bearer ***************************.

Headers

Idempotency-Key
string

A unique key that makes this request safe to retry. See Idempotent requests.

Maximum string length: 255
Example:

"d9105228-4a08-46b1-8b91-42fed586d383"

Api-Version-Date
string

Pins the request to a dated API version.

Example:

"2026-08-13"

Body

application/json
supported_payout_method_id
string
required

The supported payout method to save (a podst_ identifier from a previous listing).

Example:

"podst_xxxxxxxxxxxxxx"

account_id
string

The account to add the payout method for, prefixed biz_. Provide this or user_id.

Example:

"biz_xxxxxxxxxxxxxx"

destination_currency
string
default:usd

Currency the supported payout method delivers payouts in.

Example:

"usd"

fields
object

The supported payout method's required field values, keyed by field id — list them with GET /payouts/supported_methods?supported_payout_method_id=.... A Basis Theory token id may be passed in place of a raw value. For a U.S. bank routing-number field, a raw nine-digit value must also pass the ABA checksum. A validation failure returns the method's full required_fields schema alongside the error. Required whenever the account details are supplied directly.

Example:
is_default
boolean
default:false

Whether to make this the account's default payout method.

Example:

true

nickname
string

A label for the payout method, unique per destination.

Example:

"Personal checking"

user_id
string

The user to add the payout method for, prefixed user_. Provide this or account_id.

Example:

"user_xxxxxxxxxxxxxx"

Response

a pre-tokenized Basis Theory value passes through unvaulted

account_reference
string | null
required

Masked identifier for the destination.

Example:

"••••0472"

created_at
string<date-time>
required
Example:

"2026-01-01T12:00:00.000Z"

destination_currency
string
required
Example:

"usd"

estimated_arrival
object | null
required

Null on create. List payout methods to retrieve arrival estimates.

fee_structure
object | null
required

Null on create. List payout methods to retrieve the configured fee terms.

id
string
required

Payout method ID, usable as payout_method_id on POST /payouts.

Example:

"potk_xxxxxxxxxxxxxx"

institution_name
string | null
required
Example:

"Frost Bank"

is_default
boolean
required
Example:

false

nickname
string | null
required

User-defined label for the payout method.

Example:

"Ops checking"

object
enum<string>
required
Available options:
payout_method
Example:

"payout_method"

payer_name
string | null
required
Example:

"ACH Bank Deposit"

quote
object | null
required

Always null on create.

status
enum<string>
required
Available options:
created,
active,
broken
Example:

"created"

supported_payout_method
object | null
required
unavailable_reason
enum<string> | null
required

Why this method is unavailable: destination_retired means the payout provider stopped offering the destination. Whop may automatically remap an eligible method that was not linked through Plaid to a compatible replacement; otherwise, the account owner must re-add it. null means no unavailability reason is known.

Available options:
destination_retired,
null
Example:

"destination_retired"

bank_verification_state
enum<string> | null

Lifecycle trust state: checking (verification still running), verified (bank confirmed ownership or a payout already completed to it), no_data (verification unavailable or bank returned no ownership data), warning (bank could not confirm the destination's owner), broken (payouts failed with a permanent account error), null (never checked).

Available options:
checking,
verified,
no_data,
warning,
broken,
null
Example:

"no_data"

is_clone
boolean

Whether this method is a copy of one saved on another of the payer's accounts.

Example:

false

linked_via_plaid
boolean

Whether the payer added this method by signing in to their bank rather than typing account details.

Example:

false

needs_plaid_reconnect
boolean

Whether the bank sign-in behind this method has expired and must be redone before it counts as linked.

Example:

false