Decode a UPI QR code: read the payee before you pay
A QR code is a black box: you point your camera, your UPI app shows a name, you pay. But the name your app shows comes from the code itself — and codes can lie. The sticker-swap scam is brutally simple: a fraudster pastes their own QR over a shop's genuine one, and every customer who "pays the shop" pays the stranger. The defense is equally simple: decode the UPI QR code first, read the raw payload — the payee's VPA (Virtual Payment Address), the payee name, the amount — and check it against what you were told, before money moves.
A UPI QR is just text in a standard format: upi://pay?pa=shopname@okaxis&pn=Shop%20Name&am=150&cu=INR. The pa is the destination — the handle the money goes to. This tool reads that text for you, in your browser, without uploading the image anywhere. It never initiates a payment, never opens your UPI app, never asks for a PIN. It just shows you what's inside the box.
How to check a UPI QR code
- Photograph or screenshot the QR. Straight-on, fill the frame, no glare. A WhatsApp-forwarded QR works fine as a screenshot.
- Upload it here and click Decode. Reading happens on your device in a second or two.
- Read the payee VPA and name. That's the ground truth of where your money would go — not what the sticker claims, not what anyone told you.
- Compare, then pay in your own app. Match the VPA character-by-character against the genuine one. Only then open Google Pay, PhonePe, Paytm or BHIM and pay there — checking the payee name on the payment screen too.
What the decoded fields mean
Payee VPA (pa) — the money's destination, like chaiwala@okaxis or 98765@paytm. The "Virtual" means it hides the real bank account — which is also why you can't tell who owns it just by looking. Compare it with a known-good VPA.
Payee name (pn) — whatever the QR creator typed. Useful, but self-declared: a scammer types a trustworthy name too. The VPA is the harder fact.
Amount (am) — often absent. Static shop codes carry no amount (you enter it); dynamic bill QRs do. Absence is normal, not suspicious.
Merchant code (mc) — a category like 5411 (groceries) marking a business code. No code means personal/P2P — fine for paying a person, worth a pause at a shop counter.
Note (tn) and reference (tr) — the memo attached to the payment. Read it; odd notes ("refund", "cashback", "verification") on a stranger's QR are a red flag.
Real-world use cases
Verifying a shop's sticker. Small shops get their QR stickers swapped. Photograph it, decode here, and check the VPA against the shopkeeper's word — or against your last genuine payment to them.
Marketplace "buyers". Selling on OLX or Facebook Marketplace and the "buyer" sends a QR "to pay you"? To receive money you never scan anything. Decode it here first — you'll usually find it's a collect payload aimed at debiting you.
WhatsApp-forwarded QRs. A QR arrives on chat claiming to be the vendor's. Decode before paying — forwarding is exactly how swapped codes travel.
Your own standee, before printing. Generate a QR for your shop? Decode the final image here and confirm the VPA spelling — one wrong character routes money elsewhere, and you'd never know until customers complain.
UPI fraud patterns this helps against
Sticker swap. Fake QR pasted over the real one. Decode-and-compare is the direct counter.
"Scan to receive" scam. There is no legitimate flow where scanning a QR or entering your UPI PIN receives money. Both actions send money out. If anyone frames it as receiving, walk away.
Collect-request trick. A "request money" notification dressed up as a refund or cashback. It asks for your PIN — which means you pay them. Never approve an unexpected request.
Fake payment screenshots. A buyer shows "Payment Successful" while nothing arrived. Sellers: verify in your own bank app or SMS, never from their screen.
What this tool can and cannot do
It can show you exactly what a QR contains — the destination VPA, name, amount, and codes — privately, on your device. It cannot tell you whether a VPA belongs to a trustworthy person (that would need a bank lookup no web page can do), and it will not initiate payments or ask for credentials. Treat the decoded VPA as a fact to verify, not a verdict of safety.
The bottom line
One QR decides where your money goes. Read it before you pay it: decode here, match the VPA, and only then complete the payment inside your own UPI app.