Skip to main content
POST
Retry payment

Authorizations

Authorization
string
header
required

A company API key, company scoped JWT, app API key, or user OAuth token. You must prepend your key/token with the word 'Bearer', which will look like Bearer ***************************

Path Parameters

id
string
required

The unique identifier of the payment to retry.

Example:

"pay_xxxxxxxxxxxxxx"

Response

A successful response

A payment represents a completed or attempted charge. Payments track the amount, status, currency, and payment method used.

amount_after_fees
number
required

How much the payment is for after fees

Example:

6.9

application_fee
object | null
required

The application fee charged on this payment.

auto_refunded
boolean
required

Whether this payment was auto refunded or not

billing_address
object | null
required

The address of the user who made the payment.

billing_reason
enum<string> | null
required

The machine-readable reason this charge was created, such as initial subscription purchase, renewal cycle, or one-time payment.

Available options:
subscription_create,
subscription_cycle,
subscription_update,
one_time,
manual,
subscription
card_brand
enum<string> | null
required

Card network reported by the processor (e.g., 'visa', 'mastercard', 'amex'). Present only when the payment method type is 'card'.

Available options:
mastercard,
visa,
amex,
discover,
unionpay,
jcb,
diners,
link,
troy,
visadankort,
visabancontact,
china_union_pay,
rupay,
jcbrupay,
elo,
maestro,
tarjeta_naranja,
cirrus,
nspk_mir,
verve,
ebt,
private_label,
local_brand,
uatp,
wexcard,
uzcard,
meeza,
hrg_store_card,
girocard,
fuel_card,
dankort,
carnet,
atm_card,
china_union_payuzcard,
codensa,
cabal,
hipercard,
jcblankapay,
cmi,
aura,
unknown
card_last4
string | null
required

The last four digits of the card used to make this payment. Null if the payment was not made with a card.

Example:

"4242"

checkout_configuration_id
string | null
required

The ID of the checkout session/configuration that produced this payment, if any. Use this to map payments back to the checkout configuration that created them.

company
object | null
required

The company for the payment.

created_at
string<date-time>
required

The datetime the payment was created.

Example:

"2023-12-01T05:00:00.401Z"

currency
enum<string>
required

The three-letter ISO currency code for this payment (e.g., 'usd', 'eur').

Available options:
usd,
sgd,
inr,
aud,
brl,
cad,
dkk,
eur,
nok,
gbp,
sek,
chf,
hkd,
huf,
jpy,
mxn,
myr,
pln,
czk,
nzd,
aed,
eth,
ape,
cop,
ron,
thb,
bgn,
idr,
dop,
php,
try,
krw,
twd,
vnd,
pkr,
clp,
uyu,
ars,
zar,
dzd,
tnd,
mad,
kes,
kwd,
jod,
all,
xcd,
amd,
bsd,
bhd,
bob,
bam,
khr,
crc,
xof,
egp,
etb,
gmd,
ghs,
gtq,
gyd,
ils,
jmd,
mop,
mga,
mur,
mdl,
mnt,
nad,
ngn,
mkd,
omr,
pyg,
pen,
qar,
rwf,
sar,
rsd,
lkr,
tzs,
ttd,
uzs,
rub,
btc,
cny,
usdt,
kzt,
awg,
whop_usd,
xau
dispute_alerted_at
string<date-time> | null
required

When an alert came in that this transaction will be disputed

Example:

"2023-12-01T05:00:00.401Z"

disputes
object[] | null
required

The disputes attached to this payment. Null if the actor in context does not have the payment:dispute:read permission.

failure_message
string | null
required

If the payment failed, the reason for the failure.

financing_installments_count
integer | null
required

The number of financing installments for the payment. Present if the payment is a financing payment (e.g. Splitit, Klarna, etc.).

Example:

42

financing_transactions
object[]
required

