Skip to content
TheSpreadFix

Validate GSTIN Numbers in Bulk

Upload a CSV or Excel file with a GSTIN column and check every number against the 15-character format: 2-digit state code, 10-character PAN, entity number, default 'Z' and a check digit. Invalid patterns, missing digits and common typos are flagged instantly. This is format validation, not a GST portal lookup — useful for cleaning B2B customer and vendor master lists before filing.

Drop a CSV or Excel file here

.csv, .xlsx, .tsv

Your file stays on your device. Validation runs in your browser — nothing is uploaded.

How it works

  1. Step 1

    Upload your file

    CSV or XLSX with a GSTIN column. The column is detected from its name or contents.

  2. Step 2

    Review results

    Every GSTIN is checked for correct length, valid state code, PAN structure and check digit. Invalid rows are listed with the specific error.

  3. Step 3

    Download clean data

    Get the file with a validation status column, or download only the invalid rows for correction.

What it checks and fixes

Length and character check

GSTIN must be exactly 15 alphanumeric characters. Shorter, longer or special-character entries are caught.

State code validation

The first two digits must be a valid Indian state or union territory code (01–37 plus 97 for Other Territory).

PAN structure

Characters 3–12 must follow PAN format: 5 letters, 4 digits, 1 letter. The 4th letter indicates entity type (P, C, H, A, B, G, J, L, F, T).

Check digit verification

The 15th character is computed from the first 14 using a weighted modulus algorithm. A mismatched check digit flags likely typos.

GSTIN format structure

A Goods and Services Tax Identification Number is a 15-character alphanumeric string assigned to every registered business in India. Its structure encodes the state, the business's PAN and a check digit:

PositionCharactersMeaning
1–2Two digitsState / union territory code (e.g. 07 for Delhi, 27 for Maharashtra, 29 for Karnataka)
3–12Ten alphanumericThe entity's PAN (Permanent Account Number)
13One alphanumericEntity number for the same PAN in the same state (1–9, then A–Z)
14Letter 'Z'Reserved — always 'Z' by default
15One alphanumericCheck digit (computed from positions 1–14)

Example: 27AAPFU0939F1ZV — state 27 (Maharashtra), PAN AAPFU0939F, entity 1, Z, check digit V.

Common GSTIN data entry errors

  • Truncated numbers — Excel dropping leading zeros from the state code (07 becomes 7) or truncating to 14 characters.
  • Letter-digit confusion — O (letter) typed instead of 0 (zero), I instead of 1, S instead of 5.
  • Missing or wrong check digit — the 15th character was typed manually instead of generated.
  • Spaces or hyphens inserted — 27-AAPFU0939F-1ZV passes visual review but fails automated checks.
  • PAN portion invalid — the embedded PAN doesn't follow the 5-letter/4-digit/1-letter pattern.

Why bulk GSTIN validation matters

Indian businesses need correct GSTINs on every invoice for input tax credit. If your customer or vendor master file has invalid GSTINs, GST returns (GSTR-1, GSTR-2A) won't reconcile, e-way bill generation fails, and you risk ITC disallowance during audits.

Format validation catches typos and data-entry errors before you push records into your accounting system. It doesn't replace portal verification (which confirms the GSTIN is active and matches the legal name), but it eliminates the obviously wrong entries that would fail at the portal anyway.

Tips for maintaining clean GSTIN data

  • Store GSTINs as text in Excel — format-as-text prevents leading-zero loss and scientific notation.
  • Validate at entry time, not just at filing time — catch errors when onboarding a new vendor.
  • Cross-check the embedded PAN (characters 3–12) against your PAN records for the same entity.
  • Re-validate periodically — GSTINs can be cancelled or suspended by authorities.

Frequently asked questions

Does this tool check if a GSTIN is active on the GST portal?

No. It validates the format — length, state code, PAN pattern and check digit. Confirming that a GSTIN is active and matches a legal name requires a GST portal lookup, which this tool does not perform.

Why does Excel corrupt my GSTIN column?

Excel treats alphanumeric strings that start with digits as numbers, dropping leading zeros and sometimes converting to scientific notation. Import the CSV with the GSTIN column set to Text format, or upload it here — the tool reads it correctly regardless.