QRKellner
A QR ordering system for hospitality: the guest scans at the table and orders themselves, and the team sees every order in real time.

/The problem
In many restaurants a QR code is stuck to the table, and behind it sits nothing but a PDF menu. When a price changes or a dish is added, someone has to rebuild and replace the PDF. And the guest cannot order with it anyway: they keep waiting for the waiter.
That is exactly where hospitality loses money. The guest wants to order again, no waiter comes, and at some point they give up. That revenue shows up in no statistic, it simply stays lying on the table.
/What the guest experiences
- 01
Scan
The guest scans the QR code at the table and is straight into the menu. No app install, no login. A table PIN connects the whole group, and everyone orders into one shared session.
- 02
Order
Pick a dish, add extras, a special request as a note, send. The order lands in the team's live board at once, with no waiter having to come to the table.
- 03
Bill in view
The table's running bill is visible at any time and current with every order. No surprise at the end of the evening.
- 04
Call for service
One button calls the waiter, a second requests the bill, for cash payment for instance. The operator assigns the second button freely: a shisha bar simply turns it into its coal button.
/The system
For the operator QRKellner is more than a digital menu, it is the cockpit of the venue: from the live order board through the table map to the guests' reviews, all live, all in one place, run from a phone.
On the technical side, Supabase Row Level Security separates the tenants cleanly, orders and table status run as realtime updates with no reload, a custom SQL rate-limiting protects the ordering backend, and billing runs on a Stripe subscription. The guest app runs as a PWA right in the browser.
Dashboard
Revenue today, orders today and occupied tables at a glance, plus the ranking of the most-ordered dishes, switchable between today, week and month.
Orders
The team's live board: every order moves from new through in progress to served. New orders appear at once, with extras and special requests.
Table overview
The restaurant's floor plan as a live map. Every table shows its status: free, occupied, waiter called or bill requested. Tables can be arranged freely.
Menu
Dishes, categories, photos, extras and prices are maintained by the operator right on the phone. A switch pulls a dish live out of the menu. The QR codes at the table always stay the same.
Checkout, closings, reports
Staff take payment right in the system, split bills by item and print hospitality receipts. CSV exports prepare all sales for accounting.
Roles and permissions
Admin mode for the operator, waiter mode for the staff. Which areas a waiter sees is decided by the operator per function. Getting back to admin takes a password.
Working hours in view
Staff clock in and out right in the system. The operator sees the hours worked per waiter in one place, with no separate time tracking to keep on the side.
Team performance
QRKellner shows who serves how many tables and how much revenue runs through which waiter. The operator sees at a glance where the team carries and where it needs support.
Inventory with reorder alert
Ingredients and drinks sit as stock in the system. When an item drops below its threshold, QRKellner flags the reorder need before something runs out on a busy evening.
Happy hour
For fixed time windows the operator sets reduced prices. During happy hour the system automatically uses the promotional price, and the regular one afterward.
/Result
- 9.99 EUR
- Stripe subscription per month
QRKellner is built and finished and works end to end: guest ordering flow, live cockpit, checkout, receipts, reports, tenant separation, subscription billing. What is missing is not a feature. What is missing is a stamp.
/Why QRKellner is on ice
QRKellner has its own integrated checkout: staff take payment for tables right in the system, split bills by item and print receipts. That very strength is the hurdle in Germany, because a point-of-sale system falls under the KassenSichV, the German cash-register security regulation.
The required certification of a TSE (technical security element) is expensive and slow, not sensible to shoulder for a self-funded product at this stage. So QRKellner is deliberately on ice instead of going live around the regulation. With the right partner the path is clear, and the product itself is ready.
- REGULATION / KassenSichV
- REQUIRED / Certified TSE
- REQUIRED / Receipt and reporting duties
- GREENLIGHT / Partner or investor
/Screenshots







/Stack
- React
- Vite
- TypeScript
- Supabase
- Row Level Security
- Realtime
- Stripe
- PWA
- SQL-Rate-Limiting
/More projects
A similar process with no system yet? I build things like this for others too.