AIP Decoder
Paste an AIP (tag 82) and see what the card supports: SDA, DDA, CDA, cardholder verification and issuer authentication.
Runs entirely in your browser. Nothing you paste is uploaded, logged or stored.
Application Interchange Profile (tag 82)
What the card application is capable of. The terminal reads this early and uses it to decide which offline data authentication method to attempt and whether to run cardholder verification at all.
Application Interchange Profile bit table (tag 82)
2 bytes, 4 hex characters. Byte 1 is the leftmost, and b8 is the most significant bit of each byte.
Byte 1
| Bit | Hex | Meaning when set |
|---|---|---|
| b8 | 80 | Reserved for future use |
| b7 | 40 | SDA supported Static Data Authentication. Legacy; cloneable, so schemes have been retiring it. |
| b6 | 20 | DDA supported Dynamic Data Authentication. |
| b5 | 10 | Cardholder verification is supported |
| b4 | 08 | Terminal risk management is to be performed |
| b3 | 04 | Issuer authentication is supported The card can process EXTERNAL AUTHENTICATE / ARPC. |
| b2 | 02 | On-device cardholder verification is supported CDCVM: phone or watch unlock counts as the CVM. |
| b1 | 01 | CDA supported Combined DDA / Application Cryptogram Generation. The strongest of the three. |
Byte 2
| Bit | Hex | Meaning when set |
|---|---|---|
| b8 | 80 | EMV mode supported (contactless) The Mastercard contactless kernel (EMV Book C-2) uses this bit to say the card supports EMV mode. Other kernels may read it differently. |
| b7 | 40 | Reserved for future use |
| b6 | 20 | Reserved for future use |
| b5 | 10 | Reserved for future use |
| b4 | 08 | Reserved for future use |
| b3 | 04 | Reserved for future use |
| b2 | 02 | Reserved for future use |
| b1 | 01 | Relay resistance protocol supported Mastercard contactless kernel (EMV Book C-2). |
Other fields: TVR decoder , TSI decoder , 9F33 decoder , 9F34 decoder , TTQ decoder , and the rest (AUC, CID, 9F40, 9F35, CTQ) in the bit field decoder .
What the AIP says
The Application Interchange Profile is tag 82, two bytes, and it is the card
describing its own application. The card returns it in the response to GET PROCESSING OPTIONS,
together with the Application File Locator, so it is one of the first things the terminal
learns. Byte 1 covers the contact functions: which offline data authentication methods the
card supports, whether cardholder verification is supported, whether terminal risk management
is to be performed, and whether the card can authenticate the issuer.
How the terminal uses it
For offline data authentication the terminal takes the strongest method that both sides support: CDA, then DDA, then SDA. The card's side of that is AIP byte 1 b1, b6 and b7, and the terminal's side is byte 3 of Terminal Capabilities. If they have nothing in common, no authentication runs and the terminal sets byte 1 b8 of the TVR.
If b5, cardholder verification, is clear, the terminal skips the CVM List entirely. That is the first thing to check when a card that should ask for a PIN never does.
Values you will see often
3900 is DDA, cardholder verification, terminal risk management and CDA: a current
contact chip card. 5800 swaps the dynamic methods for SDA, which marks an older
card. 1800 has cardholder verification and terminal risk management and no
offline authentication at all, so the card expects to go online every time.
Byte 1 b3, issuer authentication, says the card supports EXTERNAL AUTHENTICATE. A card with it clear can still check the ARPC inside the second GENERATE AC, so a clear bit does not mean the issuer's response goes unverified.
Byte 2 belongs to the kernels
In the contact specification byte 2 is reserved. Contactless kernels assign bits in it, and they do not agree with each other. The readings here for byte 2 are the Mastercard kernel's (EMV Book C-2): b8 for EMV mode and b1 for the relay resistance protocol. Under another kernel, treat a set bit in byte 2 as unresolved until you have that kernel's specification in front of you.
Why issuers care about the exact value
The AIP is in the data set EMV Book 2 recommends for the application cryptogram. An issuer host that validates an ARQC with a different AIP from the one the card used gets a cryptogram failure, and the cause is a profile mismatch, not a bad key. When ARQC validation fails for one card product only, compare the AIP in DE 55 with the one in the issuer's card profile.
More EMV chip tools
All EMV chip toolsTLV parser
Paste BER-TLV hex and get a decoded tag tree with EMV names, formats and nested templates.
Bit fields
Decode TVR, TSI, AIP, AUC, CID, CVM Results, Terminal Capabilities and the contactless qualifiers.
TVR decoder
Paste a TVR (tag 95) and see which of its 40 bits are set, with the full bit table underneath.
TSI decoder
Paste a TSI (tag 9B) and see which processing steps the terminal says it performed.
9F33 decoder
Paste Terminal Capabilities (tag 9F33) and see how the terminal reads cards, which CVMs it offers and which offline authentication it supports.
9F34 decoder
Paste CVM Results (tag 9F34) and see which method the terminal performed, under which condition, and whether it succeeded.
TTQ decoder
Paste a TTQ (tag 9F66) and see what the contactless reader told the card about its capabilities and requirements.
IAC vs TVR
Compare a TVR against the Issuer Action Codes to see exactly which bit forced the decline or the go-online.
CVM list
Break tag 8E into its X and Y amounts and the cardholder verification rules, in priority order.
Status words
What 9000, 6A82, 6985 and the rest of SW1SW2 actually mean.
AID lookup
Application identifiers to scheme and product: A0000000031010 and friends.
EMVCo QR
Decode a merchant-presented QR payload and verify its CRC.