Retrieves the details of an existing refund.
Parameters
No parameters.
Returns
Returns a refund if you provide a valid ID. Raises an error otherwise.
{ "id": "re_1Nispe2eZvKYlo2Cd31jOCgZ", "object": "refund", "amount": 1000, "balance_transaction": "txn_1Nispe2eZvKYlo2CYezqFhEx", "charge": "ch_1NirD82eZvKYlo2CIvbtLWuY", "created": 1692942318, "currency": "usd", "destination_details": { "card": { "reference": "123456789012", "reference_status": "available", "reference_type": "acquirer_reference_number", "type": "refund" }, "type": "card" }, "metadata": {}, "payment_intent": "pi_1GszsK2eZvKYlo2CfhZyoZLp", "reason": null, "receipt_number": null, "source_transfer_reversal": null, "status": "succeeded", "transfer_reversal": null}
Returns a list of all refunds you created. We return the refunds in sorted order, with the most recent refunds appearing first. The 10 most recent refunds are always available by default on the Charge object.
Parameters
- chargestring
Only return refunds for the charge specified by this charge ID.
- payment_
intentstring Only return refunds for the PaymentIntent specified by this ID.
More parameters
- createdobject
- ending_
beforestring - limitinteger
- starting_
afterstring
Returns
A dictionary with a data
property that contains an array of up to limit
refunds, starting after the starting_
refund. Each entry in the array is a separate Refund object. If no other refunds are available, the resulting array is empty. If you provide a non-existent charge ID, this call raises an error.
{ "object": "list", "url": "/v1/refunds", "has_more": false, "data": [ { "id": "re_1Nispe2eZvKYlo2Cd31jOCgZ", "object": "refund", "amount": 1000, "balance_transaction": "txn_1Nispe2eZvKYlo2CYezqFhEx", "charge": "ch_1NirD82eZvKYlo2CIvbtLWuY", "created": 1692942318, "currency": "usd", "destination_details": { "card": { "reference": "123456789012", "reference_status": "available", "reference_type": "acquirer_reference_number", "type": "refund" }, "type": "card" }, "metadata": {}, "payment_intent": "pi_1GszsK2eZvKYlo2CfhZyoZLp", "reason": null, "receipt_number": null, "source_transfer_reversal": null, "status": "succeeded", "transfer_reversal": null } ]}
Cancels a refund with a status of requires_
.
You can’t cancel refunds in other states. Only refunds for payment methods that require customer action can enter the requires_
state.
Parameters
No parameters.
Returns
Returns the refund object if the cancellation succeeds. This call raises an error if you can’t cancel the refund.
{ "id": "re_1Nispe2eZvKYlo2Cd31jOCgZ", "object": "refund", "amount": 1000, "balance_transaction": "txn_1Nispe2eZvKYlo2CYezqFhEx", "charge": "ch_1NirD82eZvKYlo2CIvbtLWuY", "created": 1692942318, "currency": "usd", "failure_balance_transaction": "txn_3MmlLrLkdIwHu7ix0uke3Ezy", "failure_reason": "merchant_request", "metadata": {}, "payment_intent": "pi_1GszsK2eZvKYlo2CfhZyoZLp", "reason": null, "receipt_number": null, "source_transfer_reversal": null, "status": "canceled", "transfer_reversal": null}
ConfirmationTokens help transport client side data collected by Stripe JS over to your server for confirming a PaymentIntent or SetupIntent. If the confirmation is successful, values present on the ConfirmationToken are written onto the Intent.
To learn more about how to use ConfirmationToken, visit the related guides:
Tokenization is the process Stripe uses to collect sensitive card or bank account details, or personally identifiable information (PII), directly from your customers in a secure manner. A token representing this information is returned to your server to use. Use our recommended payments integrations to perform this process on the client-side. This guarantees that no sensitive card data touches your server, and allows your integration to operate in a PCI-compliant way.
If you can’t use client-side tokenization, you can also create tokens using the API with either your publishable or secret API key. If your integration uses this method, you’re responsible for any PCI compliance that it might require, and you must keep your secret API key safe. Unlike with client-side tokenization, your customer’s information isn’t sent directly to Stripe, so we can’t determine how it’s handled or stored.
You can’t store or use tokens more than once. To store card or bank account information for later use, create Customer objects or External accounts. Radar, our integrated solution for automatic fraud protection, performs best with integrations that use client-side tokenization.