External Host Interface Integration Guide
10. Authorization Reversal Messages
Authorization reversal messages are identified using the original EHI fields included in the forwarded payload.
On this page
10.1 Applicable identifiers
Authorization reversal messages are identified using the original EHI fields included in the forwarded payload.
| Field | Expected value | Description |
|---|---|---|
MTID | 0400 or 0420 | Identifies the message as an authorization reversal. |
Txn_Type | D | Identifies the transaction as an authorization reversal. |
Token | Varies | Identifies the card token associated with the transaction. |
TXn_ID / Txn_ID | Varies | Identifies the EHI transaction message. |
traceid_lifecycle | Varies, when present | Helps match the reversal to the original authorization request. |
Auth_Code_DE38 | Varies, when present | May help match the reversal to the original authorization request. |
Trans_link | Varies, when present | May help match the reversal to the original authorization request. |
Txn_Amt | Varies | Helps determine whether the reversal is full or partial compared with the original authorization amount. |
Bill_Amt | Varies | May differ from the original authorization because of exchange rate fluctuations. |
SendingAttemptCount | Varies | May indicate repeated delivery attempts. |
10.5 Processing outcome
| Matching result or reversal condition | Required handling |
|---|---|
Original 0100 / A authorization found | Match the reversal to the original authorization and release or adjust the related blocked amount. |
Original 0100 / A authorization not found | Store the reversal as unmatched and process it according to your reconciliation or exception-handling rules. |
Txn_Amt in the reversal matches Txn_Amt in the original authorization request | Treat it as a full reversal and unblock the amount that was originally blocked. |
| Reversal amount is lower than the original authorization amount | Treat it as a partial reversal and adjust only the applicable remaining blocked amount. |
Related 0120 / J authorization advice was received before the reversal | Apply the block update from the advice before applying the reversal. |
| Reversal already processed | Do not apply balance, block, reserve, or ledger impact again. Return the same logical acknowledgement. |
10.6 Required response
Authorization reversal messages must be acknowledged.
For 0400 / D and 0420 / D, your system should return a successful acknowledgement when the reversal has been processed.
Acknowledgement: Required. Indicates that your system received and processed the reversal message.Responsestatus: Required. Indicates the reversal response status.
Typical reversal response values:
| Result | Acknowledgement | Responsestatus |
|---|---|---|
| Reversal processed successfully | 1 | 00 |
| Temporary processing issue / resend requested | 0 | 91, 92 or 96 |
If your system cannot process the reversal because of a temporary issue, such as a database connection failure that prevents updating outstanding blocks, your system may request the message to be resent using Acknowledgement=0 and Responsestatus=96. It is also allowed response codes 91, 92, or 96 for this resend scenario.
10.8 Response examples
Successful reversal response
{
"Acknowledgement": "1",
"Responsestatus": "00"
}Temporary issue / resend requested response
{
"Acknowledgement": "0",
"Responsestatus": "96"
}10.9 Implementation notes
- Authorization reversal messages should not be treated as new authorization requests.
0400 / Dand0420 / Dshould be treated the same in practice.- Authorization reversals should not be declined because they indicate that a reversal has already happened.
- Your system should check whether the reversal was already received and processed before applying any balance or block impact.
- Your system should match the reversal to the original
0100 / Aauthorization when possible. - If
Txn_Amtin the reversal matchesTxn_Amtin the original authorization request, treat it as a full reversal. - If
Bill_Amtdiffers from the original authorization, do not automatically treat that as a mismatch; it may differ because of exchange rate changes. - Your system should apply any related
0120 / Jauthorization advice block update before applying the reversal. - Your system should never unblock more than the amount currently blocked for the same transaction set.
- If
Auth_Code_DE38is 000000, treat it the same as blank for matching purposes. - If no matching authorization is found, store the reversal for reconciliation or exception handling.
Next steps
Continue to Financial / Presentment Messages.