e-Invoice Mandate Threshold Check API

Programmatically check if a supplier GSTIN is subject to the e-Invoice mandate. Returns the applicable turnover threshold and effective date.

Get sandbox keys → View OpenAPI docs Talk to sales

What is the e-Invoice Mandate Threshold Check API?

The e-Invoice mandate applies to suppliers whose aggregate annual turnover crosses a CBIC-notified threshold. The threshold has dropped over time — INR 500 Cr (2020), INR 100 Cr (2021), INR 50 Cr (2022), INR 20 Cr (2022), INR 10 Cr (2022), INR 5 Cr (2023). This API tells you if a given supplier GSTIN is currently subject to the mandate.

Used by ERP systems to dynamically route invoices: above-threshold supplier → IRN generation flow; below-threshold → regular invoice. Avoids the cost + complexity of e-Invoice for suppliers who aren't legally required.

Quick spec

Code examples

curl Node.jsPythonJava
curl -X GET 'https://apisandbox.whitebooks.in/einvoice/api/v1/einvoice/mandate-check' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'
Node.js
const res = await fetch('https://apisandbox.whitebooks.in/einvoice/api/v1/einvoice/mandate-check', {
  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/einvoice/api/v1/einvoice/mandate-check',
    headers={'Authorization': f'Bearer {access_token}'},
)
data = resp.json()
Java
HttpRequest req = HttpRequest.newBuilder()
    .uri(URI.create("https://apisandbox.whitebooks.in/einvoice/api/v1/einvoice/mandate-check"))
    .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/einvoice. Same payload, same response shape.

Frequently asked questions

What's the current threshold?

INR 5 Cr aggregate annual turnover (effective 1-Aug-2023 per CBIC). API always returns the current threshold + applicable effective date.

How is "aggregate turnover" defined?

Per Section 2(6) of CGST Act — total supplies including exempt + zero-rated. The API computes this from GSTR filings automatically.

Can I check historical thresholds?

Yes — pass as_of_date=YYYY-MM-DD to check threshold applicability for a past date.

Does the API auto-refresh thresholds?

Yes — WhiteBooks tracks CBIC notifications and updates thresholds within 24 hours of publication.

Explore the full e-Invoice API

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

Open the e-Invoice API page →

Related e-Invoice API endpoints

IRN Generation API → IRN Cancellation API → Bulk IRN Generation API (1,000/call) → Signed QR Code Retrieval API →