“UPI ID batao” — every Indian counter queue runs on those three words. A printed UPI payment QR code deletes the queue: customer scans, amount prefilled, two taps, done. I set one up for a vegetable vendor in September 2026 — laminated 8 cm code, payee ID + fixed-price vegetable combos. First Saturday: 40+ UPI collections, zero wrong-number transfers (previously 2–3 a week went to a stranger with a similar ID). Here is the exact setup.
Part of the free QR code generator guide. Generate payment codes in the free QR code generator. This is setup guidance, not financial advice — confirm settlement and charges with your bank.
How UPI QR strings work (60 seconds)
The code encodes a UPI intent: payee ID (name@bank), payee name, optional fixed amount, and a note. Scanning opens the customer's UPI app (GPay, PhonePe, Paytm, BHIM) with everything prefilled — they just tap pay and enter their PIN. No terminal, no rent, settlement straight to the linked bank account. Fixed-amount codes (₹99 combo) remove typing errors entirely; open-amount codes let the customer enter the total.
Set yours up: fixed vs open amount
Fixed amount (tea stall, combo, ticket)
Encode payee ID + name + exact amount (e.g. ₹30 chai). Customer flow: scan → pay → PIN. Nothing to mistype. Reprint when the price changes — static codes cannot update, so version filenames (chai-30-sep2026.png).
Open amount (kirana, salon, variable bills)
Encode payee ID + name only. Customer enters the bill total. Slightly more error-prone, infinitely reusable across bills. Pair with a spoken total (“₹450, scan and pay”) — vendors who announce the amount get fewer wrong-amount payments.
| Setup | Best for | Reprint when |
|---|---|---|
| Fixed ₹30 | Chai, single-price items, entry tickets | Price changes |
| Fixed combo | ₹99 breakfast, ₹499 service | Menu changes |
| Open amount | Kirana, salon, variable bills | UPI ID changes (rarely) |
Counter setup that prevents fraud and errors
- Print 8–10 cm, laminated, fixed to the counter. Loose paper codes get swapped — there are real cases of scammers pasting their own QR over shops'. Fix yours down, check it daily, verify the payee name on first scan each morning.
- Verify payee name displays correctly. “Pay SA***A SH***A” reassures customers. Wrong name = do not pay — train staff to say this.
- Confirm payment before handing goods: check YOUR phone's credit SMS/app, not the customer's screen (screenshots fake easily). Speaker-based UPI soundboxes (₹1,000–1,500) automate this for busy counters.
- Keep one backup code in the drawer. Damaged/lost primary → swap in 30 seconds, no sales lost.
- US/UK equivalents: same static-code idea with Venmo/Zelle tags or bank-transfer details; fraud rules (verify name, confirm on your device) apply everywhere.
Fees and limits (check your bank)
UPI person-to-merchant collections are typically free for small merchants, but caps, settlement timing and soundbox charges vary by bank and app. This page covers code setup only — confirm charges, daily limits and dispute handling with your bank. Not financial advice.
Reconciliation: match QR collections to sales at day end
QR money lands straight in your bank — which means the counter register and the bank statement must agree every evening, or leakage hides in the gap. The routine that works for single-counter shops: note each bill total on a paper pad or billing app as usual, then compare the day's UPI credits (bank SMS/app statement) against QR-mode sales before closing. Mismatches come from three places: a customer who scanned but never entered their PIN (no credit — call it an unpaid bill, not a sale), a wrong-amount open-code payment (under/over — settle the difference next visit or refund on the spot), and mixed cash/UPI confusion (mark the mode per bill, every bill). Vendors who reconcile daily catch a ₹450 “paid” claim with no matching credit within hours; vendors who reconcile monthly write off hundreds. Five minutes at close, house-money protected.