OpenTicket
▸ GPL 3.0 OPEN SOURCE
▸ ESP32 Native
▸ OPERATOR CONFIGURABLE
▸ NO VENDOR LOCK-IN
▸ BUILT BY A BUS DRIVER
▸ CERN OHL-S v2 HARDWARE
▸ GPL 3.0 OPEN SOURCE
▸ ESP32 NATIVE
▸ OPERATOR CONFIGURABLE
▸ NO VENDOR LOCK-IN
▸ BUILT BY A BUS DRIVER
▸ CERN OHL-S v2 HARDWARE
v0.01 — proof of concept
Open source, modular, operator-configurable ticketing terminals for public transport. No proprietary APIs. No vendor lock-in. Built from better base assumptions.
GPL licence
ESP32 hardware target
YAML operator config
v0.01 current version
About
Current ticketing systems are proprietary black boxes — locked to vendors, impossible to customise, expensive to maintain. OpenTicket is the alternative: a fully open, modular terminal platform where operators own their stack.
# operator config — Company example
$ cat /etc/openticket/operator.yaml
operator: Company
theme:
primary: "#E84B37"
routes: [31, 32, 33, 34, 35, 36, 37]
features:
nfc_payment: true
accessibility_mode: true
audio: true
✓ config loaded — terminal ready
Features
⬡
Swap payment providers, languages, or peripherals via config. Fork the config, not the code.
◈
Full branding control from a single YAML file. One codebase, any operator identity.
⌘
Audio announcements, large-text mode, and NFC tap-to-pay built into the core — not bolted on.
◎
Enclosure and PCB designs released under CERN OHL-S v2. Build your own or source from community.
⊞
Native support for BLE beacon bus stops — receives What3Words codes and stop metadata automatically.
⊙
Operators contribute modules back. Rural groups deploy their own. Translators add language packs.
Build
OpenTicket is in early development. The project is open for contributors, hardware testers, and transit operators interested in piloting.
$ git clone https://github.com/opentick40/Openticket
$ cd openticket
$ cp config/example.yaml config/operator.yaml
$ ./install.sh
▸ OpenTicket v0.01 running on :8080
OpenTicket — openticket.uk
GPL-3.0 CERN OHL-S v2 Built in Derby, UK