TokoraQueue & Token Display System
Self-hosted queue & token display — issue numbers, call them to counters, run the waiting-room board.
No sign-up, no password — the demo opens already signed in, on sample data.
- Full PHP source included
- Instant download + licence key
- It never phones home
- Compare vs SaaS pricing →
The problem it solves
Clinics, pharmacies, service desks, and council offices still run their waiting rooms on a paper pad and a raised voice — visitors don't know their place in line, staff lose track of who's next, and there's no record of how long anyone actually waited. Cloud queue systems fix it, but they charge per branch every month and often want a special ticket printer or display appliance.
- No fair, visible order — just names called across a noisy room
- No idea which counter is free or how long the queue really is
- A monthly per-branch fee (and vendor hardware) for what is a numbered list
What you get
A visitor can leave their number on their own ticket page and be texted when they are nearly up and when they are called. Off by default, your own Twilio credentials, endpoint hard-coded to Twilio's API, each alert sent once — and in the demo it never sends at all.
Each service issues its own prefixed numbers (A-001, B-014) that reset automatically every day — no cron job, computed on view.
Bind a counter to one service or set it to 'any service' and it pulls the oldest waiter first — call next, mark served, no-show, or recall.
Visitors take their own number from a self-serve kiosk page, protected by a honeypot and per-IP rate limiting — no staff needed to issue tickets.
A now-serving-per-counter board with queue lengths that any screen can show, auto-refreshing with an offline meta-refresh plus a tiny polling script — no CDN, no appliance.
Each visitor gets a public page they can watch on their phone to see their number approach — so they don't have to hover at the counter.
Issued, served, no-shows, still-waiting, and average wait per service, exported as a dependency-free PDF and a formula-injection-hardened CSV.
Add it to a phone or tablet home screen straight from the browser — a full-screen app served from your own server, with no app store involved. Business data is never cached offline, so what you see is always live.
Tokora 2.0 adds the 2.0 owner layer. Upgrade by replacing the files — the database migrates itself, and it is still the same one-time purchase.
- REST API with an OpenAPI spec and signed webhooks
- Two-factor sign-in (TOTP)
- CSV import with a mandatory dry run
- One-click backups
- Dark mode
Call-next is now atomic: exactly one counter can win a ticket, so two desks can never announce the same person while the real next visitor is skipped in silence. Agents read the queue over MCP under the same rules.
- Roles with email invitations and a last-admin guard
- Append-only audit trail across browser, API and agent
- Printable PDFs
- Your logo and colours throughout
- Scheduled backups with a guided dry-run restore
- Optional single sign-on (OIDC)
The 3.1 wave gave the catalogue a way to reach the other side of the transaction: counterparty email through your own SMTP server, calendar feeds your own calendar subscribes to, attachments filed where the paperwork belongs, and export presets other people's software imports. Every outbound path ships switched off, runs on your own credentials, and can never break the thing that triggered it. What this app gained is listed at the top of this section.
Pricing — one-time, yours forever
- ✔ Full source included — PHP you can read and change
- ✔ No subscription. One payment, yours forever
- ✔ It never phones home
- ✔ Your data stays on your server
Which licence do I need?
It comes down to how many installations you need. Running your own business on one site is the Single licence. Building or running sites for other people — a second domain of your own, or an installation a client keeps — is the Extended licence.
Single licence
One (1) domain or subdomain
One business, running it on one site.
- Install it on one domain or subdomain you own or operate
- Change the source however you like for that installation
- Run your own business on it commercially, client work included
- Re-download the current build any time from your buyer portal
- A second site, or an installation you hand to a client as theirs, needs the Extended licence
- No reselling, redistributing or sublicensing the source
- Not for offering it to other people as a hosted service
Extended licence
Unlimited sites you own or operate
Agencies, and anyone running it on more than one site.
- Everything the Single licence grants
- Install it on as many domains as you own or operate — no cap on the number
- Build and hand over one installation per client project
- Still no reselling or redistributing the source itself
- Running it as a multi-tenant service others sign up for needs a SaaS agreement
Every download carries the full terms as LICENSE.txt, and the licence you bought is
named on your order and in your buyer portal. The complete wording lives on the
terms page, and the live demo is free for as long
as it takes to decide.
No reviews yet — so here is what we offer instead. Every competitor price on our comparison pages is source-linked and dated, and when a vendor’s price won’t load we say so rather than guess. See the sources for yourself →
Honest limitations
What it does not do — written down before you buy, and kept true on purpose.
- The display board is a web page you open on a screen you already own — no signage hardware, ticket printer or audio caller is included, and none is driven.
- Announcements are visual: there is no audio chime or voice caller.
- Optional text alerts need your own Twilio account — Tokora ships no messaging account, and there is no email, push or WhatsApp.
- A live walk-in queue, not an appointment book: nothing here reserves a future slot.
- Single-tenant: one organisation per installation (staff get their own accounts, roles and 2FA).
2-minute web installer, plain PHP 8 + MySQL (or SQLite for a trial), no Composer or build step — Docker image included.
Covered in these guides
The limitation-smash release: your tools now write to the people they serve — client emails through your own SMTP, calendar feeds, attachments, export presets — every one of them off until you switch it on.
Every Ownware tool now has an MCP endpoint an AI agent can use under the same guards a person faces, plus roles with email invitations, an append-only audit trail, printable PDFs, your branding, guided backups and restore, and optional single sign-on.
One $499 payment: every app in the catalog plus the control plane that runs them. The honest case for small, sharp, separate tools over an integrated suite — and the honest limits.
An honest field guide to waiting-room queue software: what the hosted tools cost, why there is no strong open-source option, and where a buy-once queue display fits.
Qminder now starts near $800 a month, Waitwhile bills per location — and there is no free self-hosted queue display. Here is the buy-once alternative for a waiting-room number board.
Questions about Tokora
Do I need special hardware or a ticket printer?
No — the kiosk, the counter console, and the display board are all just web pages. Put the board on any spare screen or TV with a browser; visitors take a number on their own phone or a shared tablet.
How do the numbers reset?
Per service, automatically each day, computed on view — there is no cron job to schedule and nothing to reset by hand.
Does it store any patient or personal health data?
No — Tokora tracks tokens, services, and counters only. It holds no health records and no personal data beyond an optional free-text note, so it has zero PHI and zero payment surface.
MySQL or SQLite?
Either — SQLite for a zero-config trial, MySQL/MariaDB for production on ordinary shared hosting.
What if the developer disappears?
You get the full PHP source and your data lives in one database you own — nothing phones home, nothing expires.
Can visitors get a text when it is their turn?
Yes — optionally. You connect your own Twilio account; a waiting visitor adds their number on their own ticket page and is texted when nearly up and when called, each alert exactly once. Both toggles ship off, and the number is only ever used for those two messages.