EMV QR Hub
EMV QR Hub
Technical Guides

EMVCo QR Tags Explained

This is a practitioner map of root tags in Merchant-Presented Mode. For complete enumerations and language templates, use EMVCo’s QR specification. We are independent of EMVCo.

00 and 01

00 Payload Format Indicator: length 02, value 01 for current MPM. 01 Point of Initiation: 11 static, 12 dynamic.

26–51 Merchant Account Information

At least one template is required. Inner 00 is GUID. Remaining sub-tags are scheme-specific. Empty templates pass CRC and fail routing.

52, 53, 54

52 MCC four digits. 53 numeric ISO 4217. 54 amount when the transaction is priced in the payload.

58, 59, 60, 61

58 ISO country alpha-2. 59 name max 25. 60 city max 15. 61 postal optional.

62 and 63

62 additional data (bill number, mobile, loyalty) as inner TLV. 63 CRC last. Nothing should follow 63.

How to inspect

The decoder lists these tags from a live scan. Compare against this list before you file a wallet bug.

Tag 52 MCC pitfalls

0000 and 9999 look like placeholders and get rejected in some certs. Use the MCC on the merchant file. Food delivery versus grocery is not a cosmetic choice; it can change scheme fees.

Tag 58 versus Tag 53

Country IN plus currency 764 is a red flag unless you have a documented multi-currency product. Most domestic QR is country and currency aligned (TH/764, SG/702, IN/356).

Tag 59 presentation

Wallets show Tag 59 to humans. “TEST” or “EMVQRHUB” on a live counter is how overlay fraud is missed. Use the fascia name, abbreviated to 25 characters.

Unreserved templates

Some markets use additional root templates for local data. If you do not understand a tag, do not drop it on round-trip encode — dropping can change CRC and break a scheme that required it.

See also

Payload structure for order, ISO 4217 for Tag 53, Point of Initiation for Tag 01, cookbook for full strings.

Tag 00 and Tag 01 as product bits

Tag 00 value 01 is the current payload format indicator for MPM as commonly implemented. If it is missing or not 01, many wallets will not start. Tag 01 is Point of Initiation: 11 reusable, 12 one-time. It is not a slogan and it is not inferred from whether a printer or a screen showed the code. Wrong 01 is a product bug that wallets handle inconsistently.

Read the dedicated Point of Initiation article before you ship billed QR. This page will not repeat that bit table in full; it will keep pointing at the coupling with Tag 54.

MAI templates 26–51 are where money is aimed

At least one Merchant Account Information template is mandatory. Inner 00 is the GUID the network documents. Other inner tags are account proxies. Inventing a GUID from another country because a sample used it is how you get CRC-valid stickers that no local app will pay. Production GUIDs come from the acquirer or scheme, never from this cookbook.

Do not put the same account id in two MAI templates “for luck.” Duplicate destinations are undefined. If you need dual presentment, print two symbols with two honest payloads, or follow the scheme’s dual-QR rules.

Identity tags that humans actually read

Tag 59 (name, commonly max 25) is what the wallet shows the customer. TEST and EMVQRHUB on a live counter are how overlay fraud is missed. Use the fascia name. Tag 60 (city, commonly max 15) should match how the shop is known, not a marketing region. Tag 58 is ISO 3166-1 alpha-2 (IN, TH, SG), never INDIA. Tag 52 is a four-digit MCC from the merchant file — 0000 and 9999 look like placeholders and fail some certs.

Tag 53 is numeric ISO 4217 (356, not INR). Tag 54 is the amount, present for billed 12-codes, absent for classic 11 stickers. Tag 61 postal code is optional. Tag 62 additional data is optional on stickers and often required for billed recon. Tag 63 CRC is last.

Unreserved and language templates

Some markets emit extra root templates. If you do not understand a tag, do not drop it on round-trip encode: dropping changes CRC and can break a scheme that required it. Tag 64 language templates should be omitted if you are not localizing the payload; empty ones waste bytes and confuse parsers that expect inner tags.

Inspect a live string in Decode rather than memorizing IDs. Then confirm against EMVCo QRCPS and your scheme guide. We implement the fields the studio exposes; we do not publish the specification.

A practical inspection order

When a payment fails, read in this order: CRC, Tag 00/01, Tag 53 type, Tag 54 versus 01, MAI GUID, Tag 59/60 lengths, then 62. That order matches how often the defect is fatal. Country/currency mismatch (IN with 764) is a red flag unless you have a documented multi-currency product.

See also: payload format for order, ISO 4217 for Tag 53, cookbook for full strings, common errors for the hall of fame. Tools: /emv/ and /decode/.

Field cheat sheet for support

CRC → integrity. 01 → typed vs locked amount. 53 → numeric currency. 59 → name on pay screen. MAI → destination. When a ticket arrives, read those five before touching MCC or city. Everything else is secondary for first-line support.

Tag 62 sub-tags in recon

Bill number, mobile, store label, loyalty id — whichever sub-tags your scheme uses, agree with finance which one appears on the settlement file. Tags explain bytes; finance explains which byte they reconcile. Omit unused 62 inner tags rather than stuffing placeholders.

Explore Related Guides

EMV QR Generator
Create merchant-presented EMV QR payment payloads.
QR Parser & Decoder
Decode QR payloads and inspect EMV tags.
Legal Disclaimer:EMV QR Hub is a technical utility. We do not process financial transactions or store sensitive payment data. Not affiliated with EMVCo, LLC.