Skip to content
Generate Online

UPI QR Code Generator

Take payments into any UPI app without a card machine or a payment gateway.

The address money is sent to, e.g. name@okaxis or 9876543210@ybl.

Shown in the payer's app to confirm who they are paying.

Leave empty to let the payer enter the amount themselves.

QR code options

Generated on your device. Nothing you type is sent anywhere.

What a UPI QR code does

A UPI QR code lets someone pay you from any UPI app — Google Pay, PhonePe, Paytm, BHIM or a bank's own — by scanning and confirming. It encodes your virtual payment address, your name as it should appear to the payer, and optionally a fixed amount. The choice about the amount is the important one: leaving it blank makes a single code work for every transaction at a counter, while fixing it makes the code specific to one item or one bill and removes the possibility of the payer entering the wrong figure.

When to use one

  • Shop counters taking payments without a card machine
  • Market stalls and street vendors with no fixed terminal
  • Invoices with the exact amount encoded to avoid errors
  • Auto-rickshaws, salons and small services taking variable amounts
  • Fixed-price items where the amount should not be typed
  • Donation boxes and collection points at temple or community events

Why it works well

  • No terminal and no fees

    UPI person-to-person transfers carry no merchant discount rate, so a printed code replaces a card machine and its rental with a piece of paper for many small businesses.

  • Works with every UPI app

    The format is a national standard rather than one company's, so the same code is scannable by Google Pay, PhonePe, Paytm, BHIM and every bank app. No customer is excluded by which app they happen to use.

  • Fixed amounts remove errors

    Encoding the figure means the payer confirms rather than types. On an invoice or a fixed-price item that eliminates both underpayment and the reconciliation work that follows it.

  • Settles instantly

    Money arrives in the account immediately rather than clearing over days, which for a small trader is a materially different cash position from card settlement.

Worked examples

Open counter code, payer enters amount

The usual shop-counter case. One printed code serves every transaction because the amount is left for the customer to enter.

Encoded as

upi://pay?pa=cornershop%40okhdfcbank&pn=Corner%20Shop%20Groceries&cu=INR

Invoice with a fixed amount

Printed on a specific bill. The amount and reference are encoded so the payer confirms rather than types, and the payment reconciles itself.

Encoded as

upi://pay?pa=studio%40okaxis&pn=Meridian%20Studio&am=4750.00&tn=Invoice%202026-118&cu=INR

Fixed-price item

Beside a single product with one price. Removes the risk of a customer entering the wrong figure at a busy counter.

Encoded as

upi://pay?pa=9876543210%40ybl&pn=Chai%20Point&am=40.00&cu=INR

How to create a UPI QR code

  1. Enter your UPI ID

    Put your virtual payment address in the UPI ID field. It looks like an email address — name@okaxis, 9876543210@ybl — and is shown in your UPI app under your profile. This is where the money arrives.

  2. Set the payee name carefully

    The Payee name appears in the payer's app when they confirm. It should match the name on your signage, because a mismatch between the shopfront and the confirmation screen makes people abandon the payment.

  3. Decide whether to fix the amount

    Leave Amount empty for a counter code that handles every transaction. Set it for a specific bill, a fixed-price item or an invoice, where removing the typing step also removes the possibility of a wrong figure.

  4. Test with a small real payment

    Send yourself one rupee before printing anything. A UPI code that is subtly wrong fails at the moment a customer is trying to pay, which is the worst possible time to discover it.

What goes wrong, and how to avoid it

  • A payee name that does not match your signage

    The name in the code is what the payer sees on the confirmation screen. If it shows a personal name while the shop sign says something else, people hesitate and often abandon the payment — reasonably, since payment fraud through substituted codes is well known. Make the two match.

  • Fixing the amount on a counter code

    A code with an amount baked in only works for that one figure. Printed and stuck to a counter, it means every customer pays the same thing regardless of what they bought. Fixed amounts belong on invoices and single-price items, never on a general payment point.

  • Printing it where it can be swapped

    Covering a legitimate payment code with a sticker pointing at a different UPI ID is an established fraud, and the shopkeeper often only discovers it at cash-up. Laminate the code, fix it where staff can see it, and check it periodically against a test scan.

  • Assuming a UPI code works outside India

    UPI is an Indian payment system and the currency is fixed to INR. A UPI code presented to an international customer with no UPI app simply cannot be paid, and there is no graceful fallback — provide another method alongside it.

  • Not verifying with a real payment

    A wrong character in a VPA usually produces a payment that fails at confirmation rather than one that errors at scan time. Because that happens with a customer waiting, testing with a one-rupee transfer before printing is worth the trouble.

Device and app compatibility

UPI codes are read by every UPI-enabled app in India — Google Pay, PhonePe, Paytm, BHIM, Amazon Pay and the apps published by individual banks — because the format is defined by NPCI rather than by any one provider. Scanning is normally done from inside the payment app rather than the camera, since the upi:// scheme is not something a general camera app can act on; on some phones the camera will offer to open a UPI app, and on others it shows the raw string. That is expected behaviour and not a fault in the code. Outside India there is no UPI infrastructure, so these codes have no meaning at all.

The payload is a upi://pay deep link with pa (payee address) and pn (payee name) as required parameters, am for an optional amount and tn for a note. Currency is fixed to INR because UPI supports no other. Spaces in the payee name are percent-encoded, so a plus sign never appears in the confirmation screen.

Common questions

Should I fix the amount or leave it blank?

Leave it blank for a counter code that has to handle every transaction — one printed code then works for every customer. Fix it for an invoice, a single-price item or a donation with a suggested figure, where encoding the amount removes typing and the errors that come with it.

Does this work with Google Pay and PhonePe?

Yes, and with Paytm, BHIM, Amazon Pay and bank apps too. The format is a national standard set by NPCI rather than something owned by one provider, so a single code is scannable by every UPI app. No customer is excluded because of which app they use.

Are there fees for receiving payments this way?

UPI person-to-person transfers carry no merchant discount rate, which is why printed codes have replaced card terminals for many small traders. Merchant-specific arrangements and settlement services may have their own terms, so confirm with your bank if you are operating at volume.

Why does my camera app not open the payment?

The upi:// scheme is not something a general camera app can act on, so many phones display the raw text instead. Scanning from inside a UPI app is the normal route and works everywhere. This is expected rather than a fault in the code.

Can someone abroad pay my UPI code?

Not unless they have an Indian UPI app and account. UPI is domestic infrastructure and the currency is fixed to rupees, so a visitor without it has no way to complete the payment and no fallback appears. Offer another method alongside if you serve international customers.

Is my UPI ID sent to your server?

No. The payment link is assembled in your browser and the pattern drawn on your device, with nothing transmitted at any point. This matters particularly for a payment identifier, and you can verify it by watching the Network tab in developer tools stay empty while you type.

Read before you print

Other QR code generators

This generator is part of business QR codes — see the whole group, and what to decide before you generate one.