SNC-WF-090 · Free Tier · Compliance & B2B

Validate Indian GST Numbers Offline Before Invoicing Customers

SNC-WF-090 · Offline Customer GSTIN Checksum & Format Validator (Free Tier)

A free, local Python tool that protects your B2B invoicing and GST tax compliance. It validates 15-character Indian GSTIN tax IDs completely offline using the official GST Council Modulo-36 checksum algorithm, state code tables, and entity PAN regex—quarantining invalid tax IDs before you generate invoices or submit GSTR-1 returns.

PRODUCT SUMMARY AT A GLANCESNC-WF-090
Primary OutcomeValidates Indian GST numbers (GSTIN) offline against the official government Modulo-36 checksum algorithm, catching typos and fraudulent tax IDs before invoicing.
How It RunsSelf-Hosted Python 3.8+ (Runs on your own computer or server)
Setup ExpectationsFree to self-host on your own hardware. Free workflows never run on Sanocea infrastructure. Optional assisted setup: ₹500 one-time.
Verification StatusCode & Logic Tested: Tested against statutory GST Council specifications and official test vectors
The 3-Step Process in Simple English
1. Input

Single GSTIN string or B2B customer CSV with GSTIN column.

2. Transformation

Local Python script validates 15-char structure, state code, PAN regex, and computes Modulo-36 check digit.

3. Output

validated_gstin_ledger.csv, invalid_gstins_quarantined.csv, and summary stats.

Free to self-host. Want Sanocea to set it up? ₹500 one-time.

Setup scope covers installation on customer-controlled infrastructure, configuration of authorised integrations, functional testing and handover.

Hosting, third-party charges and ongoing support are excluded unless separately agreed. Free workflows must never run on Sanocea-hosted infrastructure.

Direct Download or Assisted Setup: Download the free toolkit below, or contact engineering on WhatsApp for ₹500 assisted setup on your machine.

What Goes Wrong in an Ordinary Working Day

B2B buyers frequently enter mistyped or fake GST numbers at checkout. When you file GSTR-1 returns, mismatched tax IDs cause input tax credit rejections and expensive accountant reconciliation fees.

The Impact on Your Business & Customers

Invalid GSTINs trigger tax portal filing errors and buyer disputes when your customers cannot claim input tax credit (ITC) on their business purchases.

What This Tool Does & What Changes for You

Takes a list of customer GST numbers, tests them against the government Modulo-36 checksum algorithm and 15-character structure, and separates valid tax IDs from typos.

What Changes in Practice:

You catch GSTIN errors immediately upon checkout or bulk import, requesting corrected tax certificates before generating final tax invoices.

Concrete Before & After Example (Actual Code Output)

Shows how an invalid GST number with a typo in its checksum digit is caught offline.

INPUT: Customer B2B Tax NumbersInput File
customer_name,gstin
Acme Traders Surat,24AAACA1234A1Z5
Invalid Buyer Mumbai,27AAACA1234A1Z9
OUTPUT: invalid_gstins_quarantined.csvnormalized_inventory.csv
customer_name,gstin,valid,failure_reason
Invalid Buyer Mumbai,27AAACA1234A1Z9,False,CHECKSUM_FAILED (Expected '5', got '9')

Catches typographical errors before issuing tax invoices, preventing B2B input tax credit rejections.

What Changed vs. What Remained Unchanged

✓ What Changed (Normalized):
  • Verified mathematical Modulo-36 checksum without calling government GST portal APIs
  • Isolated fake or mistyped GST numbers into invalid_gstins_quarantined.csv
  • Validated Indian state code prefixes (01 to 38)
ℹ What Remained Unchanged:
  • Valid customer records passed to validated_gstin_ledger.csv
  • 100% offline—zero GST portal credentials or API fees required

What You Need Before Getting Started

  • Any computer or server running Linux, macOS, or Windows.
  • Python 3.8 or higher (Standard library only; zero pip installations).

Technical Setup Guidance: 100% offline compute. Does not connect to the Internet or make external API calls.

Setup Difficulty & Expected Time

Takes 2 minutes. Download the free script and run it directly with Python.

Step-by-Step Run Instructions (Zero-Code Terminal Run)

  1. Download and unzip snc-wf-090-gstin-validator.zip.
  2. Place your customer CSV in data/customers.csv (or pass a single GSTIN via CLI).
  3. Run: python3 gstin_validator.py --input data/customers.csv
  4. Open validated_gstin_ledger.csv for clean records and invalid_gstins_quarantined.csv for bad tax IDs.
  5. Request updated GST certificates from flagged B2B buyers.

What You Receive in the Download Archive

Every deliverable is clean, self-contained, and ready for immediate deployment. You receive the complete files, configuration templates, setup guides, and automated tests.

File NameDeliverable Description
validate.pyStandalone Python 3.8+ offline GSTIN validation script and module
README.mdStep-by-step usage guide, CLI examples, and algorithm explanation
SETUP.mdQuickstart instructions for local setup and testing
COSTS.mdDetailed recurring cost disclosure (₹0 ongoing fees)
LICENSING.mdSanocea Open Workflow License (MIT Compatible, free commercial self-hosting)
tests/test_gstin_validator.pyAutomated test suite verifying valid, invalid, and edge-case GSTINs

Architecture Diagram & Tested Capabilities

For technical teams or developers assisting your business, below is the visual execution architecture and automated verification breakdown:

Validate Indian GST Numbers Offline Before Invoicing Customers Architecture Pipeline Diagram
⚡Deterministic execution flow: runs on your own compute without telemetry tracking.

Verification Disclosure

100% offline verification using deterministic Modulo-36 arithmetic. Distinguishes structural/checksum validity from live GST portal active taxpayer registration without requiring paid GSP APIs.

15-Character Syntax & Regex Check

Validates state code, PAN format, entity number, and Z default character.

Fully Tested

Official Modulo-36 Check Digit

Calculates checksum according to GST Council specifications.

Fully Tested

Zero Internet Dependency

Runs completely offline without transmitting taxpayer information to external servers.

Fully Tested

Documented Limitations & Third-Party Costs

We believe in complete transparency. Review the documented technical boundaries and external service fee breakdown below prior to obtaining the package:

⚠️Documented Boundaries & Considerations

  • Mathematical Checksum Validator: Confirms structural and mathematical checksum validity; does not query the live government GST database for active business status.
  • Offline Standard Library: Zero API calls or paid third-party GST lookup subscriptions required.
ComponentEstimated CostDetails & Free Tier Allowances
GSTIN Validator Tool₹0 (Free to self-host)Download full source code and self-host on your own machine
Optional Assisted Setup₹500 one-timeInstallation on customer-controlled infrastructure, CLI integration, and handover
API & Recurring Fees₹0 ForeverRuns 100% offline with zero external network requests

Platform Compatibility & Technical Specifications

Operating System
Linux, macOS, Windows
Runtime / Python
Python 3.8+ Standard Library
Supported Platforms
Any accounting system or billing pipeline
Required Inputs
  • 15-character GSTIN strings or customer invoice batch CSV
Generated Outputs
  • Boolean validation result (True/False)
  • State attribution, entity classification, and checksum breakdown
Free Self-Hosted SoftwareInstant Download · Optional ₹500 Setup

Download or Set Up SNC-WF-090

Receive the complete distributable archive containing validate.py, step-by-step setup guides, mock fixtures, and automated test suites.

Free to self-host. Want Sanocea to set it up? ₹500 one-time.

Setup scope covers installation on customer-controlled infrastructure, configuration of authorised integrations, functional testing and handover.

Hosting, third-party charges and ongoing support are excluded unless separately agreed. Free workflows must never run on Sanocea-hosted infrastructure.

Download Free Package (.zip)Chat on WhatsAppWe reply within 2 business days (Monday to Saturday, 9:00 AM to 9:00 PM IST)

Frequently Asked Questions

Does this tool require paid GST Suvidha Provider (GSP) API calls?

No. It uses purely offline algorithmic validation based on official Indian GST Council Modulo-36 checksum standards with zero external API fees.

Can it validate thousands of customer GSTINs in bulk?

Yes. Because execution happens in pure Python standard library in-memory, it validates over 10,000 numbers in less than a second.

What does this script verify?

It validates length (15 characters), valid 2-digit state codes (01 to 38), alphanumeric PAN structure, standard 14th character ('Z'), and calculates the 15th checksum character.

Offline GSTIN Validation: Structure, State Directory Codes, and Modulo-36 Checksum Verification

How Indian B2B merchants validate buyer tax identification numbers offline, why GSTR-1 filings reject malformed GST numbers, and how mathematical algorithms prevent input credit losses.

Read Field Guide on Sanocea Insights →

Explore Related Self-Hosted Tools

SNC-WF-100Self-Hosted Python 3.8+

Reconcile Cash on Delivery (COD) Courier Remittances and Hidden Fee Deductions

Courier COD Remittance & Fee Deduction Reconciler (Free Tier)

A free, local Python reconciliation tool that stops courier revenue leaks on Cash on Delivery orders. It compares your courier remittance payout files against delivered store orders, identifying unpaid orders, volumetric weight disputes, and unauthorized return fees so you can claim missing cash from shipping partners.

SNC-WF-022Self-Hosted Python 3.8+

Extract Payment Gateway Notifications into a Clean Reconciliation Ledger

Payment-Email Inbound Rail & Receipt Audit Ledger (Free Tier)

A free, local Python tool that turns messy payment confirmation emails into a structured financial ledger. It extracts transaction IDs, customer details, gross amounts, MDR processing fees, and net payouts from email exports (.eml or text dumps)—creating a unified reconciliation CSV ready for your accounting team.

C02Managed Service

See Where Every Order's Money Went & Recover Lost Marketplace Revenue

E-Commerce Settlement & Fee Matcher

An enterprise marketplace reconciliation engine that automatically audits bank payout sheets from Amazon, Flipkart, and Myntra against your original order records. It isolates commission overcharges, unexpected weight penalties, uncredited customer returns, and missing remittances—generating ready-to-file dispute spreadsheets that recover thousands of rupees in lost margin every month.