EMV QR Hub
EMV QR Hub
Payment Ecosystem

UPI QR vs EMVCo QR: How They Differ

UPI QR and EMVCo MPM QR can both sit on an Indian merchant counter and still be different products. One is a UPI payment address in a URI. The other is a TLV payload wallets parse with EMVCo rules. Generating the wrong one is a common go-live failure.

Two grammars, one camera

A phone camera does not care which payment scheme you intended. The wallet that opens the scan does. A UPI-only app may ignore a TLV string. An EMVCo-oriented wallet may ignore a upi://pay URI. Some Indian super-apps parse both; many do not.

What EMVCo MPM puts on the wire

MPM is a concatenation of TLV objects. Mandatory identity lives in Tags 00, 01, 52, 53, 58, 59, 60 plus at least one Merchant Account Information template and Tag 63 CRC. Amount is Tag 54 when present. Currency is ISO 4217 numeric. That grammar is what national schemes such as PromptPay and SGQR extend — they are not UPI intent strings.

What a typical UPI QR carries

UPI QR usually encodes a Virtual Payment Address (VPA), payee name, and optional amount or transaction note in a UPI intent URI. The consumer app resolves the VPA through NPCI rails. There is no Tag 63 CRC on that URI. Copying a UPI string into an EMVCo decoder will look like garbage TLV.

Bharat QR and dual presentation

India also uses Bharat QR / EMVCo-compatible merchant-presented formats so non-UPI wallets can still pay. Acquirers sometimes print a combined sign or two codes. If you only generate UPI intent, you exclude those wallets. If you only generate MPM with a non-UPI GUID, you exclude UPI-only apps.

How to choose

India-only UPI micro-merchant with a printed sticker: follow the format your PSP documents, usually UPI QR. Multi-scheme or cross-border readiness: emit MPM with the local MAI template your acquirer assigned, plus CRC. If the PSP gives you both, test both with the actual apps — do not assume interoperability from the word QR.

Testing checklist

Generate the candidate payload in the EMV studio or from the PSP. Decode it here: if you expected MPM and see no Tag 00, you have a URI, not TLV. Scan with PhonePe/GPay/Paytm as relevant and with one non-UPI wallet if you claim Bharat QR. Confirm amount entry behavior matches static vs dynamic.

Affiliation

UPI is operated in India by NPCI. EMVCo publishes MPM globally. EMV QR Hub is independent of both. Use primary sources on npci.org.in and emvco.com when you certify production.

Intent URI shape (illustrative)

A UPI QR often starts with upi://pay?pa=… rather than 000201. If Decode tries to parse that as TLV it will fail fast. That failure is correct — it is the wrong grammar.

Acquirer kits

Indian PSPs sometimes give you a Bharat QR MPM string and a UPI intent. Generate both if they said both. Test both. Do not merge them into one TLV by hand.

Two grammars that happen to share a camera

A UPI QR often starts with upi://pay?pa=… (an intent URI with query parameters). An EMVCo MPM QR starts with 000201 and is TLV. If Decode tries to parse a UPI URI as TLV it will fail fast. That failure is correct — it is the wrong grammar. Do not “fix” a UPI string by stuffing it into Tag 59.

Bharat QR is the MPM-shaped programme in the same market. Indian PSPs sometimes give you both a Bharat QR MPM string and a UPI intent. Generate both if they said both. Test both. Do not merge them into one TLV by hand. Dual presentation means two honest symbols or a scheme-documented combined artwork, not a hybrid payload.

How to choose what to print

If your customers are primarily in-app UPI collect, the intent QR may be enough. If you need wallets that speak MPM / Bharat QR, you need an MPM envelope with the GUID the acquirer registered. Tourists and inbound wallets may speak neither; have a card presentment. Choosing based on which acronym ranks on Google is how shops print a code half their apps cannot read.

Testing checklist: decode the MPM string here (CRC, Tag 53 numeric, Tag 01, MAI). Open the UPI URI in a UPI app (pa, pn, am as applicable). Confirm they do not point at different merchants. Affiliation: EMV QR Hub is not NPCI, not a PSP, and not EMVCo. Specs: emvco.com for MPM; NPCI/PSP docs for UPI.

Intent fields versus TLV tags (illustrative)

UPI query parameters such as pa (VPA), pn (name), am (amount), and tr (txn ref) are not Tag 59 / 54 / 62. They occupy a different parser. Mapping them mentally is useful; concatenating them into MPM without a template is not. If a partner sends you a screenshot only, ask for both raw strings.

Cookbook MPM samples on this site use placeholder names like EMVQRHUB. They are not VPAs. Do not type them into a UPI pa field. Operator: Pankaj Kalra.

Support script for dual-QR counters

Ask which app the customer opened. UPI collect apps want the intent QR. MPM/Bharat wallets want the TLV QR. If they scanned the wrong symbol, switching apps beats “fixing” TLV. Train staff to point at the correct code rather than reprinting both onto one sticker.

Documentation for cashiers

Two QR codes need two labels on the standee: “UPI apps” and “Other wallets” (or whatever your acquirer prescribes). Unlabeled dual QR is how customers scan the wrong grammar and support blames “the QR is broken.”

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.