Skip to content
ToolsdaUPI fraud safety · 100% private on-device
UPI Tools
Runs on your deviceNothing you type here is sent anywhere — the whole tool is JavaScript in this tab.

UPI QR Code Generator

Enter a UPI ID, payee name, and an optional fixed amount — the QR code updates as you type, entirely in this tab. One QR works in Google Pay, PhonePe, Paytm, BHIM, and every other UPI app, because UPI is a single interoperable network, not per-app codes.

Payment details

Amount is pre-filled — a dynamic QR

0/80

A shop logo, placed with a white border like a branded QR.

Your QR code

Enter a valid UPI ID and payee name on the left — your QR code appears here as you type.

What is a Dynamic UPI QR Code?

A static QR encodes only the payee — the person paying types in the amount themselves, which is why the same printed code works for a tip jar or a shop with variable prices. A dynamic QR also encodes a fixed amount (the am parameter below), so the payer's app opens straight to a confirm-and-pay screen with the number already filled in — better for a specific invoice, bill, or checkout total. The Fixed/Any Amount toggle above switches between the two; everything else about the QR stays the same.

One QR works across every UPI app because UPI is a single interoperable network run by NPCI (the National Payments Corporation of India) — Google Pay, PhonePe, Paytm, and BHIM are all clients of the same network, not separate payment systems. A QR built to the standard upi://pay format is readable by any of them.

How the UPI QR Format Works

Scanning this tool's QR decodes to a upi://pay link built from these parameters:

ParamMeaningRequired?
paPayee address — your UPI ID (VPA)Always
pnPayee name, shown to the payerAlways
amFixed amount — present only on a dynamic QROnly if Fixed Amount is on
cuCurrency — always INR when am is presentWith am
tnTransaction note / purpose, shown in the payer’s appOptional
trThis tool’s own tracking reference, for your recordsAlways (auto-generated)
mcMerchant category code — 0000 for a personal/unregistered collectionAlways

Checked against the live NPCI intent spec as of 27 August 2026.

How to Generate a UPI QR Code

  1. Enter your UPI ID and payee name — the QR appears the moment both are valid.
  2. Choose Fixed Amount for a specific invoice or bill, or Any Amount for a code you'll reuse (a tip jar, a shop counter).
  3. Download the size and format you need — PNG for a screen, SVG for reprinting sharp at any size, or the PDF for a print-ready counter card.

Common UPI Handles

The part after @ in a UPI ID identifies the bank or app it routes through — this is a reference list, not a live directory (a handle can be reassigned, and this covers common ones, not all 200+ registered with NPCI).

HandleBank / App
@okaxisGoogle Pay (Axis Bank)
@okhdfcbankGoogle Pay (HDFC Bank)
@okiciciGoogle Pay (ICICI Bank)
@oksbiGoogle Pay (SBI)
@yblPhonePe (Yes Bank)
@iblPhonePe (ICICI Bank)
@axlPhonePe (Axis Bank)
@paytmPaytm Payments Bank
@upiBHIM / generic UPI
@aplAmazon Pay
@axisbankAxis Bank (direct)
@sbiState Bank of India (direct)

For Spreadsheets and Developers

Bulk mode: Google Sheets

Generating many QRs from a list? This is the parameter shape a custom Sheets formula would need — illustrative only, there's no ready-made add-on behind it.

=UPI("yourid@upi", "Your Name", "", "")

API pattern (for devs)

The parameter order a server-side generator would typically expose — this tool has no backend, so this path doesn't resolve anywhere; it documents the shape only.

/api/getqr/Your%20Name/yourid@upi/

Read the guide

🛡️ Trust & Safety

Disclaimer: what this checks

What This Generator Can and Cannot Guarantee

The QR is built on-device — what happens after the payer scans it is out of our hands.

Can verify
  • Build a correctly-formatted upi:// payment link and QR code, entirely on your device
  • Pre-fill the amount, note, and your UPI ID exactly as you enter them
Cannot verify
  • Guarantee the payment will succeed — the payer's bank or UPI app can still decline it
  • Stop the payer from changing the amount before paying — depending on their app, the amount is a request, not a lock
  • Confirm money actually reached your account — always check your bank statement or passbook, not just an in-app notification

Nothing here is sent anywhere to generate — the QR is drawn in your browser from what you typed.

Non-affiliation

Toolsda is an independent product and is not affiliated with, endorsed by, or connected to NPCI, RBI, UPI, Google Pay, PhonePe, Paytm, or any bank. UPI® is a registered trademark of NPCI.

Report error

Found wrong handle mapping, or a wrong scam flag?

If something looks like fraud:NPCI cybercrime.gov.in Helpline 1930

Last verified: 27 Aug 2026Source: QR payload follows the NPCI UPI deep-link specRuns 100% on your device

Frequently Asked Questions

Is this UPI QR code generator free?

Yes, completely free with no signup, no watermark, and no limit on how many QR codes you generate. Everything runs in your browser — there is no account or paid tier for this tool.

Does one QR code work for Google Pay, PhonePe, and Paytm?

Yes. UPI is a single interoperable network run by NPCI, not separate systems per app — a standard upi://pay QR encodes the payee, amount, and note in a format every UPI app reads the same way, so one code works across GPay, PhonePe, Paytm, BHIM, and any other UPI app.

What do pa, pn, and am mean in a UPI link?

"pa" is the payee address — your UPI ID (VPA), like name@bank. "pn" is the payee name, shown to whoever scans the code. "am" is the amount — present only on a dynamic QR with a fixed amount; leave it out and the payer enters their own amount (a static QR).

Is my UPI ID safe here? Do you store it?

Nothing you type is ever sent to a server — the QR is built and rendered entirely on your device, and closing the tab clears it. If you want to check whether a UPI ID or QR (yours or someone else's) shows warning signs of a scam before you pay or share it, use the UPI ID & QR Code Safety Checker.

How do I create a QR with a fixed amount instead of a blank one?

Switch the amount toggle to "Fixed Amount" and enter the value — that produces a dynamic QR with the amount pre-filled in the payer's app, so they only need to confirm and pay. Leave it on "Any Amount" for a static QR the payer fills in themselves, useful for tip jars or variable-price counters.

Building someone else's QR, or one that was sent to you?

This tool only builds a QR — it doesn't tell you whether a UPI ID or QR is trustworthy. For that, use the UPI ID & QR Code Safety Checker before you pay.

See the rest of the cluster on the UPI Tools hub.