One platform for the whole restaurant
Everything from the first order to the closing count — built to run on your own infrastructure with every restaurant's data kept separate.
Orders & waiter workflow
Waiters build tickets tableside from a live menu, add customer notes and kitchen requests, and open or close orders as the meal progresses. Sold-out items disappear automatically, so guests only order what the kitchen can make.
- Tableside ticket building
- Customer notes & kitchen requests
- Open / close orders
- Live order status
Kitchen display system
A dedicated kitchen device signs in once with a secure device token and never logs out. The line sees active tickets in real time and bumps them Preparing → Ready → Completed, marks items out of stock, and logs inventory adjustments.
- Device login that never logs out
- Secure device token
- Preparing / Ready / Completed
- Mark items out of stock
Inventory, recipes & waste
Managers run opening and closing counts, record waste, and tie menu items to recipes so every sale draws down the right ingredients. Stock levels drive availability across the whole platform.
- Opening & closing counts
- Waste recording
- Recipes & ingredient costing
- Auto-hide sold-out items
Multi-tenant isolation
Every restaurant is completely isolated. Users, orders, inventory, recipes, menus, reports, and settings belong to one business, and the database itself enforces that no business can ever see another's data.
- Row-level security in PostgreSQL
- Per-business data separation
- Stable UUIDs for every record
- Designed to scale to many locations
Roles & permissions
Owners manage one or more restaurants and their finances, Managers run inventory and staff, and Waiters take orders. Owners can even grant the platform provider temporary, revocable access when they need support.
- Owner, Manager, Waiter roles
- Granular, least-privilege access
- Owner-granted support access
- Kitchen device role
Self-hosted & durable
FoodPOS runs as Docker containers on your own Linux server, with data in PostgreSQL and persistent volumes. Migrations add columns safely, updates never delete data, and automatic backups mean an update can never cost a restaurant its information.
- Docker Compose deployment
- Safe, reversible migrations
- Daily & manual backups
- Restore, export & import
See it on your menu
We'll spin up a demo with your restaurant's data so you can try the full workflow.