Refunding a transaction returns the money to the customer. You can perform either a partial or full refund on transaction. Only transactions that have already been settled can be refunded. For transactions that have not been settled, you may only perform a void on them, if required. For more information, see the Void Transaction page.
Back Office UI
On the Back Office UI, refunding a transaction can only be performed by users with a Manager or Admin role.
Refund a Transaction
- Click the Payments menu item.
- Click the Transactions tab.
- Select the settled transaction that you want to refund. The corresponding transaction info appears.
- Click the Issue Refund button. The Issue Refund window appears.
- Enter the Amount to be refunded to the customer.
- Review the customer's Email where the receipt will be sent and edit, if required. Note that this will not update the email on the customer's record.
- To email the receipt, select the Email Receipt checkbox. The Email field will be required if this is selected.
- Click the Process Refund button to proceed.
Refund a Transaction from a Customer's Profile
- Click the Customers menu item.
- Select the customer associated with the transaction. The corresponding customer profile appears.
- In the Transaction History section, select the settled transaction that you want to refund. The corresponding transaction info appears.
- See steps 4 to 8 under Refund a Transaction section.
API Integration
Converge API Resource: Transactions
Create Transaction
- Send a Create Transaction POST request to the /transactions endpoint.
- In your request, set the following parameters:
- type - The transaction type. This is required. Set this field to "refund".
- total - The total amount of the transaction. This is only required when processing a partial refund. It contains the fields below.
- amount - The actual value of the transaction. This is required.
- currencyCode - The ISO 4217 three-letter currency code. This is required.
- parentTransaction - The transaction resource URL. This is required.
- shopperInteraction - The type of interaction with the customer that generated this transaction. Valid values are the following: ecommerce (default), mailOrder, telephoneOrder, merchantInitiated.
- Wait for the response from the /transactions endpoint. In the response, take note of the following:
- id - The transaction resource ID. This is used for retrieving and updating the transaction.
- href - The transaction resource URL.
- isAuthorized - Indicates whether the transaction is authorized. Refunds are authorized by the gateway.
Examples
The following is an example of a JSON request for a partial refund.
POST "https://uat.api.converge.eu.elavonaws.com/transactions"
{
"type": "refund",
"total": {
"amount": "5.00",
"currencyCode": "EUR"
},
"parentTransaction": "https://uat.api.converge.eu.elavonaws.com/transactions/8vdmrrrdkthfgkvqwpvjwcrvh82k",
"shopperInteraction": "telephoneOrder"
}
The following is an example of a successful JSON response to the request above.
{ "href": "https://uat.api.converge.eu.elavonaws.com/transactions/xcypyjjfdwjm8djh3rwc7hkftmb2", "id": "xcypyjjfdwjm8djh3rwc7hkftmb2", "createdAt": "2022-04-05T15:38:48.656Z", "modifiedAt": "2022-04-05T15:38:48.656Z", "type": "refund", "source": "directApiCall", "merchant": "https://uat.api.converge.eu.elavonaws.com/merchants/XrDXRBh9YHxwqQTj2Cmq7j49", "processorAccount": "https://uat.api.converge.eu.elavonaws.com/processor-accounts/KmvmfQJpCBJpXHyP2kgrK2hD", "account": "https://uat.api.converge.eu.elavonaws.com/accounts/XrDXRBh9YHxwqQTj2Cmq7j49", "total": { "amount": "5.00", "currencyCode": "EUR" }, "totalRefunded": null, "issuerTotal": null, "conversionRate": null, "markupRate": null, "markupRateAnnotation": null, "parentTransaction": "https://uat.api.converge.eu.elavonaws.com/transactions/8vdmrrrdkthfgkvqwpvjwcrvh82k", "description": null, "shopperStatement": null, "debtorAccount": null, "customReference": null, "shopperReference": null, "processorReference": null, "issuerReference": null, "orderReference": null, "shopperInteraction": "telephoneOrder", "shopper": null, "shipTo": null, "shopperEmailAddress": null, "shopperIpAddress": null, "shopperLanguageTag": null, "shopperTimeZone": null, "order": null, "subscription": null, "credentialOnFileType": null, "credentialOnFileData": null, "card": { "holderName": "John Doe", "panToken": { "token": "9515518362523384508", "provider": "ELAVON_C2_V1", "type": "pan" }, "panFingerprint": "brwmhqf8m7q49xc9wfg6t32hbhxm", "expirationMonth": 1, "expirationYear": 2025, "billTo": null, "maskedNumber": "XXXX.XXXX.XXXX.1251", "last4": "1251", "bin": "510008", "scheme": "MasterCard", "brand": "MasterCard Credit", "fundingSource": "credit", "issuingBank": "INTERNATIONAL CARD SERVICES BV", "issuingCountry": "NLD", "issuingCurrency": "EUR", "isDebit": "false", "isCorporate": "false", "isDccAllowed": "true" }, "paymentLink": null, "paymentSession": null, "createdBy": null, "modifiedBy": null, "isHeldForReview": false, "doCapture": true, "doSendReceipt": true, "isAuthorized": true, "authorizationCode": null, "verificationResults": null, "state": "authorized", "batch": null, "customFields": null, "relatedTransactions": [ ], "failures": [ ], "history": [ ] }
For more request and response examples, and for the complete and detailed list of parameters, see the Transactions resource.