Electoral Integrity System
Overview
AI-Powered Electoral Integrity

Every result, from the polling unit to the public — verified.

PollSentry captures Nigerian election result sheets in the field, runs AI and forensic checks on every image within seconds, and streams verified tallies to a live monitoring wall — with full chain-of-custody, fraud flags, and human review at every step.

Surfaces04
EC8 collation levels06
Capture → scored<10sec
Audited & signed100%
01
The problem

Elections are won at the count — and lost in the collation

Between the polling unit and the final declaration, results are tallied and re-tallied by hand, level after level. That journey — slow, manual and hard to observe — is where confidence in the vote breaks down.

Slow & manual

Figures are added up by hand up a long chain — a process that takes days, and invites error at every step.

The chain is the weak point

Numbers are copied from the polling-unit sheet up to the state return. Along the way they can be transposed, inflated or swapped — often unnoticed.

No independent check

Parties, observers and citizens have no fast, trustworthy way to test a declared result against the original sheets.

Disputes & mistrust

The result is contested outcomes, litigation, and eroded confidence — long after the last vote is cast.

PollSentry closes that gap. An independent, real-time, forensic check on every result sheet — from the polling unit all the way to publication.
02
The Product

Four surfaces, one verified pipeline

Each audience gets a tool shaped for its job — all connected to one secure core and the same AI scoring engine.

Manage

Client Dashboard

The organisation's command centre — set up the election, staff the field, and review every sheet with its full forensic breakdown.

  • Elections, parties & candidates
  • Invite & scope members (owner → admin → coordinator → agent)
  • Result review, forensics & final verdicts
  • Incidents, flags, exports & audit trail
Org OwnerOrg AdminCoordinatorAgent
Capture

Agent App

The field agent’s tool. A native iOS & Android app agents carry to the polling unit — capturing the EC8A, buffering it offline, and screening it for fraud on-device — plus a web version for testing and owner/admin override uploads.

  • Guided select: election → state → LGA → ward → PU
  • Camera capture with a live image-quality gate
  • Offline result buffering & on-device fraud analysis (mobile)
  • GPS, device & tamper-proof custody seal on every upload
AgentCoordinator
Monitor

Live Dashboard

A real-time results wall — aggregated candidate tallies, coverage and turnout by geography, leaders and trends, updating as verified sheets land.

  • Live tallies by scope (state / LGA / ward / PU)
  • Coverage & turnout gauges, leader cards, trend sparklines
  • Nigeria tile-map & incident ticker
  • Read-only — counts only canonical, verified sheets
Org OwnerObserver / Guest
Platform

Platform & Admin

