Refund a payment
Issue a full or partial refund for a previously settled payment. By default, the full amount will be refunded unless a specific amount is provided for a partial refund. If the payment was partially captured multiple times, you can specify which capture to refund by using the transaction event ID. Refer to the `transactions.events` array in the payment object to find available transaction event IDs (when the appropriate `expand` parameter is passed). When specifying a transaction event ID, the refund amount should not exceed the amount captured in that event. If no refund amount is provided, it defaults to the amount captured in that specific event.
Path parameters
ID of payment to refund.
Headers
Optional key to make the request idempotent. Enables a safe retry of a request without risking the user being charged or refunded multiple times. The idempotency key must be generated by the client and needs to be unique for every new request.
Specifies the version of the API to use. This must be set to 2.4.
Request body
Example request
{
"amount": 42,
"orderId": "order-1234-refund",
"reason": "Customer returned order #1234."
}Response
Successful Response
Example response
{
"transactions": [
{
"reason": "Item returned.",
"events": [
{
"id": "46d25279-9d36-4237-8f45-2dc4e4e262d6",
"processorEventId": "30B258847H402782C",
"date": "2025-01-22T13:39:18.992928",
"type": "CAPTURE_SUCCEEDED",
"amount": 1234
}
]
}
],
"riskData": {
"fraudChecks": {
"source": "FRAUD_PROVIDER"
},
"cvvCheck": {
"source": "PROCESSOR"
},
"avsCheck": {
"source": "PROCESSOR"
}
}
}Changes
No recorded changes to this endpoint across all 1 revision of this API.