The software stack

Four apps. One platform.

Every role gets a purpose-built app. They all talk to the same cloud, so every swap, ticket, and inventory move stays in sync without a refresh.

Admin Dashboard
Web . Operations

Admin Dashboard

Live revenue, fleet health, station status, KYC backlog. One tab open all day for the operations team. Activity Manager surfaces swaps, alerts, and KYC submissions in a single chronological feed.

  • Real-time KPI tiles : swaps, revenue, active riders, online stations
  • Map view of all stations across the network
  • Battery inventory : Available / Charging / Deployed / Fault
  • Activity Manager with swap, alert, and KYC filters
  • Per-tenant white-label theming and custom domain
  • Database export to CSV / JSON on request
Live KPIs

Live KPIs

Revenue, swap count, online stations, KYC backlog. Updates in real time as MQTT events arrive.

Map view

Map view

Every station on a single map, colour-coded by status. Click for full station drill-down.

Inventory

Inventory

Every battery in the network, filterable by status. SOC + health visible per row.

User App
Android + iOS . Riders

User App

Riders scan, pay, and swap in under a minute. Live battery health, route to the nearest charged pack, in-app support with a 2-hour SLA.

  • QR scan or RFID tap to start a swap
  • Razorpay UPI / card / wallet, single click
  • Live network map sorted by distance from rider's GPS
  • Current battery health : SOC, range, cycles, max range
  • Swap history with downloadable receipts
  • In-app ticketing with 2-hour SLA on responses
Scan

Scan to swap

Camera viewfinder + a fallback station picker if the QR is unreadable.

Stations

Network map

Sorted by distance. Live availability per pod. Tap a row to navigate.

History

History

Every swap, every payment. Filterable by month, exportable as a receipt.

Provider App
Android . Field team

Provider App

Field agents onboard new riders, track every battery across the network, flag faults, and route tickets to the workshop. The manager view shows the entire battery inventory as a live, filterable list.

  • KYC + deposit capture in under 90 seconds
  • Live battery inventory : Available / Charging / Deployed / Fault / Stock
  • One-tap fault report to the workshop
  • Customer / My Tickets / Admin escalation flows
  • Repair approval workflow with admin oversight
  • Aadhaar + selfie capture via native camera
Fault report

Fault report flow

Pick a battery from the pre-filtered list, describe the fault in one line, submit. Workshop's POD App receives it the same moment.

Manager view

Status header with totals (e.g. 17 Available / 5 Charging / 24 Deployed / 1 Fault). Search by BAT-ID or BMS device ID.

POD Maintenance App
Android . Workshop

POD Maintenance App

The workshop runs inspections, tracks every spare part, logs procurement, and chats with the field team : all in one app. Three roles (Admin, Manager, Mechanic) with role-gated views.

  • Per-vehicle 49-part inspection wizard with photo capture
  • Live stock list + procurement queue with bill upload
  • Task assignment per mechanic, In Progress / Completed states
  • Team chat visible to admin / manager / mechanic
  • Customer + handover ledger (rider + B2B)
  • Activity log : every action by every user, time-stamped
Vehicle detail

Vehicle detail

Current customer, last inspection, parts checklist, activity log. Start a new 49-part inspection in one tap.

Stock list

Stock + procurement

Live spare-part count. Out-of-stock items roll into the To Buy queue. Log purchase auto-bumps stock.

How they fit

One cloud, four roles, every event in sync.

All four apps talk to the same Postgres + TimescaleDB backend over a REST API and an MQTT event bus. A swap fires one MQTT event that updates the rider's history, the agent's inventory, the workshop's queue, and the admin dashboard simultaneously. No "wait for the database to settle." No "refresh to see the latest."

PostgreSQL + TimescaleDB

Relational backbone for users, batteries, swaps, tickets. TimescaleDB hypertable for BMS telemetry with auto-compression after 7 days.

MQTT event bus

Mosquitto broker. Cabinets publish BMS telemetry, status, and ACK messages. Server publishes unlock commands. End-to-end under 200ms.

Express + JWT

Single API server, role-scoped JWTs. The User, Provider, POD, and Admin apps all hit the same endpoints with different scopes.

Want to try the apps on your phone?

We put the live builds on your handset in the same call. APKs for Android, a PWA link for iPhone.

Book a demo →