Skip to content
UseQR
ESC

↑↓ MOVE↵ OPEN48 PLACES

Payments

PIX vs UPI — the two giant instant-payment QR systems compared

PIX and UPI both settle instantly and cost individuals nothing, but differ architecturally — PIX encodes an EMVCo tag-length-value string with a CRC16 checksum, run by the Banco Central do Brasil since 2020; UPI encodes a upi://pay deep link, run by India's NPCI since 2016. Neither system can read the other's codes.

View as MarkdownPaste this page into any AI assistant — it is plain, portable Markdown.

Side by side

UPI PIX
Country India Brazil
Operator NPCI (National Payments Corporation of India) Banco Central do Brasil
Launched April 2016 November 2020
Payload upi://pay?... URI deep link EMVCo TLV string ("BR Code")
Checksum None CRC16/CCITT-FALSE in field 63
Identifier VPA — name@bank PIX key — CPF/CNPJ, email, phone, or random EVP
Text fallback The VPA or URI itself Copia e cola (the full string)
Cost to individuals Free Free
Settlement Instant, 24/7 Instant, 24/7

The details of each format live on the UPI format page and the PIX format page; this page is about the comparison.

The architectural difference

The interesting split is not the countries — it is the payload philosophy.

UPI chose a URI. upi://pay?pa=shop@bank&pn=Shop is an ordinary deep link. The operating system routes it to any app registered for the upi: scheme, exactly as an https: link opens a browser. That bought UPI instant multi-app interoperability almost for free: any new UPI app works with every existing code the day it registers the scheme. The cost is that a URI has no integrity check — there is no checksum, and a mangled code simply fails or, worse, half-parses.

PIX chose a structured record. The EMVCo TLV format is a self-describing binary-ish string: typed fields, explicit lengths, and a CRC16 sealing the whole payload. Apps must implement a parser rather than lean on OS deep-linking, but the payload validates itself — corruption is detected, and the format extends cleanly through nested templates. It also gave Brazil copia e cola, the copy-paste twin that solves paying a code shown on your own phone.

Neither is simply better. UPI's URI is human-legible and trivially generated; PIX's TLV is robust and strictly specified. Both formats are open enough that this site's builders (UPI, PIX) implement them from the public specs, client-side.

What they share — and what each got right

Both are the same model executed well: central-bank-backed, bank-led, instant, free for individuals, addressed by an alias rather than an account number, and merchant-presented — the payer always scans, sees a name, and confirms. Both now process volumes that make them among the most used instant-payment systems in the world, and both made the QR code — not the card terminal — the default acceptance hardware for small commerce.

Each contributed an idea worth copying:

  • UPI: one alias namespace (name@bank) portable across every app, and a URI format so simple a market trader's laminated card participates in the same system as an enterprise.
  • PIX: the rotatable random key (privacy on printed codes — see PIX key types), the payload checksum, and copia e cola.

The lesson other markets took

A single mandated standard beats competing proprietary codes. Indonesia's QRIS made the same bet explicitly, and the wider comparison shows most national schemes since have chosen the EMVCo path — PIX's family, not UPI's — largely because EMVCo offered a ready-made international base spec to profile.

FAQ

Can a UPI app read a PIX code, or vice versa?

No. UPI codes are upi:// deep links and PIX codes are EMVCo TLV strings — structurally unrelated formats on unconnected national rails. Cross-border linkages between instant payment systems exist, but they are bilateral integrations, not format compatibility.

Which is bigger, UPI or PIX?

UPI processes more transactions, serving a far larger population and having a four-year head start. Both are among the highest-volume instant-payment systems in the world; exact monthly figures are published by NPCI and the Banco Central do Brasil respectively.

Why does PIX have a checksum but UPI does not?

PIX inherited the CRC16 from the EMVCo merchant-presented specification it profiles. UPI's payload is a plain URI, a format with no integrity field — validation happens at the parameter level in the app instead.

Are PIX and UPI free to use?

For individuals, yes — sending and receiving cost nothing on both systems. Merchant pricing differs: PIX allows banks and PSPs to charge business accounts to receive, and UPI merchant economics are set by Indian regulation and PSP agreements.

Try it — free, no signup