M Meridian Kitchen
Menu
Ticket
Modifier — applies to the last dish added
- Subtotal
- 0.000
- Service 10%
- 0.000
- Tax 5%
- 0.000
- Total
- 0.000
Kitchen display
amber 20s · red 40sHow it is designed
A till and a kitchen screen are two halves of one system, and almost every cheap version gets the seam between them wrong. Three decisions here are worth pulling out.
Money is never a float
Every price, modifier, subtotal, service charge and tax figure in this page is an integer number of fils. Nothing is ever a decimal until the moment it is turned into a string for display. The minor unit here is deliberately 1000 rather than 100, so that any code quietly assuming two decimal places would break loudly instead of silently.
This is not theoretical. Run the same four prices both ways — the figures below are computed live by this page, not typed in:
A till that adds floats drifts by a fil here and a fil there, and the
drawer does not balance at close. The person who gets blamed is the
cashier, not the developer who wrote 0.1 + 0.2.
The kitchen clock starts when the kitchen gets it
Not when the waiter began tapping. A ticket that sat on the till for four minutes while a table argued about drinks is not four minutes late in the kitchen, and colouring it red would train the staff to ignore the colour — which is the only thing the display is for. Tickets go amber at twenty seconds and red at forty here so the behaviour is visible in a demo; a real kitchen would set those per station.
A modifier splits the line rather than changing it
Add two lamb kebabs, then tap extra spicy. The modifier applies to one portion, so the line splits: one spicy, one plain. The lazy alternative — applying it to the whole stacked line — sends the kitchen an instruction nobody asked for, and the customer who wanted it mild gets it back.