Refund payments Copy section link Copied!
If the payment method used for the transaction was Card, you can refund the captured payment and return the funds to the shopper. The refund request must be made in the 75 days following the payment capture. The refund may be full or partial.
For payments that have yet not been Completed, you can Cancel it, in some cases, depending on the payment solution chosen.
In order to refund a payment, you must first make sure that:
- The initial payment operation status is cashed.
- The transaction status is completed.
- The payment split has already occurred.
- The total amount of the refund doesn't exceed the amount of the initial payment.
- In some rare cases, additional checks may be performed by the Payment Solution Providers and can lead to a refusal of the refund.
In order to refund a payment, the funds must be available in the accounts used for the refund ("status": "cashed"), and in your main marketplace account. A new breakdown of the payment must be given with the refund request.
The refund will be made using the same payment method that was used to initiate the payment. Please refer to each payment method section to learn more about its specifics.
Please refer to the process flows to understand when this operation is valid.
If you want to learn more about our payment process, you can read our Process payment section.
Refund a payment Copy section link Copied!
For every item in the breakdownList, the amount taken from the vendor is equal to the sum of the breakdown amount and the commission amount.
If the platform wants to cover a part or the entirety of the commission fees for the vendor, your breakdownList must contain 2 items :
- One item for the vendor with the corresponding amount
- One item for the platform, corresponding to the remaining amount
The total amount of the items must always be equal to the total refund amount.
From your server, make a /payin/refund request:
Example Copy section link Copied!
Here is a JSON payload example of a /payin/refund request:
{
"orderId": "14326513",
"transactionId": "123456789",
"transactionAmount": {
"value": "100",
"currency": "EUR"
},
"payer": {
"reference": "customer_1363"
},
"breakdownList": [
{
"label": "bdl1",
"sellerAccountNumber": "1300600000EUR01006110",
"amount": {
"value": "98.20",
"currency": "EUR"
},
"commission": {
"amount": "0.23",
"account": "1300600000EUR01004110"
}
},
{
"label": "bdl2",
"sellerAccountNumber": "1300600000EUR01004110",
"amount": {
"value": "1.80",
"currency": "EUR"
}
}
]
}
Retrieving the result Copy section link Copied!
In response to your request, you will receive a refundResponse object, including the following:
Example Copy section link Copied!
A successful JSON response payload will look like:
{
"resultCode": "0",
"orderId": "14326513",
"transactionId": "123456789",
"transactionList": [
{
"id": "123123123",
"status": "completed",
"amount": {
"value": "100",
"currency": "EUR"
},
"paymentMethodId": "002"
},
{
"id": "123123124",
"status": "refund",
"amount": {
"value": "100",
"currency": "EUR"
},
"paymentMethodId": "002"
}
]
}
If your request encountered an error, you can use the following codes for troubleshooting. You can also check these additional resources: