GSTIN Verification API

Verify any GSTIN against the official GSTN database. Returns legal name, registration status, business type, address, and compliance score.

Get sandbox keys → View OpenAPI docs Talk to sales

What is the GSTIN Verification API?

The GSTIN Verification API is a real-time check against the live GSTN database. Pass a 15-character GSTIN and receive structured information: legal name, trade name, principal place of business, registration date, current status (active / suspended / cancelled), taxpayer type (regular / composition / casual), and CBIC-published compliance score.

Used heavily in vendor onboarding (verify a vendor is GST-registered before issuing the first PO), invoice receipting (confirm the supplier GSTIN matches the invoice), and KYC pipelines. WhiteBooks caches verified results for 24 hours per GSTIN to reduce GSTN API costs.

Quick spec

Code examples

curl Node.jsPythonJava
curl -X GET 'https://apisandbox.whitebooks.in/gst/api/v1/gstin/27AAAPL1234C1ZP' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'
Node.js
const res = await fetch('https://apisandbox.whitebooks.in/gst/api/v1/gstin/27AAAPL1234C1ZP', {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer ' + accessToken,
    'Content-Type': 'application/json',
  },
});
const data = await res.json();
Python
import requests

resp = requests.get(
    'https://apisandbox.whitebooks.in/gst/api/v1/gstin/27AAAPL1234C1ZP',
    headers={'Authorization': f'Bearer {access_token}'},
)
data = resp.json()
Java
HttpRequest req = HttpRequest.newBuilder()
    .uri(URI.create("https://apisandbox.whitebooks.in/gst/api/v1/gstin/27AAAPL1234C1ZP"))
    .header("Authorization", "Bearer " + accessToken)
    .header("Content-Type", "application/json")
    .GET()
    .build();
HttpResponse<String> resp = HttpClient.newHttpClient()
    .send(req, BodyHandlers.ofString());

Integrate in 3 steps

  1. Sign up at accounts.whitebooks.in — sandbox credentials issued instantly, no sales gate.
  2. Make your first call against the sandbox base URL using the code example above. Validate against your local model.
  3. Move to production once your tests pass — switch host to https://api.whitebooks.in/gst. Same payload, same response shape.

Frequently asked questions

Is the verification real-time?

Yes — the API queries GSTN live. Results are cached for 24h to handle bulk vendor onboarding affordably.

What does compliance_score represent?

A 0-100 score published by GSTN based on filing regularity, ITC matching, and tax payment history. Useful for vendor risk assessment.

Are bulk verifications supported?

Yes — POST /api/v1/gstin/verify-bulk accepts up to 500 GSTINs per call. Async processing for large jobs.

What if the GSTIN is invalid format?

API returns HTTP 422 with field-level error pointing at the malformed segment (PAN, state code, entity code, or check digit).

Explore the full GST API

This is one endpoint inside the WhiteBooks GST API suite. See the full documentation — every endpoint, every parameter, every error code.

Open the GST API page →

Related GST API endpoints

GSTR-1 Filing API → GSTR-2B Fetch API → GSTR-3B Filing API → GSTR-9 Annual Return API →