v52

latestOpenAPI 3.0.0raw.githubusercontent.com2026-08-015891,4406.1 MB

Cancel a refund

Cancels a refund with a status of requires_action.

You can’t cancel refunds in other states. Only refunds for payment methods that require customer action can enter the requires_action state.

post/v1/refunds/{refund}/cancel

Path parameters

refundstring required

Response

Successful response.

amountinteger required

Amount, in cents (or local equivalent).

createdinteger required

Time at which the object was created. Measured in seconds since the Unix epoch.

currencystring currency required

Three-letter ISO currency code, in lowercase. Must be a supported currency.

customer_accountstring nullable

ID of the account of this refund.

descriptionstring

An arbitrary string attached to the object. You can use this for displaying to users (available on non-card refunds only).

failure_reasonstring

Provides the reason for the refund failure. Possible values are: lost_or_stolen_card, expired_or_canceled_card, charge_for_pending_refund_disputed, insufficient_funds, declined, merchant_request, or unknown.

idstring required

Unique identifier for the object.

instructions_emailstring

For payment methods without native refund support (for example, Konbini, PromptPay), provide an email address for the customer to receive refund instructions.

metadataobject nullable

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

object'refund' required

String representing the object's type. Objects of the same type share the same value.

pending_reason'charge_pending' | 'insufficient_funds' | 'processing'

Provides the reason for why the refund is pending. Possible values are: processing, insufficient_funds, or charge_pending.

reason'duplicate' | 'expired_uncaptured_charge' | 'fraudulent' | 'requested_by_customer' nullable

Reason for the refund, which is either user-provided (duplicate, fraudulent, or requested_by_customer) or generated by Stripe internally (expired_uncaptured_charge).

receipt_numberstring nullable

This is the transaction number that appears on email receipts sent for this refund.

statusstring nullable

Status of the refund. This can be pending, requires_action, succeeded, failed, or canceled. Learn more about failed refunds.