Filingo
toolsgstin-validator

GSTIN, PAN and TAN validator

Paste one ID or a whole column. Catches a mistyped character using the GSTIN check digit.

A1fxpaste GSTINs, PANs or TANs: one per line, or a whole column from Excel

A GSTIN's last character is a check digit calculated from the first 14, so one mistyped character is caught here without contacting the GST portal. This confirms the number is well-formed; it does not confirm that the registration is active.

IN SHORT

This free validator checks GSTIN, PAN and TAN numbers one at a time or in bulk. For a GSTIN it verifies the check digit, so a single mistyped character is caught, and it shows the state and the PAN inside it. Nothing is sent to any server, and it confirms the number is well-formed rather than that the registration is active.

STEP BY STEP

How it works

  1. Paste one number, or copy a whole column of GSTINs, PANs or TANs from Excel.
  2. Each is checked as you type: GSTINs against the check digit and state code, PANs and TANs against their format.
  3. Download the result as Excel, with the state, embedded PAN and holder type filled in.

GOOD TO KNOW

Common questions

How does the GSTIN check digit work?
The 15th character of a GSTIN is calculated from the first 14 using a base-36 checksum. If any character is mistyped, the calculated digit no longer matches, so the error is caught without contacting the GST portal.
Does this confirm the GSTIN is active?
No. It confirms the number is well-formed. Whether the registration is active, cancelled or suspended can only be seen on the GST portal.
What does the fourth character of a PAN mean?
It is the holder type: P individual, C company, H HUF, F firm or LLP, A association of persons, T trust, B body of individuals, L local authority, J artificial juridical person, G government.
Can I do this inside Google Sheets?
Yes. The free Filingo add-on gives you =GSTIN_VALID(), =GSTIN_CHECK(), =GSTIN_STATE() and =PAN_TYPE(), each of which accepts a whole range.