How to Verify a GSTIN Online

One wrong character in a GST number is enough to silently kill your ITC claim. Here's how to catch it in ten seconds.

How to verify a GSTIN online

Fifteen characters. That's all a GSTIN is. And yet, the number of ITC claims that get denied every quarter because of a single wrong digit in those fifteen characters is genuinely staggering. The supplier types it wrong on the invoice. Or your data entry person copies it wrong into Tally. Or the supplier's billing software has had the wrong number saved since 2019 and nobody has ever noticed because the invoice looks fine at a glance.

The thing is, verifying a GSTIN takes about ten seconds. Not ten minutes, not a phone call to the supplier, not a trip to the GST portal (well, not always). Ten seconds, and you've either confirmed the number is clean or caught a problem before it costs you anything. Here's exactly how.

What You're Actually Checking

When people say "verify a GSTIN," they usually mean one of two things, and the distinction matters.

The first is structural validation. Does this number follow the right format? Is the state code real? Does the PAN portion look like an actual PAN? Does the check digit match? This catches typos, transposed characters, and outright fabricated numbers. You can do this offline, instantly, without hitting any government server.

The second is status verification. Is this GSTIN actually registered on the GST portal? Is the registration active, or has it been cancelled or suspended? This requires a lookup on the official portal and tells you whether the entity behind the number is currently allowed to collect and remit GST.

Most people skip the first step and go straight to the portal. That works, but it's slow, especially when you've got thirty new vendor bills sitting in a stack. The smarter workflow is to run the structural check first (which takes seconds and catches the majority of problems), and only hit the portal for numbers that pass.

The Five Parts of a GSTIN

Before you can verify a GSTIN, it helps to know what you're looking at. Every GSTIN is built from five pieces, and each one tells you something specific.

GSTIN Breakdown: 27AABCU9603R1ZJ
Positions 1-2
27
Maharashtra
Positions 3-12
AABCU9603R
PAN
Position 13
1
Entity #
Position 14
Z
Reserved
Position 15
J
Check digit
Every GSTIN is five pieces: state code, PAN, entity number, the letter Z, and a check digit

State code (positions 1-2). Two digits, 01 through 38, representing the state or union territory where the business is registered. 27 is Maharashtra, 07 is Delhi, 29 is Karnataka. If you see 00 or 99, the number is junk. Our state code reference has the full list if you ever need to look one up.

PAN (positions 3-12). The business's ten-character Permanent Account Number. It follows its own format: five letters, four digits, one letter. The fifth letter tells you the entity type (C for company, P for individual, F for firm, and so on). If the PAN portion doesn't match this pattern, something is wrong.

Entity number (position 13). A single character (1-9 or A-Z) that distinguishes multiple GST registrations under the same PAN in the same state. Most businesses you deal with will have a 1 here. If you see a 2 or higher, the business has more than one registration in that state, which is perfectly legal but worth noting.

The letter Z (position 14). Always Z. No exceptions. It's reserved by the government for future use. If this position is anything other than Z, the GSTIN is invalid, full stop.

Check digit (position 15). This is the clever bit. The last character is calculated from the first fourteen using an algorithm called Luhn mod-36 (the same family of algorithm that validates credit card numbers, extended to handle letters). If anyone changes even one character in the first fourteen positions, the check digit stops matching. It's a built-in typo detector.

Step 1: Run the Structural Check

This is the ten-second part. Paste the GSTIN into a free validator and you'll immediately know whether the format is right, the state code exists, the PAN structure is valid, and the check digit matches.

If the check digit comes back as a mismatch, you've almost certainly got a typo. Don't waste time on the portal. Go back to the source: the invoice, the purchase order, the supplier's email signature, their GST certificate if you have it. One character is wrong somewhere, and until you find which one, the number is unusable for ITC purposes.

If everything passes, you've ruled out the most common class of errors. The number is structurally sound. But "structurally sound" is not the same as "active and valid," which brings us to step two.

Step 2: Confirm Active Status on the Portal

