DEV Community

Sarthak Upadhyay
Sarthak Upadhyay

Posted on

Architecting a Political ERP: Handling Indian Electoral Rolls & Booth Hierarchies at Scale

Building software for democratic elections in India presents a unique distributed systems and data modeling challenge. Unlike traditional enterprise ERPs or CRMs that model simple hierarchical accounts (Company -> Department -> Employee), an Indian electoral management system must mirror real-world constitutional and grassroots hierarchies:

Constituency (Vidhan Sabha / Lok Sabha) -> Wards -> Polling Booths (200–300 per AC) -> Booth Committees -> Panna Pramukhs (Page In-Charges) -> Families -> Voters.

The Problem with Flat Relational Schemas

Most campaigns fail technically when they try to ingest raw Election Commission voter rolls into flat tables or off-the-shelf CRMs:

  1. Schema Mismatches: Voter rolls are updated with frequent additions, deletions, and structural boundary shifts.
  2. Granular Role-Based Access Control (RBAC): A panna pramukh (field volunteer) must only read and mutate status flags for their assigned 30–50 voters. Exposing the entire assembly dataset creates catastrophic data leakage risks.
  3. Write-Heavy Door-to-Door Sync: Thousands of booth volunteers attempting to sync survey flags simultaneously during peak field campaigns requires a strict offline-first cache and idempotent sync endpoints.

Purpose-Built Architecture

To solve this, purpose-built systems like Setuk treat the polling booth as the core atomic unit of computation.

By isolating voter roll datasets by booth IDs and applying strict multi-tier permissions, central war rooms maintain real-time telemetry on voter outreach, booth turnout, and citizen grievance tickets without sacrificing data sovereignty.

For teams building or evaluating election management infrastructure, you can explore the platform architecture and war-room workflows directly at setuk.org.

Top comments (0)