GSTIN and PAN validation
Villva validates GSTIN and PAN as you type them, so a malformed tax identifier is caught before it can break an invoice, e-invoice (IRN), e-way bill or GST return.
GSTIN validation
Section titled “GSTIN validation”A GSTIN is 15 characters: a 2-digit state code, a 10-character PAN, an entity digit, the letter Z, and a final check digit. Villva checks all of the following:
- The full 15-character structure
- A valid 2-digit state code
- The PAN embedded inside the GSTIN
- The final check digit (worked out with the official calculation, not just the length)
Examples:
| Input | Result |
|---|---|
33ABCDE1234F1Z5 | Accepted |
33ABCDE1234F1Z9 | Rejected, bad check digit |
99ABCDE1234F1Z5 | Rejected, invalid state code |
33ABCDE1234F1Z | Rejected, wrong length |
33abcde1234f1z5 | Rejected, wrong case/format |
PAN validation
Section titled “PAN validation”A PAN follows the pattern of 5 letters, then 4 digits, then 1 letter. ABCDE1234F is accepted; ABCD1234FG is rejected because it does not match that pattern.
Place of supply
Section titled “Place of supply”The state code embedded in a GSTIN identifies the supplier or buyer state. Villva reads that state code and uses it to decide the place of supply, which in turn decides how tax is applied:
- Same state (intra-state): tax is split as CGST + SGST.
- Different states (inter-state): tax is charged as IGST.
So a correct GSTIN is not just a formatting nicety: it directly drives whether an invoice carries CGST + SGST or IGST.
When and where it applies
Section titled “When and where it applies”- Validation runs as you type and is then checked again authoritatively when you save. The check when you save is the one that counts, so skipping past the on-screen warning does not let a bad identifier through.
- An invalid GSTIN or PAN is rejected with a specific message and blocks the record from being used to generate an IRN, generate an e-way bill, or file a GST return until you correct it.
- Customer and vendor masters store the GSTIN that this validation checks, so the place-of-supply decision on every document raised for that party stays correct.