Sold out should warn the counter, not overrule it
The availability list can be wrong; the person at the shelf is not. A warning with an override and a nudge to fix the list beats a till that blocks the sale.
When a dish is marked out of stock, the QR menu should refuse it flatly — a guest ordering from a table cannot see the shelf, and selling them something that does not exist is a refund and an apology. Our checkout does exactly that, no exceptions.
The till is a different machine, because there is a person stood at it who can see the kitchen. When the availability list says the burger is gone and the chef is holding one up, the list is wrong — usually because this morning's switch-off was never switched back.
Warn, let them override, then fix the list
So the register shows the sold-out item greyed with a clear mark, but keeps it tappable. Tapping it asks plainly: this is marked out of stock and is off the QR menu too — sell it anyway? One press sells it. No manager code, no menu dig, no queue held hostage by a stale flag.
Then the interesting part: the moment somebody overrides, the screen shows everything else currently marked out and offers to put any of it — or all of it, in one tap — back in stock. One wrong "out" almost always means the whole morning list is stale, and the person who just proved it wrong is the best person to clear it, while they are looking at the shelves.
Defaults that match what the venue actually set up
The other half is when things come back by themselves. A venue that tracks its ingredients gets "out until it is restocked" as the default — a delivery against the empty item brings it back. A venue that has never set up an ingredient gets "out until I turn it back on", because for them nothing exists for a delivery to restock, and a rule that promises otherwise is a menu that quietly lies.