Timeout Authorization Reversals
When you do not receive a response message after sending an authorization request, this feature enables you to reverse the authorization that you requested.
Include the clientReferenceInformation.transactionId field in the original request for an authorization. The value of the merchant transaction ID must be unique for 180 days.
When the original transaction fails, the response message for the reversal request includes these fields:
reversalAmountDetails.originalTransactionAmountprocessorInformation.responseCode
Supported Processors
- American Express Direct
- Chase Paymentech Solutions
- Chase Tandem
- eftpos
- Elavon Americas
- FDC Nashville Global
- National Payment Gateway
- OmniPay Direct
- Rede
- SIX
- Chase Paymentech Solutions
- Elavon Americas
- FDC Nashville Global
- GPX
Requirements
Unless your processor supports authorization reversal after void (ARAV), time-out authorization reversals are supported only for authorizations that have not been captured and settled.
Endpoints
POST /pts/v2/reversals
POST /pts/v2/reversals
POST /pts/v2/reversals
Example
Standard Example
{ "clientReferenceInformation": { "transactionId": "987654321" }, "reversalInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "ABC" }, "reason": "testing" }}{ "_links" : { "self" : { "method" : "GET", "href" : "/pts/v2/reversals/6869460219566537303955" } }, "clientReferenceInformation" : { "code" : "RTS-Auth-Reversal" }, "id" : "6869460219566537303955", "orderInformation" : { "amountDetails" : { "currency" : "ABC" } }, "processorInformation" : { "responseCode" : "200" }, "reconciliationId" : "82kBK3qDNtls", "reversalAmountDetails" : { "reversedAmount" : "100.00", "currency" : "ABC" }, "status" : "REVERSED", "submitTimeUtc" : "2023-06-16T20:07:02Z"}eftpos Example
{ "clientReferenceInformation": { "code": "Purchase_A61_050", "partner": { "developerId": "eftPOS", "solutionId": "CNP" }, "applicationUser": "eftPOS" }, "processingInformation": { "commerceIndicator": "internet", "capture": "true" }, "orderInformation": { "billTo": { "country": "AU", "lastName": "VDP", "address2": "Address 2", "address1": "123 Collins St", "postalCode": "3000", "locality": "Melbourne", "administrativeArea": "VI", "firstName": "CYBS", "phoneNumber": "3-9657-1234", "district": "VI", "buildingNumber": "123", "company": "Visa", "email": "[email protected]" }, "amountDetails": { "totalAmount": "182.71", "currency": "aud" } }, "paymentInformation": { "card": { "expirationYear": "2025", "number": "CARD_NUMBER", "expirationMonth": "12", "type": "070" } }}{ "id": "7089500533786585703091", "submitTimeUtc": "2024-02-26T12:21:13Z", "status": "SERVER_ERROR", "reason": "SERVER_TIMEOUT", "message": "Error - The request was received but there was a server timeout. This error does not include timeouts between the client and the server."}Required Fields
These fields are required to submit a time-out authorization reversal request.
Default Required Fields
| Field | Description |
|---|---|
clientReferenceInformation.transactionId | Identifier that links the reversal request to the original request. |
reversalInformation.amountDetails.currency | — |
reversalInformation.amountDetails.totalAmount | The amount of the reversal must be the same as the authorization amount that was included in the authorization response message. Do not use the amount that was requested in the authorization request message. |
reversalInformation.reason | — |
Processor-Specific Required Fields
These fields are required for the eftpos processor.
| Field | Description |
|---|---|
clientReferenceInformation.applicationUser | Set the value to eftPOS. |
clientReferenceInformation.code | Order reference or tracking number. Provide a unique value for each transaction so that you can perform meaningful searches for the transaction. |
clientReferenceInformation.partner.developerId | Set the value to eftPOS. |
clientReferenceInformation.partner.solutionId | Set the value to CNP. |
orderInformation.billTo.address1 | — |
orderInformation.billTo.address2 | — |
orderInformation.billTo.administrativeArea | — |
orderInformation.billTo.country | — |
orderInformation.billTo.email | — |
orderInformation.billTo.firstName | — |
orderInformation.billTo.lastName | — |
orderInformation.billTo.locality | — |
orderInformation.billTo.phoneNumber | — |
orderInformation.billTo.postalCode | — |
paymentInformation.card.expirationMonth | — |
paymentInformation.card.expirationYear | — |
paymentInformation.card.number | — |
processingInformation.capture | Set the value to true. |
processingInformation.commerceIndicator | Set the value to internet. |
Thanks for your feedback!
Last published: September 29, 2026