If you want to return the funds to your shopper, but are not certain whether the payment has been captured or not, use the Cancel or Refund functionality.
This will either:
- Cancel the payment – in case it has not yet been captured.
- Refund the payment – in case it has already been captured.
For Adyen for Platforms, the /cancelOrRefund endpoint does not accept split data, so you cannot provide split information for refunds. Instead of using this endpoint, we recommend that you check if the payment has been captured and make a corresponding /refund or /cancel call.
Do not use the /cancelOrRefund endpoint for payments that involve multiple partial captures.
Cancel or refund a payment
To issue a cancel or refund, make a request to the /cancelOrRefund endpoint. You need to specify:
merchantAccount
: The name of your merchant account that is used to process the payment.originalReference
: The originalpspReference
of the payment that you want to cancel or refund. This reference is returned in the response to your payment request, and in the AUTHORISATION notification.reference
: Optional Specifies a unique identifier for payment modification. Thereference
field is useful to tag a partial cancel or refund for future reconciliation.
{
"merchantAccount" : "YourMerchantAccount",
"originalReference" : "9313547924770610",
"reference" : "YourModificationReference"
}
You will receive a /cancelOrRefund
response containing:
pspReference
: The PSP reference associated with this/cancelOrRefund
request.
{
"pspReference" : "8863534564726784",
"response" : "[cancelOrRefund-received]"
}
CANCEL OR REFUND notification
To know whether your request to cancel or refund the payment was successful, you need to receive CANCEL_OR_REFUND notifications.
If you have enabled CANCEL_OR_REFUND notifications, we will send you a notification once we have processed your request to cancel or refund the payment. This notification contains:
eventCode
: CANCEL_OR_REFUND.originalReference
: the PSP reference of the original payment.pspReference
: thepspReference
from the reversal response.-
success
: indicates whether the request to reverse the payment was successful. Possible values:- true: your request was successful. The
modification.action
field shows whether the request produced a cancel or a refund. This depends on whether the original payment has already been captured. -
false: your request failed. The notification includes a
reason
field with a short description of the problem. Review the reason, fix the issue if possible, and resubmit the reversal request.
- true: your request was successful. The
{
"live":"false",
"notificationItems":[
{
"NotificationRequestItem":{
"additionalData":{
"modification.action": "refund"
},
"amount":{
"currency": "EUR",
"value": 1025
},
"eventCode":"CANCEL_OR_REFUND",
"eventDate":"2022-02-03T15:14:15.004Z",
"merchantAccountCode":"YOUR_MERCHANT_ACCOUNT",
"originalReference":"VK9DRSLLRCQ2WN82",
"paymentMethod":"mc",
"pspReference":"TF995R5G6L2GWR82",
"reason":"",
"success":"true"
}
}
]
}
For more information about the included fields, see the CANCEL_OR_REFUND notification reference.