The financing transactions attached to this payment. Present if the payment is a financing payment (e.g. Splitit, Klarna, etc.).

id
string
required

The unique identifier for the payment.

Example:

"pay_xxxxxxxxxxxxxx"

last_payment_attempt
string<date-time> | null
required

The time of the last payment attempt.

Example:

"2023-12-01T05:00:00.401Z"

member
object | null
required

The member attached to this payment.

membership
object | null
required

The membership attached to this payment.

metadata
object | null
required

The custom metadata stored on this payment. This will be copied over to the checkout configuration for which this payment was made

next_payment_attempt
string<date-time> | null
required

The time of the next schedule payment retry.

Example:

"2023-12-01T05:00:00.401Z"

paid_at
string<date-time> | null
required

The time at which this payment was successfully collected. Null if the payment has not yet succeeded. As a Unix timestamp.

Example:

"2023-12-01T05:00:00.401Z"

payment_method
object | null
required

The tokenized payment method reference used for this payment. Null if no token was used.

payment_method_type
enum<string> | null
required

The type of payment instrument used for this payment (e.g., card, Cash App, iDEAL, Klarna, crypto). Null when the processor does not supply a type.

Available options:
acss_debit,
affirm,
afterpay_clearpay,
alipay,
alma,
amazon_pay,
apple,
apple_pay,
au_bank_transfer,
au_becs_debit,
bacs_debit,
bancolombia,
bancontact,
billie,
bizum,
blik,
boleto,
bre_b,
ca_bank_transfer,
capchase_pay,
card,
card_installments_three,
card_installments_six,
card_installments_twelve,
cashapp,
claritypay,
coinbase,
crypto,
custom,
customer_balance,
demo_pay,
efecty,
eps,
eu_bank_transfer,
fpx,
gb_bank_transfer,
giropay,
google_pay,
gopay,
grabpay,
id_bank_transfer,
ideal,
interac,
kakao_pay,
klarna,
klarna_pay_now,
konbini,
kr_card,
kr_market,
kriya,
kueski,
link,
mb_way,
m_pesa,
mercado_pago,
mobilepay,
mondu,
multibanco,
naver_pay,
nequi,
netbanking,
ng_bank,
ng_bank_transfer,
ng_card,
ng_market,
ng_ussd,
ng_wallet,
nz_bank_account,
oxxo,
p24,
pago_efectivo,
pse,
pay_by_bank,
payco,
paynow,
paypal,
paypay,
payto,
pix,
platform_balance,
promptpay,
qris,
rechnung,
revolut_pay,
samsung_pay,
satispay,
scalapay,
sencillito,
sepa_debit,
sequra,
servipag,
sezzle,
shop_pay,
shopeepay,
sofort,
south_korea_market,
spei,
splitit,
sunbit,
swish,
tamara,
twint,
upi,
us_bank_account,
us_bank_transfer,
venmo,
vipps,
webpay,
wechat_pay,
yape,
zip,
coinflow,
unknown
payments_failed
integer | null
required

The number of failed payment attempts for the payment.

Example:

42

plan
object | null
required

The plan attached to this payment.

product
object | null
required

The product this payment was made for

promo_code
object | null
required

The promo code used for this payment.

refundable
boolean
required

True only for payments that are paid, have not been fully refunded, and were processed by a payment processor that allows refunds.

refunded_amount
number | null
required

The payment refund amount(if applicable).

Example:

6.9

refunded_at
string<date-time> | null
required

When the payment was refunded (if applicable).

Example:

"2023-12-01T05:00:00.401Z"

refunds
object[]
required

The refunds issued against this payment, newest first, including failed and canceled refund attempts. Limited to the 100 most recent.

resolutions
object[] | null
required

The resolution center cases opened by the customer on this payment. Null if the actor in context does not have the payment:resolution_center_case:read permission.

retryable
boolean
required

True when the payment status is open and its membership is in one of the retry-eligible states (active, trialing, completed, or past_due); otherwise false. Used to decide if Whop can attempt the charge again.

