You can refund funds from your (merchant) bank account to customer accounts for:
- Successful payment or settlement transactions processed by Nuvei.
- Transactions not settled by Nuvei (unreferenced refunds).
Transactions Processed by Nuvei
To perform a refund for a successful payment or settlement processed by Nuvei using REST 2.0, send a POST /payments/{payment-id}/refunds
or /payments/{payment-id}/settles/{settle-id}/refunds
API request with its mandatory parameters and according to these instructions:
- Use the
paymentId
of the original payment or settlement transaction. - For settlements, use the
settleId
of the original settlement transaction. - The refund
amount
cannot exceed the original payment or settlementamount
. - The sum of the
amount
in this refund request plus all previous partial refund requests cannot exceed the original payment or settlementamount
. (This is one of the reasons why this method is unsuitable for refunding payouts and winnings.) - The refund request
currency
must match that of the original payment or settlement.
Example payments/{payment-id}/refunds
Request
{ "processingEntityId": "<your processingEntityId>", "amount": 0.5 }
refundId
appears in the response and is required if the merchant needs to void the refund.
Example payments/{payment-id}/refunds
Response
{ "refundId": "457801", "transactionId": "2110000000010755354", "amount": 0.5, "currency": "USD", "authCode": "348671", "result": { "status": "approved" } }
Unreferenced Refunds
Merchants can process unreferenced refunds for transactions not settled by Nuvei, with no need for a paymentId
. For example, when another PSP settled the original transaction, and the merchant is using Nuvei to process the refund.
To perform an unreferenced refund, send a POST /refunds
API request with its mandatory parameters and full credit card details.
Example /refunds
Request
{ "processingEntityId": "<your processingEntityId>", "merchantTransactionId": "<ID of the transaction in the merchant system>", "buyerId": "unique customer identifier in your system", "amount": 1.5, "currency": "USD", "buyerDetails": { "firstName": "John", "lastName": "Smith", "billingAddress": { "city": "Boston", "countryCode": "US" } }, "paymentOption": { "card": { "cardHolderName": "John Smith", "cardNumber": "5101081046006034", "expirationMonth": "12", "expirationYear": "2023" } } }
Example /refunds
Response
{ "refundId": 515021, "transactionId": "2110000000010953869", "amount": 1.5, "currency": "USD", "authCode": "492575", "result": { "status": "approved" } }