Concierge

Stadium Access Control

Handover Package · May 2025

01 Public
02 Operations
02b Scanner Builds

One app, five builds. Every screen, the offline store, the scan path and the sync engine are identical in all of them — a build differs only by its branding and the backend it is pinned to. They use different package ids, so they install side by side on one handset and you can run two at once without them fighting.

Android only, and sideloaded: enable Install unknown apps for your browser, then open the link on the device. A handheld pairs by showing its own code — read it out to whoever is on the dashboard, and it comes online on its own.

TKT Scanner
ug.tkt.ac · backend.tkt.ug
pairs APK ↓
Ticket Scanner
ug.moments.ac · backend.moments.ug
pairs APK ↓
Fanpass Scanner
ke.fanpass.ac · backend.fanpass.ke
host not ready APK ↓
Tickway Scanner
ug.tix.ac · backend.tix.ug
pairs APK ↓
Mookh Scanner
com.mookh.ac · backend.party.ug
pairs APK ↓
Access Control
ug.loft.ac · ac-backend.loft.ug
pairs APK ↓

host not ready means exactly that and nothing more: the build is finished and signed, and its backend has not yet shipped the pairing routes, so a handset installs and runs but cannot be granted access. Nothing needs rebuilding when those deploys land — the same APK will pair.

Checked 25 Jul 2026 by asking each backend for a device code it does not have. Tickway and Access Control answered properly and moved to pairs; Fanpass is the only one left waiting — its server is up and healthy, it just has no /api/scan routes in the build that is deployed.

Access Control changed package id in this rebuild, from ug.tkt.ac.accesscontrol to ug.loft.ac. Android treats that as a different app, so on a handset that already has the July build the new one installs beside it rather than over it — remove the old one, or you will have two Access Control icons and only the new one pairing.

03 Access & Setup
04 Hardware
05 Documentation
06 Infrastructure