A GSTIN can be perfectly formatted and still belong to a registration that was cancelled six months ago. Or suspended. Or that was never issued in the first place (it's possible to construct a number that satisfies all the format rules without it corresponding to a real registration).

For any supplier you're about to do serious business with, take the extra thirty seconds and search the number on the official GST portal. What you're looking for is the registration status. "Active" is what you want. Anything else (Cancelled, Suspended, Inactive) is a problem, and you should not accept invoices from that supplier until it's sorted out.

The portal also shows you the legal name, trade name, registration date, and the type of taxpayer (Regular, Composition, etc.). If the name on the portal doesn't match the name on the invoice, that's a separate conversation worth having with your supplier before you book the bill.

When to Verify (and When Not to Bother)

I'm not going to pretend you should run both checks on every single bill that crosses your desk. If you've been buying from the same supplier for three years and their GSTIN hasn't changed, you don't need to re-verify it every month. Common sense applies.

That said, there are four situations where skipping verification is genuinely risky:

New supplier, first invoice. Always verify. Both the structural check and the portal lookup. Takes under a minute, saves you from building a relationship on a bad GSTIN that will haunt every future transaction.

High-value transaction. If the invoice is large enough that losing the ITC would actually hurt, verify. The threshold is different for every business. For a small shop, twenty thousand rupees might be the line. For a mid-size manufacturer, maybe two lakhs. You know your numbers.

Something looks off. The state code doesn't match the supplier's address. The entity type letter doesn't match what you'd expect (a "P" for an individual when you thought you were dealing with a company). The name on the invoice is subtly different from what's on the PO. Trust that instinct and check.

Start of a new financial year. Registrations get cancelled, compositions get revoked, mergers happen. A quick annual re-check of your top twenty suppliers is cheap insurance against a bad quarter.

What a Check Digit Mismatch Actually Means

When a validator flags a check digit mismatch, people sometimes panic. Don't. Nine times out of ten, it's a simple typo. Somebody hit R instead of T, or transposed two digits in the PAN. It doesn't mean the supplier is fraudulent. It means a human being typed fifteen characters and got one wrong, which is something human beings are remarkably good at doing.

The fix is straightforward. Ask the supplier for their GST certificate or registration acknowledgement (the original document from the portal). Compare it character by character with what's on the invoice. Find the discrepancy, get a corrected invoice, move on. The whole thing usually takes one email and one day.

In the rare case where the supplier insists their number is correct but the checksum still fails, have them search their own GSTIN on the portal. If the portal shows it as valid, the issue might be in the font on the invoice (I vs 1, O vs 0, that sort of thing). If the portal doesn't find it either, that's a bigger conversation.

Verifying GSTINs in Bulk

If you're processing a month's worth of invoices and need to check thirty or fifty GSTINs at once, doing them one at a time is tedious. The structural check (format, state code, checksum) can be automated easily. Upload your invoices to the invoice reader, and every extracted GSTIN is automatically validated as part of the extraction. Rows with checksum failures get flagged for review, so you only spend time on the ones that actually need attention.

The portal lookup, unfortunately, can't be automated (the GST portal doesn't offer a public API for bulk lookups, and scraping it violates their terms). So for the status check, you're still doing them individually. But since the structural check catches the majority of bad numbers, the portal lookups you actually need to do will be a much smaller list.

Related Tools

Processing a Stack of Invoices?

Upload your PDF invoices and get every GSTIN extracted and validated automatically. Checksum failures are flagged so you only review what needs attention.

Convert to Excel

Frequently Asked Questions

How can I verify a GST number for free?

Two ways. For a quick structural check (format, state code, PAN, checksum), use any free GSTIN validator tool. That catches typos and fabricated numbers in seconds, no signup needed. For full verification (business name, address, filing status, whether the registration is active or cancelled), search the number on the official GST portal. Both steps together take under a minute.

What is the Luhn mod-36 checksum in a GSTIN?

The last character of every GSTIN is a check digit computed from the first fourteen characters using an algorithm called Luhn mod-36. It works like a built-in typo detector. If any of the fourteen characters is wrong, the check digit won't match, and a validator will flag it immediately. The algorithm is the same one used in credit card numbers, extended to handle both letters and digits.

Can a GSTIN pass validation but still be fake?

Yes. A structurally valid GSTIN (correct format, valid state code, correct checksum) could belong to a registration that has been cancelled, or it could be a number that was never issued but happens to satisfy the format rules. That's why structural validation alone isn't enough for high-value transactions. Always confirm active status on the GST portal before onboarding a new supplier.

How often should I re-verify a supplier's GSTIN?

Once at onboarding is the minimum. Beyond that, a quick re-check every quarter or at the start of each financial year is sensible, especially for suppliers you don't deal with frequently. Registrations do get cancelled or suspended, and finding out three months late means three months of ITC you can't claim.

What does it mean when the check digit shows a mismatch?

Almost always a typo. One wrong character anywhere in the first fourteen positions will cause the check digit to fail. Ask the supplier to resend their GSTIN, double-check the invoice, or look it up on their letterhead or GST certificate. In rare cases it could mean the number was fabricated entirely.