What does TVR mean?
TVR: Terminal Verification Results (Tag 95). List of outcomes involving the transaction.
Tag 95 (TVR) contains five bytes of information about the transaction. Each bit is a single fact about the transaction. All zero bits is generally a clean bill of health and means the transaction is capable, in theory, of being approved offline (without contacting the issuer). However, the bits do not govern the final authorization decision (which rests with the card, if a second Gen AC was requested).
The list of bit flags is shown below.
Terminal Verification Results (Tag 95)
Byte 1:
1------- Offline data authentication was not performed
-1------ SDA failed
--1----- ICC data missing
---1---- Card appears on terminal exception file
----1--- DDA failed
-----1-- CDA failed
------1- SDA selected
-------X RFU
Byte 2:
1------- ICC and terminal have different application versions
-1------ Expired application
--1----- Application not yet effective
---1---- Requested service not allowed for card product
----1--- New Card
-----X-- RFU
------X- RFU
-------X RFU
Byte 3:
1------- Cardholder verification was not successful
-1------ Unrecognised CVM
--1----- PIN Try Limit exceeded
---1---- PIN entry required and PIN pad not present or not working
----1--- PIN entry required, PIN pad present, but PIN was not entered
-----1-- Online PIN entered
------X- RFU
-------X RFU
Byte 4:
1------- Transaction exceeds floor limit
-1------ Lower consecutive offline limit exceeded
--1----- Upper consecutive offline limit exceeded
---1---- Transaction selected randomly for online processing
----1--- Merchant forced transaction online
-----X-- RFU
------X- RFU
-------X RFU
Byte 5:
1------- Default TDOL used
-1------ Issuer authentication failed
--1----- Script processing failed before final GENERATE AC
---1---- Script processing failed after final GENERATE AC
----X--- RFU
-----X-- RFU
------X- RFU
-------X RFU
If you have tag 95 from a transaction, you can parse the bit values manually (as above) or put the whole TLV into the Parsomatic tool and check the TLVs Only checkbox to get a verbose parsing.
See also: