PlateKit India Pro v0.1.0 · India bundle on PlateKit

PlateKit India Pro · the India commercial bundle on PlateKit

PlateKit,
tuned for Indian plates.

Indian ANPR deployments fail on three things — HSRP holograms, multi-line truck plates, and the Vahan registry. India Pro solves all three, out of the box, on top of PlateKit. It is not a separate engine: it is the India-specific commercial bundle that switches PlateKit into region="in" with the india-pro profile — loading HSRP fine-tune weights for AIS-159 plates, stitching multi-line truck plates, stripping Devanagari / Tamil / Kannada / Telugu overlays before parsing, and shipping the authenticated Masters India Vahan connector across all 36 state and UT codes. Bundled into every paid PlateKit Commercial tier — with INR billing, OEM authorisation letters, and an India support SLA.

from platekit import ANPR
anpr = ANPR(region="in", profile="india-pro")
for e in anpr.read("truck_rear.jpg"):
    print(e.normalized_text, e.layout)   # 'MH12AB1234' 'multi_line'
36
State & UT codes
+ BH series · legacy codes (TS · OR · UA · DN · JK)
IN + IN-HSRP
Region packs loaded
india-pro profile loads HSRP fine-tune
4
Indian scripts handled
Devanagari · Tamil · Kannada · Telugu
1
Vahan connector shipped
Masters India · v0.1.0 · 5 more on roadmap
21
Connector unit tests
Masters India client — auth, retry, envelope (pipeline tests separate)
INR
Default billing
GST invoice · GSTIN captured at checkout

01 — Who it's for

Built for the teams deploying ANPR on Indian soil.

Indian plates are not a generic region. HSRP holograms, 10–12 digit laser PINs, BH-series formats, multi-line truck plates, painted Devanagari overlays, 36 state and UT codes, and the Vahan registry behind it all. India Pro is the bundle that gives a PlateKit deployment every one of those out of the box — for the integrators, operators, and agencies who have to win and run the work.

— Buyer · 01 · System integrators

India ITMS / Smart City SIs

Bidding ANPR, ITMS, e-Challan and MLFF tolling RFPs. Need an OEM authorisation letter naming them as authorised SI, plus an engine that reads HSRP and state-RTO formats on day one.

— Buyer · 02 · Tolling & highways

NHAI toll & MLFF operators

Free-flow and barrier lanes where every commercial vehicle plate runs over two or three lines. Need multi-line stitching and Vahan enrichment for the owner / class / fuel record behind the plate.

— Buyer · 03 · Police & enforcement

State traffic police

e-Challan evidence pipelines that must read HSRP plates reliably and resolve them against the Vahan registry. Out-of-state vehicles flagged, not silently dropped.

— Buyer · 04 · Parking operators

Smart-city parking

State-RTO-aware parking zones inside a single state. Want stricter validation than the all-India default and a clean way to surface out-of-zone plates without dropping reads.

02 — What India Pro adds over base PlateKit

A delta on PlateKit. Everything an Indian deployment needs.

India Pro is a delta over the open-source PlateKit core. PlateKit ships the formats — the India region pack, the HSRP / GSTIN / PAN format validators, and the Vahan Protocol. India Pro turns the region pack on, loads the HSRP fine-tune profile, and ships the integrations the core deliberately leaves out. Six capability beats, each one a reason a generic ANPR vendor loses the India job.

01 · HSRP

For every post-2019 vehicle

HSRP-aware fine-tune — AIS-159 plates.

The india-pro profile loads HSRP fine-tune weights on top of the IN region pack, so the model card reports ['IN', 'IN-HSRP']. Validate the laser-etched 10–12 digit PIN with is_hsrp_pin() and confirm it against the plate with hsrp_matches_plate().

ANPR(region="in", profile="india-pro")
02 · region pack

For all-India coverage

36 state & UT codes — plus BH series.

The India region pack covers all 36 current state / UT codes plus legacy codes (TS, OR, UA, DN, JK pre-2019), the BH (Bharat) series, and military, diplomatic, temporary, trade-certificate and vintage plate shapes. region="auto" also picks it from the first frame.

model_card.region_packs → ['IN', 'IN-HSRP']
03 · multi-line

For trucks & motorcycles

Multi-line truck plates — stitched in order.

Commercial-vehicle plates that run over two or three lines are stitched into one canonical read. event.layout reports single_line, multi_line or square_motorcycle; pass layout_hint="multi_line" to skip single-line detection at truck-only sites.

e.raw_text 'MH 12\nAB 1234' → e.normalized_text 'MH12AB1234'
04 · scripts

For bilingual plate overlays

Devanagari, Tamil, Kannada, Telugu OCR.

The cleanup step strips painted frame phrases (भारत, ARMY), state-name overlays, and the hot-stamped IND HSRP prefix before parsing. Script-agnostic — Tamil, Kannada and Telugu overlays are handled the same way. strict_strip_overlays removes them earlier when needed.

india_pipeline.process("ARMY भारत IND MH12AB1234")
05 · Vahan connector

For owner / class / fuel enrichment

Authenticated Vahan — Masters India, shipped.

MastersIndiaVahanClient implements the open-source VahanClient Protocol against the Masters India RC-search endpoint: bearer auth, the vendor JSON envelope, the DD-MM-YYYY / DD/MM/YYYY / YYYY-MM-DD date quirks, and exponential-backoff retry on 429 / 5xx. NETC FASTag, IIB and e-Challan connectors are on the roadmap.

platekit_india_pro · MastersIndiaVahanClient
06 · commercial

For Indian tenders & procurement

Indian Commercial Licence — INR + OEM letters.

Bundled into the PlateKit Commercial licence. GST-compliant invoicing, an OEM authorisation letter on company letterhead for tenders, and an India support SLA available on request.

Bundled with the PlateKit Commercial licence

India Pro is a delta package: it ships the HSRP profile and the authenticated connectors. The format validators, the India region pack, and the rate-limiting Vahan wrapper live in the open-source PlateKit core. For every non-India topic — install, full CLI, FastAPI service, Docker, audit-chain hand-off — see PlateKit.

03 — How to use

Install into the same PlateKit venv.

India Pro installs from the private repo into the same virtual environment as PlateKit — never a shared one. On licence activation, the Licensor adds your named contacts as read-only collaborators. A metadata-only stub on public PyPI deliberately errors at install with licence-acquisition instructions, so an accidental pip install platekit-india-pro never silently breaks a build.

# Install into the SAME venv as PlateKit (read-only repo access on licence activation).
cd platekit-india-pro
.\.venv\Scripts\Activate.ps1
pip install "git+ssh://git@github.com/icycastle/platekit-india-pro.git@v0.1.0"

# Verify:
python -c "import platekit_india_pro; print(platekit_india_pro.__version__)"   # 0.1.0

# Enable the India HSRP profile on the standard PlateKit pipeline:
python -c "from platekit import ANPR; print(ANPR(region='in', profile='india-pro').model_card.region_packs)"
# ['IN', 'IN-HSRP']
# Install into the SAME venv as PlateKit (read-only repo access on licence activation).
cd platekit-india-pro
source .venv/bin/activate
pip install "git+ssh://git@github.com/icycastle/platekit-india-pro.git@v0.1.0"

# Verify:
python -c "import platekit_india_pro; print(platekit_india_pro.__version__)"   # 0.1.0

# Enable the India HSRP profile on the standard PlateKit pipeline:
python -c "from platekit import ANPR; print(ANPR(region='in', profile='india-pro').model_card.region_packs)"
# ['IN', 'IN-HSRP']
# Authenticated Vahan RC lookup. Credentials come from Masters India —
# India Pro ships the connector, never the credentials.
import os
from platekit_india_pro import MastersIndiaVahanClient
from platekit.india_vahan import RateLimitedVahanClient

client  = MastersIndiaVahanClient(api_key=os.environ["MASTERS_INDIA_KEY"])
limited = RateLimitedVahanClient(client, requests_per_second=10)   # OSS wrapper honours the vendor cap

record = limited.fetch("MH12AB1234")
if record is None:
    ...   # plate not in registry (vendor 404 / RECORD_NOT_FOUND)
else:
    print(record.owner_name, record.vehicle_class, record.fuel_type)
    send_to_audit_chain(record)   # your host product owns the Ed25519 chain

The Masters India client raises a clean exception hierarchy: MastersIndiaAuthError (401 / 403 — credentials missing or revoked), MastersIndiaTransientError (429 / 5xx / network errors after retries exhaust), and MastersIndiaResponseError (other 4xx, non-JSON body, unexpected envelope). Swapping aggregators is a single line — every connector implements the same VahanClient Protocol.

04 — Connectors

The integrations PlateKit leaves out of the core.

The open-source PlateKit core ships the Vahan Protocol, the rate-limiting wrapper, and the response normaliser. India Pro ships the authenticated REST clients that plug behind that Protocol — the per-vendor auth, retry logic, and JSON-envelope quirks that carry vendor SLAs and cannot live in the open core. One connector is shipped today; five more are scheduled.

ConnectorClass · what it doesStatus
Vahan · Masters IndiaMastersIndiaVahanClient — authenticated RC lookup, retry, envelope mappingshipped · v0.1.0
Vahan · SurepassSurepassVahanClient — authenticated RC lookup via Surepassplanned · v0.2.0
Vahan · SignzySignzyVahanClient — authenticated RC lookup via Signzyplanned · v0.2.0
NETC FASTagNETCClient — NPCI NETC FASTag transaction polling and tag lookupplanned · v0.3.0
IIB motor-policyIIBClient — Insurance Information Bureau motor-policy lookupplanned · v0.3.0
e-Challan submissionEChallanSubmitter — submit violation evidence to state e-Challan portalsplanned · v0.4.0

India Pro does not broker credentials. You apply directly to Masters India / Surepass / Signzy (Vahan), and to your acquirer / NPCI (NETC sponsor-bank). For IIB: the connector is deployed by or on behalf of a licenced insurer or IRDAI-registered data fiduciary — SIs typically integrate on behalf of a licenced end-customer rather than holding the IRDAI licence themselves. The proprietary value in the bundle is the glue — authenticated retry-aware clients with each vendor's quirks encoded — not the credentials.

05 — Relationship to PlateKit

A productised tier of PlateKit. Not a fork.

India Pro embeds the PlateKit SDK unchanged. The detect / OCR / track / aggregate / sink pipeline, the FastAPI service, the CLI, the model zoo and the region-pack machinery are all PlateKit. India Pro is the configuration and the connectors that make a PlateKit deployment India-ready — and the commercial wrapper that makes it tender-ready.

PlateKit core ships the formats

  • The pipeline — ANPR, StreamProcessor, sources, sinks, trackers.
  • The IN region pack — 36 state / UT codes, BH series, legacy codes.
  • Format validators — is_hsrp_pin, is_gstin, is_pan, eWayBill.
  • The Vahan Protocol — VahanClient, VahanRecord, normalise_vahan_response.
  • RateLimitedVahanClient — token-bucket wrapper for any connector.
  • india_pipeline.process — chain the India post-processing steps.

India Pro bundles the rest

  • india-pro profile — loads the HSRP fine-tune weights.
  • MastersIndiaVahanClient — authenticated, retry-aware Vahan client.
  • Connector roadmap — Surepass, Signzy, NETC, IIB, e-Challan.
  • Indian Commercial Licence — INR billing, GST invoice.
  • OEM authorisation letters — for tender bids.
  • India support SLA — per Commercial tier.

India Pro has no audit chain of its own — it produces PlateRead and VahanRecord events that your host product (Hearth, YardSight, Curb, Eyrie, or your own application) appends to its own Ed25519-signed chain. Read the engine page first: PlateKit — the production Python ANPR SDK →

06 — How to engage

Get started with India Pro.

India Pro is bundled with paid PlateKit Commercial tiers — contact us with your legal entity, GSTIN and PAN to receive access details. Recognition-rate figures for HSRP plates on our internal Indian-driver test set are available on request under NDA.

Get started

PlateKit, ready for India.
One profile flag.

HSRP fine-tune, 36 state and UT codes, multi-line truck plates, Devanagari-aware OCR, and the authenticated Masters India Vahan connector — bundled with every paid PlateKit Commercial tier.