Refund a Payment
This section describes how to issue a refund.
Endpoints
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/refundsTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/refundsThe is the request ID
contained in the original transaction request.
{id}
Response Statuses
Cybersource
responds to your request with one of these possible statuses
in the status
response field.- FAILED: The request is not successful due to the PPRO supported payment method declining the request. Send a new refund request.
- INVALID_REQUEST: The request is not successful due to invalid information in the request. Send a new sale request.
- PENDING_FUNDS: The request is not successful due to either a financial limitation, legal restriction, or operational reason, such as money-holding regulations or anti-money laundering (AML) regulations. Send a new refund request.
- REFUNDED: The request is successful and the refund is complete. No further action is needed.
- SERVER_ERROR: The request is not successful due to a system timeout error. Resend the refund request.
Required Fields for Refunding a Payment
- clientReferenceInformation.originalTransactionId
Optional Fields for Refunding a Payment
Example: Requesting an iDEAL Refund
Request
1234567891011121314151617{"orderInformation": { "amountDetails": { "totalAmount": "45.00", "currency": "EUR" } }, "clientReferenceInformation": { "originalTransactionId": "2376538903" }, "paymentInformation": { "paymentType": { "name": "bankTransfer", "method": { "name": "ideal" } } }}
Response to a Successful Request
1234567{"processorInformation": { "transactionId": "1319551320" }, "message": "Successful", "status": "REFUNDED", "id": "7395660749286003504805", "submitTimeUtc": "2025-02-14T20:47:55Z"}