Skip to main contentSkip to navigation

UPI ID Validator

Check whether a UPI ID (VPA) is correctly formed and see which app and bank issued its handle. Catches the typos that silently swallow payments — before you print them on a QR or send them to a customer. Free, instant, and nothing leaves your browser.

Check a UPI ID

Checks the format of a UPI ID against the NPCI convention and identifies which app or bank issued its handle. Runs entirely in your browser — the UPI ID is never sent anywhere.

Enter a UPI ID above to check it.

What this tool cannot do: confirm that a UPI ID actually exists or belongs to who you think. That requires a bank/NPCI lookup, which no in-browser tool can perform — and any free tool claiming to “verify” a UPI ID is either sending it to a server or guessing. A well-formed ID with a typo in it is still a well-formed ID, and it will silently swallow a payment. Before you print a QR or invoice a customer, send ₹1 to it. That is the only real verification.

UPI handles we recognise

The handle is the part after the @. It tells you which app or bank issued the ID — not who owns it.

HandleApp / PSPBank
@okhdfcbankGoogle PayHDFC Bank
@okiciciGoogle PayICICI Bank
@oksbiGoogle PayState Bank of India
@okaxisGoogle PayAxis Bank
@yblPhonePeYes Bank
@iblPhonePeICICI Bank
@axlPhonePeAxis Bank
@paytmPaytm
@ptyesPaytmYes Bank
@ptsbiPaytmState Bank of India
@ptaxisPaytmAxis Bank
@pthdfcPaytmHDFC Bank
@upiBHIMNPCI
@aplAmazon PayAxis Bank
@yaplAmazon PayYes Bank
@raplAmazon PayRBL Bank
@waaxisWhatsApp PayAxis Bank
@wahdfcbankWhatsApp PayHDFC Bank
@waiciciWhatsApp PayICICI Bank
@wasbiWhatsApp PayState Bank of India
@freechargeFreecharge
@airtelAirtel Payments Bank
@ikwikMobiKwik
@naviaxisNaviAxis Bank
@jupiteraxisJupiterAxis Bank
@sbiSBI PayState Bank of India
@iciciiMobileICICI Bank
@hdfcbankHDFC Bank MobileBankingHDFC Bank
@axisbankAxis MobileAxis Bank
@kotakKotak 811Kotak Mahindra Bank
@yesbankYes BankYes Bank
@pnbPNB OnePunjab National Bank
@unionbankUnion BankUnion Bank of India
@cnrbCanara BankCanara Bank
@barodampayBOB WorldBank of Baroda
@idfcbankIDFC FIRSTIDFC FIRST Bank
@indusIndusIndIndusInd Bank
@fblFederal BankFederal Bank

Curated, not exhaustive. A handle missing from this table is not a bad handle.

What a UPI ID is made of

A UPI ID — properly a Virtual Payment Address, or VPA — has two parts either side of an @:

PartExampleWhat it is
IdentifieryourshopChosen by the account holder. Letters, digits, and . _ -
PSP handle@okhdfcbankAssigned by the app/bank. Always starts with a letter

The handle is the useful signal: it tells you the ID came from Google Pay on HDFC (@okhdfcbank), or PhonePe on Yes Bank (@ybl), and so on. It tells you nothing about who owns the ID — which is the crux of the next section.

Why “valid” is not the same as “correct”

This is the failure mode that actually costs Indian merchants money, and it is worth being blunt about. A UPI ID with a single typo can still be a perfectly valid, existing ID — one that belongs to a total stranger. UPI transfers are instant and irreversible. So a mistyped ID on a printed QR or an invoice does not bounce: it quietly routes your customers' money to someone else, while the customer holds a successful payment receipt.

A format checker like this one is a first line of defence. It catches the malformed IDs — missing @, a numeric handle, a stray space. It cannot catch the dangerous case, because the dangerous case is well-formed. The only thing that catches that is sending ₹1 and watching where it lands. Do it every time, before anything goes to print.

Once the ID is right

Turn it into something a customer can actually pay: a UPI payment link to send over WhatsApp, or a UPI QR code to print for your counter. Both are free, both are built from the same NPCI upi://pay payload, and neither needs a sign-up.

And when hand-matching payments to orders stops scaling — typically somewhere around a few dozen orders a day — that is a reconciliation problem, not a link problem. WatEase issues a payment request per order inside WhatsApp commerce and confirms payment back into the same chat automatically; see WhatsApp payments.

Frequently asked questions

How do I check if a UPI ID is valid?

Paste it into the checker above. It confirms the ID follows the NPCI format — an identifier, an @, and a PSP handle (for example yourshop@okhdfcbank) — and tells you which app or bank issued that handle. Important: this is a format check. The only way to confirm a UPI ID actually exists and reaches the right person is to send ₹1 to it and see it land.

Can any tool truly verify that a UPI ID exists?

Not from a browser. Confirming a VPA resolves requires a bank or NPCI lookup through a licensed channel — a payment gateway, a PSP integration, or the UPI app itself, which shows you the registered name when you enter an ID. A free web tool that claims to "verify" a UPI ID is either transmitting it to a server you know nothing about, or simply pattern-matching and calling it verification. We do the pattern match and say so.

What does the part after the @ mean in a UPI ID?

That is the PSP handle — it identifies the payment service provider or bank that issued the ID, not the person who owns it. @okhdfcbank, @okicici, @oksbi and @okaxis are Google Pay (on HDFC, ICICI, SBI and Axis respectively). @ybl, @ibl and @axl are PhonePe. @paytm is Paytm. @upi is BHIM. The full table of handles we recognise is on this page.

My UPI ID says "handle not in our list" — is it broken?

Almost certainly not. NPCI onboards new PSP handles regularly and our table is curated rather than exhaustive, so a perfectly good UPI ID can have a handle we have not listed. We deliberately show that as "not recognised" rather than "invalid" — telling you your working UPI ID is fake would be a much worse error than admitting we do not know it. Confirm with a ₹1 payment.

Is it safe to enter a UPI ID into this tool?

Yes, on two counts. First, this page is entirely client-side: the ID you type never leaves your browser and is never logged. Second, a UPI ID is not a secret — it is safe in the way an email address is safe. It lets people send money TO you and can never be used to pull money FROM you; that always requires the account holder to approve a debit with their UPI PIN.

Why do typo'd UPI IDs lose money?

Because a UPI ID with a typo can still be a valid, existing ID belonging to a complete stranger — and UPI transfers are instant and irreversible. If you print a QR or send an invoice with one wrong character, payments quietly go somewhere else and the customer has proof they paid. That is precisely why the ₹1 test matters, and why a format checker is a first line of defence, never the last.