The secure core every screen runs on, plus an admin console for PollSentry-wide operations — the engine behind the three surfaces above. (The agent's mobile app is the Agent surface.)

  • Role-based access, geographic scope & organisation isolation
  • Scoring, secure storage & INEC geography data
  • Support access, session control & audit log
  • One core — every screen connects to it
Super AdminPlatform Admin
03
Who does what

Roles & the chain of authority

Two layers of access: a broad platform role, and — inside each organisation — a specific role, narrowed further by a geographic area. Everyone acts only within their own organisation and their assigned area.

Org-role hierarchy — you may only manage roles beneath your own · click a role for details
Org Ownerowns the tenantOrg Admincore org managementCoordinatorcluster · in scopeAgentfield captureObserverexternal viewer
CapabilityOwnerAdminCoord.AgentObserver
Election setup
Configure elections
Manage parties & candidates
Set up polling units
Team & access
Invite & manage members
Onboard & scope agents
Field & results
Capture & upload sheets
Review forensics & scores
Set the final verdict
Re-run AI scoring
Resolve flags & incidents
Report an incident
Export results & reports
Oversight
Monitor live results
View the audit log
full  ·  within assigned area  ·  not permitted
Coordinator = agent management. A coordinator's core job is to invite, onboard and scope the agents in their cluster — and manage those agents' results — all bounded to their own geographic area.

Role breakdown — select a role

Org Owner

Owns the organisation

Owns the organisation and everything inside it. Sets up elections, staffs the field, reviews results, and signs off the final verdicts.

Managed byNo one — top of the chain
Belongs toExactly one organisation
ReachEverything, organisation-wide
Can
  • Create & configure elections
  • Add parties & candidates
  • Invite & manage everyone
  • Assign geographic scopes
  • Review & set final verdicts
  • Export results
  • Delete the organisation
The only role that can transfer ownership or delete the organisation.

Org Admin

Runs the organisation

The owner's right hand — handles the day-to-day running of the organisation, with the same operational reach as the owner minus ownership-only actions.

Managed byOrg Owner
Belongs toOne organisation
ReachOrganisation-wide
Can
  • Configure elections & candidates
  • Invite & manage members
  • Assign scopes
  • Review & set verdicts
  • Resolve incidents
  • Grant observer access
  • Export results
Full operational reach, but can't delete the organisation or change ownership.

Coordinator

Field lead · in scope

Runs a cluster within the election. Their core job is to recruit, onboard and manage the agents in their area — and oversee those agents' results.

Managed byOrg Owner or Org Admin
Belongs toOne organisation
ReachTheir assigned area only
Can
  • Invite & onboard agents
  • Assign agent scopes
  • Set up polling units
  • Review, flag & re-run results
  • Resolve flags & incidents
  • Export (their area)
Everything is bounded to their assigned state / LGA / ward.

Agent

Front line · at the unit

The field capturer. Photographs EC8A result sheets at the polling units they're assigned and submits them for verification — the front line of data collection.

Managed byCoordinator (or Admin / Owner)
Belongs toOne organisation
ReachTheir assigned polling units
Can
  • Capture & upload sheets
  • Add new-PU details
  • Report incidents
  • Monitor live results
Can't manage people, set verdicts, or act outside their assigned units.

Observer

External · read-only

An external, accredited witness the organisation lets in to watch — a monitor or guest who can see results without changing anything. Stays a guest, never internal staff.

Managed byOrg Admin (granted access)
Belongs toInvited guest of the org
ReachRead-only, on what the org exposes
Can
  • Monitor live results
  • Report an incident
View-only by design — no upload, no verdicts, no management.
04
Trust by design

Who can touch what — and why you can trust it

Every action passes through the same layered checks before it runs. Your role decides what you may do, your scope decides where, isolation keeps organisations apart, and the audit trail records it all — and anything not explicitly allowed is refused.

Every action runs the same gauntlet — clear every gate, or it’s refused and logged
passfailAny actionSigned in?Role allows it?Same organisation?Within your scope?Allowed ✓Denied — refused, and written to the audit log

The guarantees

Least privilege

You get exactly what your role needs to do the job — nothing spare. New powers are granted explicitly, never assumed.

Organisation isolation

Every organisation’s data is walled off. One org can never see or touch another’s elections, members or results.

Geographic scope

Agents and coordinators are bound to their state, LGA or ward — they simply cannot act outside the area they’re assigned.

Denied by default

Anything not explicitly allowed is refused. Access has to be earned, not assumed — the safe default is always “no”.

Everything logged

Every sensitive action is recorded — who did it, to whom, and the before / after — so nothing happens off the record.

Bounded support access

Even elevated “act on behalf of” access is permission-checked and written to the audit trail like any other action.

What each role cannot do

Org OwnerCan’t reach another organisation’s data, or quietly alter a signed-off result — every change is logged.
Org AdminCan’t transfer or delete the organisation itself; that stays with the owner alone.
CoordinatorCan’t act outside their assigned area, or change the election’s setup.
AgentCan’t see or upload for any unit outside their assignment, or review and override verdicts.
ObserverRead-only — can’t capture, edit, resolve flags, or export.
05
Data & privacy

Sensitive data, handled with care

Electoral data is some of the most sensitive there is. PollSentry treats it that way — you own it, it stays separate, and the original evidence is never altered.

You own your data

Each organisation’s election data belongs to it. PollSentry is the custodian, not the owner — you can export it, and it’s never repurposed.

Kept separate

Every organisation is isolated. One org’s members, elections and results are invisible to any other.

Originals never change

Uploaded sheets are written once and never overwritten — the original evidence is preserved for re-checks and disputes.

Only what’s needed

We hold what an election requires — geography, sheets, tallies — and nothing extraneous.

Retention on your terms

Data is kept for the election’s lifecycle and your agreed window, then archived or removed as you decide.

Access is accountable

Who viewed or changed what is recorded — access to data is logged, never silent.

06
End to end

The life of a result sheet

One EC8A photograph travels from an agent's phone to the public wall in seconds — gaining a forensic verdict and an immutable audit trail along the way.

01 Capture

At the unit

Agent photographs the EC8A. On-screen quality check, GPS & device details.

02 Submit

To the core

Sent with its location & a tamper-proof seal; the original is stored, never changed.

03 Score

Forensics run

Figures read, cross-checked, forensic tests run, integrity scored.

04 Verdict

Pass or review

Flags raised, a verdict assigned. Suspicious sheets route to a human.

05 Publish

On the wall

Canonical, verified sheets feed the live aggregation.

What happens after upload — clean sheets publish; flagged sheets go to human review
cleanflaggedonce acceptedAgentcapture EC8APollSentry corereceive & storeScoringread & verifyVerdictLive wallcanonical tallyReviewerconfirm / reject
07
Client Dashboard

Manage the operation — and interrogate every sheet

Where owners, admins and coordinators set up the election, staff the field, and turn raw uploads into trusted results with full forensic detail.

Set up

Create the election (fixed to its state and type), add parties & candidates with logos, and set up polling units.

  • Elections
  • Parties & candidates
  • Polling-unit config

Staff & scope

Invite members by email, assign a role, and limit them to a geographic area. Coordinators onboard their own agents.

  • Invitations & roles
  • Geographic scopes
  • Role hierarchy

Review & forensics

Open any sheet: extracted figures vs. image, per-check scores, raised flags, BVAS variance, custody verification — then set the verdict.

  • Forensics & flags
  • Verdicts & incidents
  • Exports & audit
Kept separate. An organisation only ever sees its own elections, members and results — and non-admin users are further narrowed to their assigned area.
08
Agent App

Capture, guided — no IDs, no guesswork

The field app walks the agent from their election down to the exact polling unit, checks whether it’s already been submitted, collects new-PU details when needed, then captures & uploads. Agents carry it as a native iOS & Android app that buffers captures offline and screens them for fraud on-device; the web dashboard mirrors the same flow for testing and owner / admin / super-admin override uploads.

Agent capture flow — geography drill-down, duplicate check, new-PU onboarding
YesNoNew PULoginElectionDrill geographystate→LGA→ward→PUAlreadyuploaded?Already submittedshow statusEnter PU detailsregistered voters · BVASCamera capturequality gateUpload+GPS +custodyVerified& scored

Scope-aware

An agent only sees — and can only upload for — polling units inside their assigned scope.

Quality gate

Blurry, dark or over-exposed captures are caught on-device before upload.

Works offline

Captures buffer on the device with no signal, then sync automatically the moment it reconnects — nothing lost in the field.

On-device fraud checks

The mobile app screens device integrity and capture provenance before sending — mitigating fraud at the source.

Mobile-first, web as backstop. Field agents use the native iOS & Android app — offline-capable and fraud-screening. The web dashboard runs the same flow for testing, and as an owner / admin / super-admin override to upload results directly.
09
Live Dashboard

The results wall — verified numbers, in real time

As clean sheets are accepted, the monitor aggregates them by geography and paints the picture: who's leading, how much has come in, and where.

Vote share · leader52%
Per-candidate tallies, aggregated by scope.
Coverage68%
Sheets counted vs. expected polling units.
Turnout41%
Accredited vs. registered, from BVAS.
Clean rate88%
Counted sheets that passed clean.
Nigeria — states by leading party · the number shows LGAs won (illustrative · hover a state)
Sokoto — PUP leading · 14 LGAs wonSOK14Katsina — PUP leading · 22 LGAs wonKAT22Kano — PUP leading · 30 LGAs wonKAN30Jigawa — PUP leading · 18 LGAs wonJIG18Yobe — PUP leading · 11 LGAs wonYOB11Borno — PUP leading · 18 LGAs wonBOR18Kebbi — PUP leading · 13 LGAs wonKEB13Zamfara — PUP leading · 9 LGAs wonZAM9Kaduna — PUP leading · 15 LGAs wonKAD15Bauchi — PUP leading · 13 LGAs wonBAU13Gombe — PUP leading · 7 LGAs wonGOM7Adamawa — DAM leading · 12 LGAs wonADA12Niger — PUP leading · 16 LGAs wonNIG16Plateau — NPC leading · 10 LGAs wonPLA10Taraba — reporting · 9 LGAs inTAR9Kwara — PUP leading · 10 LGAs wonKWA10FCT — NPC leading · 4 LGAs wonFCT4Nasarawa — PUP leading · 8 LGAs wonNAS8Benue — NPC leading · 14 LGAs wonBEN14Oyo — NPC leading · 21 LGAs wonOYO21Osun — NPC leading · 19 LGAs wonOSU19Kogi — reporting · 11 LGAs inKOG11Enugu — DAM leading · 12 LGAs wonENU12Ebonyi — DAM leading · 8 LGAs wonEBO8Ogun — NPC leading · 13 LGAs wonOGN13Ondo — NPC leading · 11 LGAs wonOND11Ekiti — NPC leading · 10 LGAs wonEKI10Anambra — DAM leading · 14 LGAs wonANA14Imo — DAM leading · 17 LGAs wonIMO17Abia — DAM leading · 11 LGAs wonABI11Cross River — DAM leading · 12 LGAs wonCRS12Lagos — NPC leading · 14 LGAs wonLAG14Edo — NPC leading · 11 LGAs wonEDO11Delta — DAM leading · 15 LGAs wonDEL15Rivers — DAM leading · 15 LGAs wonRIV15Akwa Ibom — DAM leading · 20 LGAs wonAKW20Bayelsa — DAM leading · 5 LGAs wonBAY5
Leading partyPUPNPCDAMReporting

Scope tabs

Zoom from national down to a single polling unit; every tile re-aggregates.

Tile map & trends

A Nigeria tile-map, leader cards and trend sparklines track momentum.

Canonical only

Superseded & unverified sheets never inflate the numbers — no double counts.

10
Public transparency

Verified results, broadcast to the public on X

Beyond the private monitoring wall, PollSentry can publish verified milestones straight to X — turning the same canonical, verified tallies into public, timestamped updates the whole country can follow in real time.

PollSentry
@PollSentryLive
🔴 LIVE — Abia State Governorship 2027

✅ 68% of polling units reported (verified)
🏆 Leading: Ikenna Obasi (PUP) — 52.1%

Turnout 41% · updated 16:42
Full live tracker 👉 live.pollsentry.com/abia-2027-mnz91
Abia State Gov · 2027LIVEIkenna Obasi (PUP)52.1%Chiamaka Duru (NPC)31.4%Tobenna Anyim (DAM)14.8%68% of polling units reported · turnout 41%
4:42 PM · Mar 6, 2027 · Auto-posted from verified results
1282.1K8.4K241K

Illustration — an auto-posted verified milestone

How auto-posting works01 / 04
01

Only verified numbers

Posts only canonical, accepted tallies — provisional or flagged results never reach the public feed.

02

Milestone-triggered

Auto-posts on coverage milestones (25 / 50 / 75 / 100%), when the lead changes, or on a set schedule.

03

Always traceable

Every post is timestamped, states its coverage %, and links back to the live tracker for the full picture.

04

Sign-off, optional

Require a person to approve each post before it goes out — or let trusted milestones publish automatically.

11
The Engine

Forensic scoring — how a sheet earns its verdict

Every image is read automatically, its figures cross-checked, then put through a battery of forensic and arithmetic tests. The result is a set of clear scores and named red flags.

How a sheet is scored — read it, cross-check, run the tests, produce a score
EC8A imageinputRead the sheetfigures & wordsCross-checkfigures = words?Arithmetic checkΣ candidates = validOver-vote vs BVAScast ≤ accreditedDuplicate detectimage fingerprintManipulation& authenticityIntegrity score+ named flags
Extraction confidence97
How reliably figures were read from the image.
Authenticity95
Confidence the sheet is a genuine original.
Manipulation risk04
Tamper signal — low is good; high forces review.
Accepted

Clean scores, no critical flags — counts immediately.

Pending review

Flagged (e.g. arithmetic error) — a human confirms.

Rejected

Over-vote, duplicate or manipulation — excluded; re-upload allowed.

OVERVOTEDUPLICATE_DETECTEDARITHMETIC_ERRORRESULT_SHEET_MANIPULATIONBVAS_VARIANCEAGENT_EXCLUSION

Flag reference — select a check

Arithmetic error

Warning
ARITHMETIC_ERROR

The numbers don’t reconcile — the sum of candidate votes doesn’t match the recorded total, or the figures and the written words disagree.

SignalRecomputed totals ≠ written
SeverityWarning
VerdictPending review
Often a transcription slip — a human confirms before it counts.

Over-vote

Critical
OVERVOTE

More votes were cast than voters were accredited — an impossible result for that polling unit.

SignalVotes cast > BVAS accreditation
SeverityCritical
VerdictRejected
Excluded from the tally; a corrected re-upload is allowed.

BVAS variance

Warning
BVAS_VARIANCE

The accreditation figure written on the sheet doesn’t match the BVAS device record for that unit.

SignalSheet accreditation ≠ BVAS
SeverityWarning
VerdictPending review
Flagged for a human to reconcile against the device record.

Duplicate detected

Critical
DUPLICATE_DETECTED

The same result-sheet image has been submitted more than once — by mistake, or to double-count a location.

SignalImage fingerprint already seen
SeverityCritical
VerdictRejected
Only one canonical sheet per location is ever counted.

Sheet manipulation

Critical
RESULT_SHEET_MANIPULATION

The image shows signs of tampering — edited or overwritten figures, or a sheet that isn’t a genuine original.

SignalTamper & authenticity analysis
SeverityCritical
VerdictRejected
Cannot be trusted as evidence — excluded outright.

Agent exclusion

Warning
AGENT_EXCLUSION

A procedural red flag — party or observer agents were reported as excluded from the count at that unit.

SignalReported from the field
SeverityWarning
VerdictPending review
A process concern raised for the human reviewer to weigh.
12
Trust & Custody

Why the numbers can be believed

Integrity isn't only in the scores — it's in how every sheet is stored, signed, isolated and recorded. Provenance travels with the image from the moment of capture.

Chain of custody

Each sheet carries a tamper-proof digital signature and a capture fingerprint (GPS, device, time). The signature can be checked at any time — any tampering shows up.

Immutable originals

The uploaded image is written once to secure storage and never overwritten. Any re-check works from the original; the record of what arrived is permanent.

One canonical result

Exactly one verified sheet counts per location. A re-upload is allowed only when the prior sheet was flagged or rejected — it supersedes the old one, never double-counts.

Kept separate

Every request is bound to the user's organisation, and non-admin users are further bound to their assigned area — one organisation can never see another's data.

Full audit log

Sensitive actions — verdicts, role changes, removals, permission changes — are recorded with who, whom and the before/after, for later review.

Human in the loop

The engine decides fast, but never alone on the doubtful cases: anything flagged waits for a reviewer before it can reach the public tally.

13
The Paper Trail

The EC8 collation chain

Nigerian results roll up level by level. PollSentry captures each form at its level and links them into a verifiable chain from the polling unit to publication.

↓ starts here
EC8A
Polling Unit
rolls up →
EC8B
Ward collation
EC8C
LGA collation
EC8D
Senatorial
EC8E
State collation
→ published
EC60E
Publication

Form breakdown — select a level

EC8A — Polling Unit

Polling unit · the source

The result sheet filled and signed at the polling unit right after the count. This is the ground truth — every higher form is just a sum of these, so this is where verification matters most.

LevelPolling unit
CoversOne polling unit
SourceAgent capture
Capture

A field agent photographs the signed EC8A at the polling unit with the mobile app — guided to the exact PU, with a live quality gate and offline buffering.

Process

Figures are read from the image: registered & accredited (BVAS) voters and each party’s votes are extracted and tied to that PU.

Score

The full forensic battery runs here — arithmetic, over-vote vs BVAS, consensus, duplicate and tamper checks. Fraud is caught at the source.

Get EC8A right and the whole chain is trustworthy.

EC8B — Ward collation

Ward · first roll-up

The ward summary — the total of every polling unit (EC8A) inside one registration area. The first point where individual sheets are added together.

LevelWard
CoversAll PUs in a ward
SourceCollation sheet or roll-up
Capture

Captured at the ward collation centre, or derived automatically from the accepted EC8A tallies in that ward.

Process

The collated figures are extracted, and the ward is matched against the sum of its verified polling-unit sheets.

Score

A reconciliation check — the ward total must equal the sum of its EC8A. Any gap is flagged for review.

The first place a collated total is checked against its parts.

EC8C — LGA collation

LGA · second roll-up

The Local Government Area summary — the total of every ward (EC8B) in an LGA.

LevelLGA
CoversAll wards in an LGA
SourceCollation sheet or roll-up
Capture

Captured at the LGA collation centre, or rolled up from the accepted ward results.

Process

Figures are extracted and matched against the sum of the LGA’s ward sheets.

Score

Roll-up reconciliation — a discrepancy at this level escalates as an incident.

Discrepancies here move real numbers — so they escalate.

EC8D — Senatorial district

District · where it applies

The senatorial-district collation — the total of the LGAs within a district. Used where the contest is district-scoped, such as senatorial elections.

LevelSenatorial district
CoversLGAs in a district
SourceCollation sheet or roll-up
Capture

Captured at district collation, or rolled up from the LGA results.

Process

Extracted and reconciled against the sum of its LGA figures.

Score

Roll-up reconciliation, scoped to the district’s contest.

Only in play for district-level contests.

EC8E — State collation

State · the return

The state-level summary — the total of the LGAs (or districts) in a state. The state’s official return.

LevelState
CoversLGAs / districts in a state
SourceCollation sheet or roll-up
Capture

Captured at the state collation centre, or rolled up from the level below.

Process

Extracted and reconciled against the verified totals beneath it.

Score

Final roll-up reconciliation before the result is declared.

The last checkpoint before a result is announced.

EC60E — Declaration

Publication · the headline

The publication / declaration of result — the official figures that get announced. PollSentry holds this up against its own independently verified roll-up.

LevelDeclaration
CoversFinal announced result
SourceOfficial publication
Capture

The declared figures are recorded as published.

Process

Compared, side by side, with PollSentry’s verified tally built from the EC8A up.

Score

A divergence check — any gap between the announced result and the independently verified total is surfaced immediately.

The transparency headline — declared vs independently verified.
The agent flow adapts to the form. EC8A drills all the way to a polling unit and can onboard a brand-new PU; higher forms stop at ward, LGA or state — and each level is checked so the same location can't be collated twice.
14
How it's wired

The system, connected

Every screen connects to one secure core. Behind it sit the services that store each result, run the checks, keep every organisation's data separate, and record who did what.

How it connects — the apps people use, the secure core, and the services behind it
ClientdashboardAgentweb overrideMobileiOS · AndroidLivedashboardAdminconsolePollSentry coresecure backboneDatabaseelection recordsCache & queuebackground jobsSecure storageresult imagesAI scoringreads & verifiesGeographyINEC dataNotificationsemail & alertsCustodysigned & audited

Building blocks — select a part

Interfaces
Services

Client Dashboard

Manage & review · web

The organisation’s command centre on the web — set up the election, staff the field, and review every sheet with its full forensic breakdown before signing off the result.

PlatformWeb
UsersOwner · Admin · Coordinator
PurposeRun the operation
Key capabilities
  • Elections, parties & candidates
  • Members, roles & scopes
  • Result review & forensics
  • Verdicts, incidents & exports
The control room — where raw uploads become trusted, signed-off results.

Agent Dashboard · web

Test & override

The same guided capture flow in the browser — used for testing, and as an owner / admin / super-admin override to upload results directly when the field can’t. Not the everyday channel.

PlatformWeb
UsersOwner · Admin · Super-admin
PurposeTesting & override
Key capabilities
  • Guided election → PU selection
  • Upload straight from the browser
  • Duplicate / already-uploaded check
  • Owner/admin override capture
A backstop — field agents use the mobile app (next tab).

Live Dashboard

Monitor · web

A real-time results wall — aggregated tallies, coverage and turnout by geography, leaders and trends — updating as verified sheets land. Read-only, safe to share widely.

PlatformWeb
UsersOwner · Observer / guest
PurposeMonitor results
Key capabilities
  • Live tallies by scope
  • Coverage & turnout gauges
  • Nigeria tile-map & trends
  • Counts only verified, canonical sheets
Superseded or unverified sheets never inflate the numbers.

Agent Mobile App

The field tool · iOS + Android

The real field tool agents carry — a native iOS & Android app built for polling units with poor signal. It captures EC8A sheets, buffers them offline, and runs on-device fraud checks before anything reaches the core.

PlatformiOS & Android (native)
UsersField agents
Built forOffline field conditions
Key capabilities
  • Guided capture at the polling unit
  • Offline result buffering & auto-sync
  • On-device quality & fraud analysis
  • GPS, device & capture provenance
  • Tamper-proof custody seal per sheet
Works with no signal — queues captures and syncs the moment it reconnects.

PollSentry Core

The secure backbone

The multi-organisation core every screen connects to. It decides who can do what, keeps each organisation’s data separate, and orchestrates the whole capture → verify → publish pipeline.

RoleAccess & orchestration
EnforcesRoles + geographic scope
GuaranteeOrganisation isolation
Key capabilities
  • Role & permission control
  • Geographic scoping
  • Organisation isolation
  • Session & support-access control
  • Orchestrates scoring & storage
  • Full audit logging
Every request is checked against the caller’s role, organisation and assigned area.

Scoring Engine

AI + forensics

The verification brain. It reads each result sheet, cross-checks the figures, and runs a battery of forensic tests — scoring integrity and raising named fraud flags in seconds.

RoleVerify every sheet
RunsReading + forensic checks
OutputScores · flags · verdict
Key capabilities
  • Reads figures from the image
  • Consensus cross-check
  • Arithmetic validation
  • Over-vote vs BVAS
  • Duplicate detection
  • Tamper & authenticity analysis
Fast automated decisions — the doubtful cases route to a human.

Geography Sync

INEC electoral map

A dedicated service that mirrors Nigeria’s official electoral geography — every state, LGA, ward and polling unit — synced from INEC and stored, so the whole system speaks one consistent map.

SourceINEC
CoversState → LGA → ward → PU
RefreshBackground sync
Key capabilities
  • Syncs the full state→PU hierarchy
  • ~176,000 polling units
  • Offline geography snapshot
  • Powers the agent drill-down
  • Election-scoped PU records (voters, BVAS)
One authoritative map means agents pick real places and results roll up cleanly.

Storage & Data

Records & originals

Where the election’s structured records live, and where every uploaded sheet image is kept — written once and never overwritten, so the original evidence stays permanent.

HoldsElections · results · members
ImagesWrite-once storage
SpeedFast reads for the live wall
Key capabilities
  • Election & result records
  • Members, roles & scopes
  • Immutable result images
  • Fast queries for live tallies
  • Background processing queue
Re-checks always work from the untouched original.

Custody & Audit

Proof & trail

The trust layer. Every sheet gets a tamper-proof signature at the moment of capture, and every sensitive action is written to an audit log — so results can be proven and actions traced.

SignsEvery sheet
RecordsSensitive actions
EnablesIndependent verification
Key capabilities
  • Chain-of-custody signatures
  • Capture fingerprint (GPS, device, time)
  • Signature verification on demand
  • Full audit log
  • Who · whom · before/after
Integrity you can demonstrate, not just claim.
15
Built for election day

Ready for the busiest day of the cycle

Election day is a spike — tens of thousands of units reporting within a few hours, many from places with patchy signal. PollSentry is built for exactly those conditions.

~176k
Polling units mapped from INEC — the whole country, ready to receive.
Offline
Agents capture and buffer with no signal, syncing when they reconnect.
Real-time
Verified results roll up live, from polling unit to state.
Seconds
Each sheet is read and forensically scored as it lands.

Offline-first

The agent app captures and buffers with no signal, syncing the moment it reconnects — no result is lost in the field.

Absorbs the surge

Uploads are queued and processed in the background, so a flood of sheets at close of polls is absorbed, not dropped.

Degrades gracefully

If one part slows, capture and buffering carry on — nothing blocks the agent on the ground.

16
The payoff

What changes when every sheet is verified

PollSentry turns a slow, opaque count into an independent, verifiable, public record — in real time.

Minutes not days
A verified national picture as sheets arrive — not a wait for official collation.
Every sheet
Forensically read and scored — no sampling, no gaps.
6 checks
Independent forensic tests on every result before it counts.
One chain
A signed, tamper-evident record from capture to declaration.

Independent verification

A parallel tally that doesn’t wait on official pace — declared results can be checked, sheet by sheet.

Fraud caught at the source

Anomalies are flagged on the polling-unit sheet, where manipulation starts — not discovered weeks later.

Public transparency

A live, shareable results wall and auto-posts to X put verified numbers in the open, in real time.

Dispute-ready evidence

A complete, signed audit trail — every sheet, every action — that stands up to scrutiny, and in court.

Confidence restored

Observers, parties and citizens get a trustworthy, timely answer — cutting disputes and mistrust.