EMVCo MPM Compliance Reference
Every Compliant / Non-compliant / Compliant with warnings verdict on EMV QR Hub cites these rules. Open a finding’s reference link to land on the matching section below.
Official sources
Specification: EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020).
Official EMVCo page (QR Codes & Self-Evaluation Tools): emvco.com/emv-technologies/qr-codes.
Disclaimer: EMV QR Hub is not affiliated with EMVCo. Passing our test does not constitute EMVCo certification or self-evaluation approval.
About this reference
This page documents the rules EMV QR Hub applies when it reports Compliant, Compliant with warnings, or Non-compliant. The governing specification is EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020). We cite section and table numbers so you can verify them in your own copy of the EMVCo document. EMVCo also publishes Self-Evaluation Tools for Merchant-Presented QR Codes — that is the bar our decoder aims at. This site is an independent, spec-based checker and is not EMVCo certification.
Mandatory data objects
EMVCo MPM requires Tag 00 (Payload Format Indicator = 01), at least one Merchant Account Information template in IDs 02–51, Tag 52 (MCC), Tag 53 (currency, ISO 4217 numeric), Tag 58 (country, ISO 3166-1 alpha-2), Tag 59 (merchant name ≤25), Tag 60 (merchant city ≤15), and Tag 63 (CRC) as the last data object. Missing any of these yields a Non-compliant finding.
| Rule ID | Citation |
|---|---|
| MPM-M-00 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Table 4.3 — Tag 00 mandatory |
| MPM-M-MAI | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Table 4.3 — ≥1 Merchant Account Information (02–51) |
| MPM-M-52 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Table 4.3 — Tag 52 mandatory |
| MPM-M-53 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Table 4.3 — Tag 53 mandatory |
| MPM-M-58 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Table 4.3 — Tag 58 mandatory |
| MPM-M-59 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Table 4.3 — Tag 59 mandatory |
| MPM-M-60 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Table 4.3 — Tag 60 mandatory |
| MPM-M-63 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Table 4.3 — Tag 63 mandatory and last |
Fixed and maximum lengths
Fixed lengths: 00=02, 01=02, 52=04, 53=03, 55=02, 58=02, 63=04. Maximum lengths include 54≤13, 57≤05, 59≤25, 60≤15, 61≤10, MAI GUID (00)≤32, and Tag 62 sub-tags ≤25. Exceeding a cap is a compliance error.
| Rule ID | Citation |
|---|---|
| MPM-LEN-00 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 00 length = 02 |
| MPM-LEN-01 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 01 length = 02 |
| MPM-LEN-52 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 52 length = 04 |
| MPM-LEN-53 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 53 length = 03 |
| MPM-LEN-54 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 54 max length 13 |
| MPM-LEN-55 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 55 length = 02 |
| MPM-LEN-56 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 56 max length 13 |
| MPM-LEN-57 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 57 max length 05 |
| MPM-LEN-58 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 58 length = 02 |
| MPM-LEN-59 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 59 max length 25 |
| MPM-LEN-60 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 60 max length 15 |
| MPM-LEN-61 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 61 max length 10 |
| MPM-LEN-62 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.4 — Tag 62 / sub-tags max length 25 |
| MPM-LEN-63 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 63 length = 04 |
Value domains and formats
Tag 00 must be 01. Tag 01 must be 11 (static) or 12 (dynamic). Tag 55 must be 01, 02, or 03 when present. Numeric tags (52, 53) must be digits. Tag 58 must be two letters. Amounts (54, 56) and percentages (57) must use a valid decimal format. Tag 63 must be four hexadecimal digits.
| Rule ID | Citation |
|---|---|
| MPM-FMT-00 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 00 value must be 01 |
| MPM-FMT-01 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 01 ∈ {11, 12} |
| MPM-FMT-52 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 52 numeric (ISO 18245) |
| MPM-FMT-53 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 53 numeric (ISO 4217) |
| MPM-FMT-54 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 54 amount format |
| MPM-FMT-55 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 55 ∈ {01, 02, 03} |
| MPM-FMT-56 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 56 amount format |
| MPM-FMT-57 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 57 percentage format |
| MPM-FMT-58 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 58 ISO 3166-1 alpha-2 |
Conditional rules
When Point of Initiation is 12 (dynamic), Tag 54 (amount) is required. When Tag 55 = 02, Tag 56 (fixed fee) is required. When Tag 55 = 03, Tag 57 (percentage fee) is required. Presence of an amount with POI 11 is reported as a warning.
| Rule ID | Citation |
|---|---|
| MPM-COND-54 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 54 required when POI = 12; POI should be 12 when 54 present |
| MPM-COND-56 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 56 required when Tag 55 = 02 |
| MPM-COND-57 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 57 required when Tag 55 = 03 |
Structural rules
Payloads must be well-formed TLV. Duplicate root IDs are forbidden. Tags 65–79 are RFU for EMVCo. Tag 63 must be last; trailing data after the CRC is an error. Nested templates (26–51, 62, 64, 80–99) must also be well-formed — corrupt interiors are no longer ignored.
| Rule ID | Citation |
|---|---|
| MPM-STRUCT-63-LAST | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tag 63 must be the last data object |
| MPM-STRUCT-DUP | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.2 — Duplicate root IDs are not permitted |
| MPM-STRUCT-RFU-ROOT | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Tags 65–79 RFU for EMVCo |
| MPM-STRUCT-TLV | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.2 — TLV structural integrity |
CRC integrity
Tag 63 carries a CRC-16/CCITT-FALSE checksum computed over the payload through the characters 6304 (inclusive of the tag and length). EMV QR Hub hashes UTF-8 bytes so non-Latin-1 characters in String-format fields (e.g. Tag 64) do not corrupt the checksum.
| Rule ID | Citation |
|---|---|
| MPM-FMT-63 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Annex — Tag 63 four hex digits |
| MPM-STRUCT-CRC | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 / Annex — CRC-16/CCITT-FALSE over payload through 6304 |
Merchant Account Information GUID
Each MAI template should include sub-tag 00 (Globally Unique Identifier), ANS ≤32 — and it is the only mandatory sub-tag inside the template. Sub-tags 01–99 (merchant ID, Terminal / Till ID, and so on) are defined by each payment network, so they stay optional. Spec-legal GUID values are an Application Identifier (AID, hex) such as A000000677010111, or a reverse domain name such as com.merchant.name. Human-readable labels like "UPI" alone are not GUID-shaped and produce a warning. Domain-based GUIDs must be written in reverse order: a scheme whose website is airtel.co.in becomes in.co.airtel (optionally with a product suffix, in.co.airtel.money), never www.airtel.co.in. A GUID that still reads forward — it starts with www. or ends in a real top-level domain — raises a warning so the value can be corrected before it reaches a live acceptance device.
| Rule ID | Citation |
|---|---|
| MPM-LEN-MAI-00 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — MAI sub-tag 00 (GUID) max length 32 |
| MPM-MAI-00 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — MAI templates require sub-tag 00 (GUID) |
| MPM-MAI-GUID | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — GUID is an AID or reverse domain name |
| MPM-MAI-GUID-REVERSE | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Domain-based GUIDs must be reversed |
Payment-system ID allocation (02–51)
02–03 Visa · 04–05 Mastercard · 06–08 RFU EMVCo · 09–10 Discover · 11–12 American Express · 13–14 JCB · 15–16 UnionPay · 17–25 RFU EMVCo · 26–51 other payment systems / national schemes. RFU IDs must not be used.
| Rule ID | Citation |
|---|---|
| MPM-MAI-ALLOC | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.3 — Merchant Account Information ID allocation (02–51) |
Additional Data Field Template (62)
Sub-tags 01–09 are defined by EMVCo (bill number, mobile, store label, loyalty, reference, customer, terminal, purpose, consumer data request). Sub-tags 10–49 are RFU and forbidden. 50–99 are payment-system specific. Each sub-tag value is ANS ≤25.
| Rule ID | Citation |
|---|---|
| MPM-STRUCT-RFU-62 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.4 — Tag 62 sub-tags 10–49 RFU |
Language template (64)
When Tag 64 is present, sub-tag 00 (Language Preference, ISO 639, length 02) and sub-tag 01 (Merchant Name—Alternate Language, ≤25) are mandatory. Sub-tag 02 (Merchant City—Alternate Language, ≤15) is optional. Alternate-language name/city use String format and may contain non-Latin scripts.
| Rule ID | Citation |
|---|---|
| MPM-LEN-64-00 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.5 — Tag 64 sub-tag 00 length = 02 |
| MPM-LEN-64-01 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.5 — Tag 64 sub-tag 01 max length 25 |
| MPM-LEN-64-02 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.5 — Tag 64 sub-tag 02 max length 15 |
| MPM-LANG-00 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.5 — Tag 64 requires sub-tag 00 when present |
| MPM-LANG-01 | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Section 4.5 — Tag 64 requires sub-tag 01 when present |
Common Character Set
ANS fields must use the EMVCo Common Character Set (printable ASCII). Characters outside that set in ANS fields are reported as format errors.
| Rule ID | Citation |
|---|---|
| MPM-FMT-ANS | EMV QR Code Specification for Payment Systems (QRCPS) Merchant-Presented Mode v1.1 (27 Nov 2020) — Annex — Common Character Set for ANS fields |
