Guide
Validating India GSTIN: state code, PAN and check character
Every business registered under India’s Goods and Services Tax has a 15-character identifier, the GSTIN, that appears on invoices, returns and e-way bills. A wrong character in a supplier’s GSTIN can lead to rejected input tax credit, so accounting teams often check numbers before posting them. This validator tests a GSTIN the way a careful clerk would, by reading each part, and it does it without sending anything anywhere.
The fifteen positions
Characters 1 and 2 are the state or union territory code, for example 27 for Maharashtra and 07 for Delhi. Characters 3 to 12 are the PAN of the taxpayer. Character 13 numbers the registrations of that PAN within the state: 1 for the first, 2 for the second, and letters after 9. Character 14 is always the letter Z, reserved by the system. Character 15 is the check character, which is computed from the other fourteen.
How the check character works
Each of the fourteen characters is converted to a value in base 36, where the digits 0 to 9 are 0 to 9 and the letters A to Z are 10 to 35. Values are multiplied by a weight that alternates between 1 and 2, starting with 1 on the first character. Each product is split into a quotient and remainder after dividing by 36, and the two parts are added. The sum of all of them is taken modulo 36, subtracted from 36 and taken modulo 36 again, and the result is converted back to a character. That final character must equal the fifteenth.
A worked example
Press Sample to check four numbers. 27AAPFU0939F1ZV is valid: state code 27 is Maharashtra, the PAN is AAPFU0939F, the PAN’s fourth character F stands for a firm or LLP, the registration number for this PAN in the state is 1 and the check character is V. 27AAPFU0939F1ZA is the same number with a wrong last character; the page says the check character does not match and that the correct one is V. 99AAPFU0939F1ZX fails too, and its state code 99 is shown as “Centre Jurisdiction”; the correct check character there is K. 29ABCDE1234F1Z has 14 characters instead of 15 and is rejected on length.
What the embedded PAN tells you
The fourth character of a PAN says what kind of holder it is: P for a person, C for a company, F for a firm or LLP, H for a Hindu undivided family, T for a trust, and so on. That is why a GSTIN whose holder type contradicts the business, such as P for something called a Private Limited company, is worth a second look. The fifth character is the first letter of a surname or name, which can be compared with the name on the invoice.
Using it in practice
Paste supplier lists to find mistyped numbers before reconciliation. When a number fails, the page shows the check character that would have been correct, which helps trace a typing slip. Keep in mind that a validator can only catch errors that break the pattern; a number with a consistent check character but belonging to someone else will pass.
Limits
The page cannot tell whether a GSTIN is registered or active, or give the legal name. State codes follow the common list and may lag behind administrative changes. Always confirm important registrations on the GST portal.
Related tools
- PAN and TAN Format Validator examines the PAN embedded in a GSTIN.
- Verhoeff Algorithm Validator covers another Indian check-digit scheme.
- SWIFT/BIC and IFSC Decoder validates Indian bank codes.
- IBAN Validator checks international bank accounts.
Checked against the current version of the GSTIN Validator on .

