Skip to content

Stripe: Refunds schemas

11 Stripe schemas with complete fields and constraints.

← Refunds operations · All schemas

Cancel a refund — response body

FieldTypePresenceDescription and constraints
$objectRootRefund objects allow you to refund a previously created charge that isn't
refunded yet. Funds are refunded to the credit or debit card that's
initially charged.

Related guide: [Refunds](https://docs.stripe.com/refunds)
amountJSONRequired within parent
amount (anyOf 1)integerAlternativeAmount, in cents (or local equivalent).
amount (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
balance_transactionJSONOptional
balance_transaction (anyOf 1)JSONAlternativeBalance transaction that describes the impact on your account balance.
balance_transaction (anyOf 1) (anyOf 1)stringAlternativeMaximum length: 5000
balance_transaction (anyOf 1) (anyOf 2)ModelAlternativeExpand Retrieve a balance transaction — balance get Balance History Id — response body
balance_transaction (anyOf 2)nullAlternative
chargeJSONOptional
charge (anyOf 1)JSONAlternativeID of the charge that's refunded.
charge (anyOf 1) (anyOf 1)stringAlternativeMaximum length: 5000
charge (anyOf 1) (anyOf 2)ModelAlternativeExpand Create a charge — response body
charge (anyOf 2)nullAlternative
createdJSONRequired within parent
created (anyOf 1)integerAlternativeTime at which the object was created. Measured in seconds since the Unix epoch.
Format: unix-time
created (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
currencystringRequired within parentThree-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
Format: currency
customerJSONOptional
customer (anyOf 1)JSONAlternativeID of the customer of this refund.
customer (anyOf 1) (anyOf 1)stringAlternativeMaximum length: 5000
customer (anyOf 1) (anyOf 2)ModelAlternativeExpand Create a customer — response body
customer (anyOf 1) (anyOf 3)ModelAlternativeExpand Delete a customer — response body
customer (anyOf 2)nullAlternative
customer_accountJSONOptional
customer_account (anyOf 1)stringAlternativeID of the account of this refund.
Maximum length: 5000
customer_account (anyOf 2)nullAlternative
descriptionstringOptionalAn arbitrary string attached to the object. You can use this for displaying to users (available on non-card refunds only).
Maximum length: 5000
destination_detailsModelOptionalExpand Cancel a refund — response body — destination details
failure_balance_transactionJSONOptionalAfter the refund fails, this balance transaction describes the adjustment made on your account balance that reverses the initial balance transaction.
failure_balance_transaction (anyOf 1)stringAlternativeMaximum length: 5000
failure_balance_transaction (anyOf 2)ModelAlternativeExpand Retrieve a balance transaction — balance get Balance History Id — response body
failure_reasonstringOptionalProvides 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`.
Maximum length: 5000
idstringRequired within parentUnique identifier for the object.
Maximum length: 5000
instructions_emailstringOptionalFor payment methods without native refund support (for example, Konbini, PromptPay), provide an email address for the customer to receive refund instructions.
Maximum length: 5000
metadataJSONOptional
metadata (anyOf 1)objectAlternativeSet of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
Additional keys: see wildcard field
metadata (anyOf 1).*stringAdditional keysMaximum length: 500
metadata (anyOf 2)nullAlternative
next_actionModelOptionalExpand Cancel a refund — response body — next action
objectstringRequired within parentString representing the object's type. Objects of the same type share the same value.
Known values: refund
payment_intentJSONOptional
payment_intent (anyOf 1)JSONAlternativeID of the PaymentIntent that's refunded.
payment_intent (anyOf 1) (anyOf 1)stringAlternativeMaximum length: 5000
payment_intent (anyOf 1) (anyOf 2)ModelAlternativeExpand Cancel a Payment Intent — response body
payment_intent (anyOf 2)nullAlternative
payment_methodJSONOptional
payment_method (anyOf 1)JSONAlternativeID of the payment method associated with this refund.
payment_method (anyOf 1) (anyOf 1)stringAlternativeMaximum length: 5000
payment_method (anyOf 1) (anyOf 2)ModelAlternativeExpand Create a Payment Method — response body
payment_method (anyOf 2)nullAlternative
pending_reasonstringOptionalProvides the reason for why the refund is pending. Possible values are: `processing`, `insufficient_funds`, or `charge_pending`.
Known values: charge_pending, insufficient_funds, processing
presentment_detailsModelOptionalExpand Cancel a refund — response body — presentment details
reasonJSONOptional
reason (anyOf 1)stringAlternativeReason for the refund, which is either user-provided (`duplicate`, `fraudulent`, or `requested_by_customer`) or generated by Stripe internally (`expired_uncaptured_charge`).
Known values: duplicate, expired_uncaptured_charge, fraudulent, requested_by_customer
reason (anyOf 2)nullAlternative
receipt_numberJSONOptional
receipt_number (anyOf 1)stringAlternativeThis is the transaction number that appears on email receipts sent for this refund.
Maximum length: 5000
receipt_number (anyOf 2)nullAlternative
source_transfer_reversalJSONOptional
source_transfer_reversal (anyOf 1)JSONAlternativeThe transfer reversal that's associated with the refund. Only present if the charge came from another Stripe account.
source_transfer_reversal (anyOf 1) (anyOf 1)stringAlternativeMaximum length: 5000
source_transfer_reversal (anyOf 1) (anyOf 2)ModelAlternativeExpand Update a reversal — response body
source_transfer_reversal (anyOf 2)nullAlternative
statusJSONOptional
status (anyOf 1)stringAlternativeStatus of the refund. This can be `pending`, `requires_action`, `succeeded`, `failed`, or `canceled`. Learn more about [failed refunds](https://docs.stripe.com/refunds#failed-refunds).
Maximum length: 5000
status (anyOf 2)nullAlternative
transfer_reversalJSONOptional
transfer_reversal (anyOf 1)JSONAlternativeThis refers to the transfer reversal object if the accompanying transfer reverses. This is only applicable if the charge was created using the destination parameter.
transfer_reversal (anyOf 1) (anyOf 1)stringAlternativeMaximum length: 5000
transfer_reversal (anyOf 1) (anyOf 2)ModelAlternativeExpand Update a reversal — response body
transfer_reversal (anyOf 2)nullAlternative

Referenced models: Retrieve a balance transaction — balance get Balance History Id — response body, Create a charge — response body, Create a customer — response body, Delete a customer — response body, Cancel a refund — response body — presentment details, Cancel a Payment Intent — response body, Create a Payment Method — response body, Cancel a refund — response body — destination details, Cancel a refund — response body — next action, Update a reversal — response body

Cancel a refund — response body — destination details

FieldTypePresenceDescription and constraints
$objectRoot
affirmModelOptionalExpand Create a Payment Method — response body — zip
afterpay_clearpayModelOptionalExpand Create a Payment Method — response body — zip
alipayModelOptionalExpand Create a Payment Method — response body — zip
almaModelOptionalExpand Create a Payment Method — response body — zip
amazon_payModelOptionalExpand Create a Payment Method — response body — zip
au_bank_transferModelOptionalExpand Create a Payment Method — response body — zip
blikModelOptionalExpand Cancel a refund — response body — destination details blik
br_bank_transferModelOptionalExpand Cancel a refund — response body — destination details p24
cardModelOptionalExpand Cancel a refund — response body — destination details card
cashappModelOptionalExpand Create a Payment Method — response body — zip
cryptoModelOptionalExpand Cancel a refund — response body — destination details crypto
customer_cash_balanceModelOptionalExpand Create a Payment Method — response body — zip
epsModelOptionalExpand Create a Payment Method — response body — zip
eu_bank_transferModelOptionalExpand Cancel a refund — response body — destination details p24
gb_bank_transferModelOptionalExpand Cancel a refund — response body — destination details p24
giropayModelOptionalExpand Create a Payment Method — response body — zip
grabpayModelOptionalExpand Create a Payment Method — response body — zip
jp_bank_transferModelOptionalExpand Cancel a refund — response body — destination details p24
klarnaModelOptionalExpand Create a Payment Method — response body — zip
mb_wayModelOptionalExpand Cancel a refund — response body — destination details p24
multibancoModelOptionalExpand Cancel a refund — response body — destination details p24
mx_bank_transferModelOptionalExpand Cancel a refund — response body — destination details p24
nz_bank_transferModelOptionalExpand Create a Payment Method — response body — zip
p24ModelOptionalExpand Cancel a refund — response body — destination details p24
paynowModelOptionalExpand Create a Payment Method — response body — zip
paypalModelOptionalExpand Cancel a refund — response body — destination details paypal
pixModelOptionalExpand Create a Payment Method — response body — zip
revolutModelOptionalExpand Create a Payment Method — response body — zip
scalapayModelOptionalExpand Create a Payment Method — response body — zip
sofortModelOptionalExpand Create a Payment Method — response body — zip
swishModelOptionalExpand Cancel a refund — response body — destination details blik
th_bank_transferModelOptionalExpand Cancel a refund — response body — destination details p24
twintModelOptionalExpand Create a Payment Method — response body — zip
typestringRequired within parentThe type of transaction-specific details of the payment method used in the refund (e.g., `card`). An additional hash is included on `destination_details` with a name matching this value. It contains information specific to the refund transaction.
Maximum length: 5000
us_bank_transferModelOptionalExpand Cancel a refund — response body — destination details p24
wechat_payModelOptionalExpand Create a Payment Method — response body — zip
zipModelOptionalExpand Create a Payment Method — response body — zip

Referenced models: Create a Payment Method — response body — zip, Cancel a refund — response body — destination details blik, Cancel a refund — response body — destination details p24, Cancel a refund — response body — destination details card, Cancel a refund — response body — destination details crypto, Cancel a refund — response body — destination details paypal

Cancel a refund — response body — destination details blik

FieldTypePresenceDescription and constraints
$objectRoot
network_decline_codeJSONOptional
network_decline_code (anyOf 1)stringAlternativeFor refunds declined by the network, a decline code provided by the network which indicates the reason the refund failed.
Maximum length: 5000
network_decline_code (anyOf 2)nullAlternative
referenceJSONOptional
reference (anyOf 1)stringAlternativeThe reference assigned to the refund.
Maximum length: 5000
reference (anyOf 2)nullAlternative
reference_statusJSONOptional
reference_status (anyOf 1)stringAlternativeStatus of the reference on the refund. This can be `pending`, `available` or `unavailable`.
Maximum length: 5000
reference_status (anyOf 2)nullAlternative

Cancel a refund — response body — destination details card

FieldTypePresenceDescription and constraints
$objectRoot
referencestringOptionalValue of the reference number assigned to the refund.
Maximum length: 5000
reference_statusstringOptionalStatus of the reference number on the refund. This can be `pending`, `available` or `unavailable`.
Maximum length: 5000
reference_typestringOptionalType of the reference number assigned to the refund.
Maximum length: 5000
typestringRequired within parentThe type of refund. This can be `refund`, `reversal`, or `pending`.
Known values: pending, refund, reversal

Cancel a refund — response body — destination details crypto

FieldTypePresenceDescription and constraints
$objectRoot
referenceJSONOptional
reference (anyOf 1)stringAlternativeThe transaction hash of the refund.
Maximum length: 5000
reference (anyOf 2)nullAlternative

Cancel a refund — response body — destination details p24

FieldTypePresenceDescription and constraints
$objectRoot
referenceJSONOptional
reference (anyOf 1)stringAlternativeThe reference assigned to the refund.
Maximum length: 5000
reference (anyOf 2)nullAlternative
reference_statusJSONOptional
reference_status (anyOf 1)stringAlternativeStatus of the reference on the refund. This can be `pending`, `available` or `unavailable`.
Maximum length: 5000
reference_status (anyOf 2)nullAlternative

Cancel a refund — response body — destination details paypal

FieldTypePresenceDescription and constraints
$objectRoot
network_decline_codeJSONOptional
network_decline_code (anyOf 1)stringAlternativeFor refunds declined by the network, a decline code provided by the network which indicates the reason the refund failed.
Maximum length: 5000
network_decline_code (anyOf 2)nullAlternative

Cancel a refund — response body — next action

FieldTypePresenceDescription and constraints
$objectRoot
display_detailsModelOptionalExpand Cancel a refund — response body — next action display details
typestringRequired within parentType of the next action to perform.
Maximum length: 5000

Referenced models: Cancel a refund — response body — next action display details

Cancel a refund — response body — next action display details

FieldTypePresenceDescription and constraints
$objectRoot
email_sentModelRequired within parentExpand Cancel a refund — response body — next action display details email sent
expires_atJSONRequired within parent
expires_at (anyOf 1)integerAlternativeThe expiry timestamp.
Format: unix-time
expires_at (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$

Referenced models: Cancel a refund — response body — next action display details email sent

Cancel a refund — response body — next action display details email sent

FieldTypePresenceDescription and constraints
$objectRoot
email_sent_atJSONRequired within parent
email_sent_at (anyOf 1)integerAlternativeThe timestamp when the email was sent.
Format: unix-time
email_sent_at (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
email_sent_tostringRequired within parentThe recipient's email address.
Maximum length: 5000

Cancel a refund — response body — presentment details

FieldTypePresenceDescription and constraints
$objectRoot
presentment_amountJSONRequired within parent
presentment_amount (anyOf 1)integerAlternativeAmount intended to be collected by this payment, denominated in `presentment_currency`.
presentment_amount (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
presentment_currencystringRequired within parentCurrency presented to the customer during payment.
Maximum length: 5000

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.