Printing and offline

How to install the print app in the kitchen

The kitchen doesn't want to stare at a screen: it wants paper in hand to hang on the ticket rail and keep service moving. That's what a small program running on the computer or tablet at the station is for: it picks up the orders the waiter sent and sends them straight to the thermal printer.

Updated Sept. 21, 2026 6 min read For: owners and kitchen staff
Quick answer

Turn on printing on the Dashboard, under Kitchens, and copy the station's address and token. Then install the print app on the kitchen computer or tablet, paste those two details into its settings and save. From then on, tickets print on their own on the thermal printer, without anyone clicking anything.

What this little program does at the station

The print app is a lightweight program that runs inside the restaurant and bridges qmen.us, which is in the cloud, and the thermal printer, which is on your local network. The cloud can't reach a printer behind your router, so the print app is the one that connects out, checks every so often for new tickets, prints them and confirms. There's no need to open any port on the router.

There are versions for three kinds of device: Linux (a single AppImage file), Windows (a single .exe file) and Android (an app from the project, with a Bluetooth or network printer). On all three, the setup is the same pair: the kitchen's address and the token the Dashboard gives you. qmen.us itself still runs in the browser, with nothing to download from an app store; the print app is the only thing that gets installed, and only on that kitchen device.

Why paper tickets are worth having

  • The ticket prints on its own, with nobody clicking. The waiter sends from the table, qmen.us creates the print job and the program picks it up on its next check, every 3 seconds by default.
  • A duplicate ticket beats a lost order. Printer out of paper, switched off or the internet flickering: the failure is reported and the job goes back into the queue. The server offers it again after a minute without confirmation and tries up to ten times before giving up.
  • Each prep station prints only its own orders. Address and token are per kitchen, so the grill doesn't get the dessert. A restaurant with two stations and two thermal printers runs two print apps, each with its own config.
  • The same device can print and show the display. With the display turned on in the config, the kitchen screen opens in the browser at startup. If you only want the screen, you don't even need this: just open the display link.

How to install the print app in 7 steps

There are seven steps, from the button on the Dashboard to the program starting on its own when the device turns on.

  1. Turn on the station's printing on the Dashboard

    On the Dashboard, open Kitchens. Each prep station is a card, and on it there's the Printing block with the Set up button. The Kitchen printing window opens: turn on the Print orders switch, choose the Paper width (80 mm or 58 mm), how many Copies you want (1 to 5) and tap Save. The card now shows On, with the width and copies next to it.

  2. Copy the address and the token

    In the same window, under Details for the print app, there are two lines: the kitchen's address and the token, hidden behind dots. The eye icon reveals it and the button next to it copies. If you see (created when you save), you haven't saved yet. Keep the token safe: it works as the printing password. The Generate a new token link kills the previous one instantly.

  3. Download the version for your device

    On the kitchen device, download the file for your system: on Windows a .exe file (Windows 7 and up), on Linux an AppImage that runs on any distro. It's a single file, in a folder. On a Raspberry Pi and other ARM devices, build the AppImage on the device itself or run it straight from the source code, with Python 3.9 or newer.

  4. Paste the address, the token and the printer

    Next to the program there's a config.json with base (the address), token, printer (the printer) and poll (how many seconds between checks). On Windows this file lives in the same folder as the .exe; on Linux, in ~/.config/pedis-agent/config.json. The printer value depends on the connection: network:192.168.0.50 for a network printer, windows: for the default Windows queue, file:/dev/usb/lp0 for USB on Linux, serial:/dev/ttyUSB0 for serial.

    Tip: On Windows, install the thermal printer as a Generic / Text Only queue: a driver that renders the page scrambles the commands and you get garbage on the paper. On Linux, if /dev/usb/lp0 gives you permission denied, run sudo usermod -aG lp $USER and sign out and back in.
  5. Run a test before service

    Before trusting it with the lunch rush, do one pass with just the dummy printer: the ticket shows up on screen, without using paper. Then send a test order from a table and watch the paper come out — a header with the restaurant, the table, the order number, the waiter, the prep station and the time, and each item in large type, with the add-ons and the note underneath.

  6. Let it start on its own

    The kitchen has no time to remember to open a program. With pedis-agent --install, Windows creates a task that starts at sign-in and Linux creates a user service that restarts on its own if it crashes. On a device with nobody signed in, like a Raspberry Pi behind the TV, also run sudo loginctl enable-linger. To undo it, pedis-agent --uninstall.

  7. On an Android tablet, it's the same path

    If the kitchen uses a tablet, the Android app (5.0 and up) does the same job and also shows the kitchen screen. On the start screen you fill in Address, Token and Printer — bt: plus the MAC of the already-paired Bluetooth thermal printer, or net: plus the IP of the network one — and tap Save and start. Grant the Bluetooth permission and take the app out of battery saving, or printing stops when the screen turns off.

Frequently asked questions

Do I need to leave the device on all the time?+

As long as you want tickets coming out, yes: it's the device that fetches the orders and talks to the printer. That's why --install is worth it, so the program starts along with the device. A tablet or a cheap Raspberry Pi does the job.

Does any thermal printer work?+

Any thermal ticket printer that speaks ESC/POS works — and that's the vast majority of them. The connection can be network, USB, serial, a Windows or CUPS queue, and on Android a paired Bluetooth printer or network.

A ticket printed twice. Is that a bug?+

No, it's on purpose. If the confirmation doesn't arrive within a minute, the server offers the job again: the kitchen can tear up a duplicate ticket, but nobody can recover a lost order. If it always prints double, check that you don't have two print apps pointed at the same kitchen.

Does printing cost anything?+

No. qmen.us is free for the restaurant and charges no commission per order: we're not a marketplace. What you pay for is the printer, the paper and the kitchen device, and those are yours.

Someone copied the token. What do I do?+

Open Set up on the prep station's card and click Generate a new token. The old one stops working instantly, and then you just update the print app's config (and the Android app's, if you have one) with the new token.

Glossary

Print agent
The small program that runs on the kitchen's device, fetches tickets from qmen.us, prints them on the thermal printer and confirms.
Print token
A kitchen's printing password. It comes from the Dashboard, goes into the print app's config and can be changed whenever you like.
Kitchen
The display where orders show up and move from Preparing to READY.
ESC/POS
The language thermal ticket printers understand. It's what the print app produces for each ticket.

Related resources

Still need help?

If the step-by-step didn't solve it, send us your question with your restaurant's name. We reply within one business day.

Create your qmen.us account and let tickets print on their own

Create your account with Google, build your menu and get your first order going today.

Get started