Refunds
POST /payment-refund refunds the full amount of an APPROVED payment, once.
{ "merchantIdentifier": "6c63548f-f85d-4e85-a15f-9edd60e6c8dc", "paymentUuid": "pay_8f2c1d0e5a7b" }Use the processor’s id (paymentUuid from the create response), not transactionUuid.
Response
Section titled “Response”{ "success": true, "message": "OK", "data": { "paymentUuid": "<refund record id>", "refundUuid": "<processor refund id>" } }success |
message |
Meaning |
|---|---|---|
true |
OK |
The refund completed immediately. |
true |
PENDING |
The processor accepted the refund and will settle it later (CyberSource does this). Follow it with a lookup or the postback (type: REFUND). Another refund of the same payment is refused until it settles. |
false |
ERROR |
The processor gave no outcome or rejected the refund. |
Refusals
Section titled “Refusals”| Status | Reason |
|---|---|
400 |
Payment is not APPROVED, is already refunded, a refund is in progress, or the processor does not support refunds |
404 |
No such payment for your merchant |
Not every processor supports refunds. The FTD processor does not, so test refunds against a processor that does.