Skip to main content
CodeLint.Dev Dev Tools

UPI ID Validator

Check the format of a UPI virtual payment address against its provider’s pattern.

UPI ID Validator

Validate UPI Virtual Payment Addresses · identify provider · 100% client-side

Examples:
Enter a UPI ID like username@provider to validate.

Known UPI Provider Suffixes

ProviderHandles
Google Pay
@okaxis, @okicici, @oksbi, @okhdfcbank, @okbizaxis
PhonePe
@ybl, @ibl, @axl
Paytm
@paytm
BHIM
@upi
Amazon Pay
@apl
WhatsApp Pay
@waaxis, @wahdfcbank, @waicici, @wasbi
CRED
@axisb
Axis Bank
@axisbank, @axis
HDFC Bank
@hdfcbank, @hdfc
ICICI Bank
@icici
SBI
@sbi
Kotak Bank
@kotak
Yes Bank
@yesbank
Bank of Baroda
@barodampay, @bob
Razorpay
@razorpay

What a UPI ID is

A UPI ID — formally a Virtual Payment Address — has the form name@handle, for example alice@okhdfcbank or 9876543210@ybl. It maps to a bank account without exposing the account number or IFSC code.

That indirection is the point. You can receive money without disclosing your account details, and you can change the underlying account without everyone who pays you needing to update anything.

The part after the @ is the payment service provider's handle, and there are dozens: @okhdfcbank, @oksbi, @okicici and @okaxis for Google Pay; @ybl, @ibl and @axl for PhonePe; @paytm; @upi for BHIM. The handle indicates which app or bank issued the address, not which bank holds the money.

About

A UPI (Unified Payments Interface) ID — also called a VPA (Virtual Payment Address) — is a unique identifier for sending and receiving money on India's UPI payment network. It takes the format handle@provider, where the provider suffix determines the payment app or bank. This tool validates that a UPI ID conforms to the NPCI format rules and identifies the payment provider from a curated list of known provider suffixes including Google Pay, PhonePe, Paytm, BHIM, Amazon Pay, WhatsApp Pay, and major Indian banks.

How to use

  1. 1 Type or paste a UPI ID (e.g., username@okaxis) into the input field.
  2. 2 The validator checks the format — the handle must contain only letters, digits, dots, hyphens, or underscores; the @ sign must be present; and the provider suffix must be at least 2 characters.
  3. 3 If the format is valid, the tool shows the handle and provider suffix separately.
  4. 4 The provider is identified from a list of known suffixes (Google Pay, PhonePe, Paytm, BHIM, bank handles, etc.).
  5. 5 If the provider is not in the known list, the format is still valid — it may be a direct bank handle or a new provider.
  6. 6 Use the example buttons to test with common UPI handle formats.
What are the rules for a valid UPI ID?
NPCI defines a VPA as: (1) A handle of 3–256 characters containing only alphanumeric characters, dots (.), hyphens (-), or underscores (_). (2) Followed by a single @ symbol. (3) Followed by a provider suffix of 2–64 characters using the same allowed characters. No spaces are permitted. The handle is typically your name, phone number, or a custom alias set in your payment app. The provider suffix is assigned by the payment service provider (e.g., @okaxis for Google Pay via Axis Bank).
Why do Google Pay handles have @okaxis, @okicici etc. instead of @googlepay?
UPI requires that every payment service provider (PSP) is associated with a sponsoring bank that holds a banking license in India. Google Pay operates in India through multiple sponsor banks — Axis Bank (@okaxis), ICICI Bank (@okicici), SBI (@oksbi), and HDFC Bank (@okhdfcbank). The UPI handle suffix reflects the sponsor bank relationship, not the app brand name. This is why the same Google Pay user might have an @okaxis or @okicici handle depending on which bank they linked first.
Can I verify if a UPI ID actually exists?
This tool only validates the format of a UPI ID — it cannot verify whether the account is active or registered. To verify a real UPI ID, you need to initiate a live UPI collect request or use the NPCI VPA verification API (available only to registered payment service providers). In most UPI apps, you can type a VPA in the "Send Money" field and the app will confirm whether it is registered before you send money.