Refund a paid purchase
Will generate a Payment object and return it as a successful response.
Optional amount
argument can be included in the request body to request a partial refund.
Consult refund_availability
field on Purchase on details whether this Purchase can be refunded or not.
If this operation takes too long to be processed on the acquirer side - you will get a response with status code 200 and a Purchase object having status
= pending_refund
in body (you will receive a corresponding Webhook callback too for a purchase.pending_refund
event). To be notified of a successful operation completion, please subscribe to payment.refunded
callback event - it will deliver a Payment generated by this refund.
If refund fails due to payment processing error, you will receive HTTP response code 400 with error code purchase_refund_error
. In this case, to get more details about the error, you should perform a GET /purchase/
request for the Purchase you tried to refund. In transaction_data.attempts[]
array (newest element first) you’ll find the corresponding attempt with error code and description in .error
parameter.
Authorizations
Bearer authentication header of the form Bearer <token>
, where <token>
is your auth token.
Path Parameters
Object ID (UUID)
Body
Amount to refund in minor units of the purchase's currency - e.g. 100
for €1.00. Should not be more than Purchase.refundable_amount
.
Optional; if not provided, a full refund will be executed. See the description for Purchase.refund_availability
field.
Response
A record of a performed financial transaction. Can be generated e.g. as a result of refund operation.
Object type identifier
Object creation time
Object last modification time
Contains details about the client of a purchase or payment - the remote payer/fund recipient party.
Details of an executed transaction. Read-only for Purchase
s and Payout
s. For an unpaid Purchase
, this object will be null
.
Payment method-specific, read-only, internal transaction data. Will contain information about all the transaction attempts, if available.
The object type and id this object is related to, if any. E.g. refund Payments are related to a specific Purchase, so this object will contain type: purchase
and id: <purchase's id>
.
If an explicit invoice reference
wasn't provided, this autogenerated value will be used as a reference instead.
Invoice reference.
128
ID of an account this Payment is associated with.
Indicates this is a test object, created using test API keys or using Billing section of UI while in test mode.
ID of user who has created this object in the Billing UI, if applicable.
ID of the brand this Payment is associated with.