risk_score
integer | null
required

Whop's in-house fraud risk score for this payment, from 0 (lowest risk) to 100 (highest risk). Null when the payment has not been scored or scoring has not yet completed.

Example:

42

risk_signals
object | null
required

A curated set of factors behind the risk score, grouped by category (business transaction history, buyer, device). Each entry has a key, human-readable label, category, and value. Null when there is no risk assessment for this payment.

settlement_amount
number
required

The total amount charged to the customer for this payment, including taxes and after any discounts. In the currency specified by the currency field.

Example:

6.9

settlement_currency
enum<string>
required

The three-letter ISO currency code for this payment (e.g., 'usd', 'eur').

Available options:
usd,
sgd,
inr,
aud,
brl,
cad,
dkk,
eur,
nok,
gbp,
sek,
chf,
hkd,
huf,
jpy,
mxn,
myr,
pln,
czk,
nzd,
aed,
eth,
ape,
cop,
ron,
thb,
bgn,
idr,
dop,
php,
try,
krw,
twd,
vnd,
pkr,
clp,
uyu,
ars,
zar,
dzd,
tnd,
mad,
kes,
kwd,
jod,
all,
xcd,
amd,
bsd,
bhd,
bob,
bam,
khr,
crc,
xof,
egp,
etb,
gmd,
ghs,
gtq,
gyd,
ils,
jmd,
mop,
mga,
mur,
mdl,
mnt,
nad,
ngn,
mkd,
omr,
pyg,
pen,
qar,
rwf,
sar,
rsd,
lkr,
tzs,
ttd,
uzs,
rub,
btc,
cny,
usdt,
kzt,
awg,
whop_usd,
xau
settlement_exchange_rate
number | null
required

Deprecated. Always returns null.

Example:

6.9

shipping_address
object | null
required

The shipping address provided by the customer for physical goods. Null if no shipping address was collected.

status
enum<string> | null
required

The current lifecycle state of this payment (e.g., 'draft', 'open', 'paid', 'void').

Available options:
draft,
open,
paid,
pending,
uncollectible,
unresolved,
void
substatus
enum<string>
required

The friendly status of the payment.

Available options:
succeeded,
pending,
failed,
past_due,
canceled,
price_too_low,
uncollectible,
refunded,
auto_refunded,
partially_refunded,
dispute_warning,
dispute_needs_response,
dispute_warning_needs_response,
resolution_needs_response,
dispute_under_review,
dispute_warning_under_review,
resolution_under_review,
dispute_won,
dispute_warning_closed,
resolution_won,
dispute_lost,
dispute_closed,
resolution_lost,
drafted,
incomplete,
unresolved,
open_dispute,
open_resolution
subtotal
number | null
required

The subtotal to show to the creator (excluding buyer fees).

Example:

6.9

tax_amount
number | null
required

The calculated amount of the sales/VAT tax (if applicable).

Example:

6.9

tax_behavior
enum<string> | null
required

The type of tax inclusivity applied to the payment, for determining whether the tax is included in the final price, or paid on top.

Available options:
exclusive,
inclusive,
unspecified,
unable_to_collect
tax_refunded_amount
number | null
required

The amount of tax that has been refunded (if applicable).

Example:

6.9

three_ds_verified
boolean
required

Whether 3D Secure authentication was completed for this payment.

total
number | null
required

The total to show to the creator (excluding buyer fees).

Example:

6.9

updated_at
string<date-time>
required

The datetime the payment was last updated.

Example:

"2023-12-01T05:00:00.401Z"

usd_total
number | null
required

The total in USD to show to the creator (excluding buyer fees).

Example:

6.9

user
object | null
required

The user that made this payment.

voidable
boolean
required

True when the payment is tied to a membership in past_due, the payment status is open, and the processor allows voiding payments; otherwise false.