Printing · Kitchen

What the first docket off a real printer taught us

The first paper off a real thermal printer failed three ways in one photo — mid-word breaks, code-page garble, two order numbers — and each fix made it honest.


For months our printing stack existed only as bytes in a test suite. Four printer languages, a routing engine, a cloud protocol where the printer polls the server itself — all of it green, none of it ever on paper. Then a real thermal printer arrived at a real counter, printed its first dockets, and a photograph of the paper found three faults no test had ever thrown.

1. The printer wraps where it likes

Nothing in our renderer wrapped text, because on a screen the browser does it for you. A 42-column till roll does it too — at column 42, mid-word. "Birria Taco" came off the roll as Birri on one line and a Taco on the next. The fix is boring and old: wrap on spaces yourself, keep a wrapped choice indented under its dish, and never trust a device to break lines kindly.

2. The character set is not yours

The docket said "4ç" where the kitchen meant "4×". A thermal printer in plain-text mode draws bytes one at a time from its own code page; a multiplication sign travels as two bytes and comes out as two wrong characters. Everything outside plain ASCII now folds to something every printer draws the same way — an x for a ×, straight quotes for curly ones — before it ever leaves the server.

3. Two numbers on one docket is one too many

The paper carried an internal reference and a pickup number, stacked. The person at the pass has to shout exactly one of them. That photograph is what pushed us to a single three-digit number per day per venue, printed big, with the long identifier kept behind a deliberate press for the day something needs chasing.

The lesson is not about printers. It is that a feature is proven by the artefact it produces — the paper, not the payload. Ours prints now, on hardware that calls the server itself with no screen left running, and every one of those three fixes exists because somebody photographed a piece of paper.


Try it on tonight’s service.

Nothing to install, no card. Not better by the weekend? Close the tab.