Hardware
Connect your thermal printer
Updated: 2026-09-28
Connect your thermal printer
Also known as: printer setup, configure printer, thermal printer install, Epson TM-T20, 80mm printer, ESC/POS bridge install, kiosk printing.
brasio supports two printing paths:
- PDF path (simple setup): The browser generates a PDF and sends it to the OS default printer. No brasio admin config needed — set the printer as the default at the OS level.
- ESC/POS bridge (multi-printer routing): A small background service (
brasio-print-bridge) runs on your till computer and receives print jobs directly from brasio over the internet. Each job is routed to the correct printer based on category (e.g. kitchen ticket to the kitchen printer, receipt to the till printer). Installed from a downloadable Windows package — no technical knowledge required. It also lets the manager's Open till button pop the cash drawer silently, without printing anything (without the bridge, the button prints a one-line slip through the browser instead), and lets a waiter print a table's pre-bill straight from the handheld.
The PDF path is simpler and works with any OS. The ESC/POS bridge path scales to multiple printers and requires no Chrome kiosk flag.
Part A — PDF path (browser printing)
A1. Connect the printer to the network
- Plug the printer into the mains and into your router with an Ethernet cable.
- Switch it on and let it warm up. Most Epson TM-T20 units print a self-test page automatically showing the IP they received from DHCP.
- If no page comes out, hold the Feed button for a few seconds while the printer is on.
Note the IP shown on the page, for example 192.168.1.50.
A2. Reserve the IP in the router
Log in to the venue's router and create a DHCP reservation that ties the printer's MAC address (also on the self-test page) to a fixed IP. Without this, the printer may get a new IP after a power cut and stop printing.
A3. Install the printer on the till's operating system
Install the printer as the default printer:
- Windows: Settings → Bluetooth & devices → Printers & scanners → Add a printer. Search by IP if not auto-discovered. Set it as default.
- macOS: System Settings → Printers & Scanners → Add (+). Enter the printer IP. Set as default.
- iPad / Android: Install the manufacturer's app (Epson iPrint, etc.) and follow the pairing steps, or use AirPrint if supported.
A4. Enable silent printing (Chrome kiosk mode)
For a proper till experience where print dialogs never appear, launch Chrome with the --kiosk-printing flag:
chrome --kiosk-printing https://<your-slug>.brasio.io
Add this flag to a desktop shortcut or startup script so it is always active. Without --kiosk-printing, Chrome shows the print dialog each time — the ticket still prints, it just requires a tap to confirm.
A5. Test
Go to a table in the till, add a product to an order and tap Send to kitchen (kitchen ticket button). If the printer is correctly set as the OS default, the ticket should come out.
If nothing prints, check:
- The printer is set as the OS default printer.
- The printer is powered on and has paper.
- Chrome is running with
--kiosk-printingif you want silent mode. - The printer is reachable on the network (try pinging its IP from the till device).
For further troubleshooting, see Printer not printing.
Part B — ESC/POS bridge (multi-printer routing)
The ESC/POS bridge lets brasio route kitchen tickets to a kitchen printer and receipts or pre-bills to a till printer — or any other combination you configure.
B1. Requirements
- A Windows 10/11 (64-bit) till computer that stays on during service.
- Your thermal printer(s) on the same network, each with a fixed IP (see A1–A2).
- Administrator rights on the till computer (only needed once, during installation).
macOS and Linux versions are not packaged yet — contact support if you need one.
B2. Download the bridge
On the till computer, download the installer package:
https://brasio.io/downloads/brasio-print-bridge-win-x64-1.0.1.zip
Unzip it to a permanent folder, e.g. C:\brasio-bridge (not the Downloads folder, and not inside the zip).
B3. Generate a bridge token in the brasio admin
- Log in to your brasio admin at
<your-slug>.brasio.io/account/printers. - In the Bridge token section, click Generate token.
- The token is shown once. Generating a new one invalidates the previous token, so if a bridge is already running this will disconnect it until you reconfigure.
- Click Download config.json. The file it saves already contains your token and your venue's own address — there is nothing to type.
B4. Configure
The easy way: move the config.json you downloaded in B3 into the folder you
unzipped in B2, replacing the one that came with the zip. It is already complete.
By hand, if you would rather — open config.json in the unzipped folder with
Notepad and set both fields:
{
"apiUrl": "https://<your-slug>.brasio.io/api",
"token": "bridge_<tenantId>_<random>"
}
token— replacePASTE_BRIDGE_TOKEN_HEREwith the token from B3. It always starts withbridge_.apiUrl— replace<your-slug>with your own brasio subdomain, the same address you use for the till, plus/api. The file ships with aYOUR-VENUEplaceholder and the bridge refuses to start until you change it.
Save the file. If you get it wrong, bridge.log in the same folder says which
field failed.
B5. Install
Right-click install.bat → Run as administrator. This registers the bridge as a hidden background task that starts automatically every time Windows boots, and starts it immediately. There is no window or tray icon — all activity is written to bridge.log in the same folder.
After about 30 seconds, the bridge status indicator in account/printers turns green.
Re-running install.bat is always safe — it replaces the previous installation (do this after changing config.json). To remove the bridge, run uninstall.bat as administrator.
B6. Add printers in the brasio admin
- Go to
<your-slug>.brasio.io/account/printers. - Click + Add printer.
- Fill in:
- Name — e.g.
KitchenorTill - IP address — the printer's fixed LAN IP, e.g.
192.168.1.50 - Port —
9100(standard for Epson and most thermal printers) - Model — optional, e.g.
Epson TM-T20 - Paper width (mm) —
80for standard thermal paper - Till — bind this printer to one till, so that till's receipts and cash drawer use it. Leave as Not bound to a till for a shared or kitchen printer. This is what lets a two-till venue give each machine its own printer and its own drawer — without changing the Windows default printer on a PC that also prints documents.
- Check Default printer for the business if this printer should receive all jobs that aren't explicitly routed to another printer
- Name — e.g.
- Click Add printer.
Which printer gets which job
- Receipts and cash-drawer kicks go to the printer bound to the till that took the sale (set Till on the printer). If that till has no printer, they fall back to the business default; if there is no default either, they print through the browser to the machine's own OS default printer.
- Kitchen tickets follow the category's Print destination. The business default is only used as a fallback for categories that have no destination set — so a venue whose kitchen categories all point somewhere does not need a default at all.
- Pre-bills always use the business default, so set one if you use them.
B7. Assign category destinations (optional)
To route kitchen tickets to a specific printer:
- In the terminal admin, open Catalog and edit a category.
- Use the Print destination dropdown to pick the target printer.
- Subcategories inherit this setting unless overridden individually.
- Categories with no destination set walk up the parent chain, then fall back to the default printer.
Leave drink categories set to (System default) — they will fall back to the default printer automatically.
Then switch kitchen tickets over: go to Admin → Venue settings → Kitchen dockets and choose Straight to the kitchen printer. Until you do, kitchen tickets keep printing from the device through the browser. See Kitchen tickets.
B8. Test each printer
In account/printers, click Probar next to each printer. If the bridge daemon is connected and the printer is reachable, a test ticket prints. If the button shows an error, see the troubleshooting section below.
Troubleshooting
Bridge shows offline in the admin
The bridge cannot reach the brasio API, or is not running. On the till computer check:
- Open
bridge.login the bridge folder.BRIDGE TOKEN REJECTED (401)means the token inconfig.jsonis wrong or was regenerated in the admin — paste the current token and runinstall.batagain. - Internet connection on the till computer.
- The background task exists: run
schtasks /query /tn BrasioPrintBridgein a command prompt. If it's missing, runinstall.batas administrator again.
Test print fails
The bridge can reach brasio but cannot reach the printer. Check:
- The printer IP is correct in the admin.
- Run
telnet <printer-ip> 9100from the bridge computer — if it hangs or refuses, the printer is not reachable on that port. - Confirm the printer and the bridge computer are on the same LAN segment.
- Confirm the printer has a fixed IP (DHCP reservation) and hasn't changed addresses.
Jobs queued but never printed
- Check
bridge.login the bridge folder for connection or printer errors — every job and every error is logged with a timestamp. - The printer may be off, out of paper, or have its cover open. Resolve the hardware state — the bridge retries automatically (up to 3 times with backoff), and failed jobs are reported back to brasio.
printer.no_default error when sending to kitchen
At least one item on the ticket is in a category with no Print destination, and there is no business default to fall back on. Either set a Print destination on that category, or mark a printer as Default printer for the business.
Printer not found (deleted?); system default will be used.
A category's destination printer was deleted. The system falls back to the default printer. Edit the category in the terminal admin catalog and re-select a valid printer from the Print destination dropdown.
More in Hardware
Still stuck?
Talk to our 24/7 agent in your language. If it can't answer, we'll pass you to a human.