InputTestHub

EMV QR Code Parser

Decodes any EMVCo merchant QR payload into named fields and verifies the CRC, so you can see why a code was rejected.

Generators Nothing uploaded No sign-up Free, unlimited
Generators tool
Enter something above.
In short An EMVCo merchant QR payload is a flat string of tag, length and value records: two digits of tag, two digits of length, then that many characters of value, repeated. Pix, PromptPay and QRIS are all built on it, which is why one parser reads all three. The last field is always tag 63, a four-character CRC-16/CCITT-FALSE — and the rule that catches most implementations is that the CRC is computed over the payload including the "6304" tag-and-length header of the CRC field itself. A payload whose CRC was computed without that header parses perfectly and is rejected by the bank, which is exactly the failure this parser exists to diagnose: it prints the CRC the payload actually computes to alongside the one it carries. Nested templates are decoded too, so a Pix key or a PromptPay account identifier is shown as its own sub-fields rather than as an opaque string.

How to use the EMV QR Code Parser

  1. Paste the payload text — the string inside the QR, not an image.
  2. Read the field table and the CRC verdict.
  3. If the CRC is wrong, compare the expected value with the one the payload carries.

About the EMV QR Code Parser

The EMV QR Code Parser decodes any EMVCo merchant QR payload into named fields and verifies the CRC, so you can see why a code was rejected. It runs as plain JavaScript inside the page, which means there is no upload step, no queue and no size limit imposed by a server — the only limit is your own device.

What people use it for

  • Working out why a payment code was rejected.
  • Reading what a code you were sent actually contains before paying.
  • Checking a code produced by your own software against the specification.

Details

Structuretag(2) + length(2) + value, repeated
CRCCRC-16/CCITT-FALSE over the payload including the 6304 header
ReadsPix, PromptPay, QRIS and any other EMVCo MPM code
Nested templatesSub-fields inside tags 26 to 51 and 62 are decoded too
NetworkParsed in your browser; nothing is uploaded
The parser names the scheme when it can — a br.gov.bcb.pix template means Pix, the A000000677010111 identifier means PromptPay — but the field decoding works on any EMVCo code regardless of country.

Where this tool stops

It reads and verifies the structure. It cannot tell you whether the account named in the payload exists or is active.

Frequently asked questions

My code scans but the bank rejects it. Why?
Paste it here. In the great majority of cases the CRC is wrong, and almost always because it was computed without including the 6304 header. This page shows both the CRC in the payload and the one it should be, which turns a mystery into a one-line fix.
Can I paste an image of a QR code?
No — this takes the payload text. Any QR scanner app will show you the text it read; paste that. Keeping the tool to text means nothing has to be uploaded.
What does "malformed" mean on a field?
The two-digit length did not match the data that followed, so the parser could not find the next field. That usually means a character was lost when the payload was copied, and everything after that point is unreadable.
Is it safe to paste a payment code here?
The parsing happens in your browser and nothing is transmitted — check the Network tab. That said, a merchant payload identifies an account, so treat it as you would any account number.
Are there any usage caps on the EMV QR Code Parser?
No charge and no sign-up. There is no free tier to run out of because there is no paid tier — inputtesthub.com is funded by advertising rather than by metering the tool.
Is my data uploaded anywhere?
No. The EMV QR Code Parser runs entirely in your browser using JavaScript. Nothing is transmitted, logged or stored, which you can verify yourself in the Network tab of your browser's developer tools.
Who is the EMV QR Code Parser for?
In practice it gets used for three things: working out why a payment code was rejected. Reading what a code you were sent actually contains before paying. Checking a code produced by your own software against the specification. It is built for exactly those cases rather than being a general-purpose tool with this bolted on.
Is there anything the EMV QR Code Parser cannot do?
It reads and verifies the structure. It cannot tell you whether the account named in the payload exists or is active. Knowing where a tool stops being trustworthy matters more than the cases where it works.
What figures does the EMV QR Code Parser work from?
Structure is tag(2) + length(2) + value, repeated. CRC is CRC-16/CCITT-FALSE over the payload including the 6304 header. Reads is Pix, PromptPay, QRIS and any other EMVCo MPM code. These are printed on the page itself, so you do not have to take them on trust.
Will this work on a tablet?
Yes. The page is responsive and the tool works in Chrome, Safari, Firefox, Edge and Samsung Internet on both Android and iOS. There is no app to install and nothing to sign into.

Related generators tools

All 53
01

QR Code Generator

Creates QR codes for links, WiFi, contacts, email, SMS and plain text, downloadable as PNG or…

02

Barcode Generator

Generates Code 128, EAN-13, UPC-A, Code 39 and ITF barcodes as PNG or SVG with human-readable…

03

Lorem Ipsum Generator

Generates classic Lorem Ipsum placeholder text by paragraph, sentence, word or list item, with…

04

Random Number Generator

Generates truly random numbers in any range, with or without repeats, using the browser's…

05

Random Picker

Picks one or more random items from a list you paste — names, options, prizes or anything else.

07

Dice Roller

Rolls any number of dice with any number of sides, with modifiers and standard RPG notation…

08

Coin Flip

Flips a fair virtual coin once or thousands of times, with a running tally of heads and tails.

09

Yes or No Generator

Gives a random yes or no answer, optionally weighted, for when a decision needs settling.

10

Random Word Generator

Generates random English words filtered by type, length and starting letter, for games and…