POS hardware: receipt printer, barcode scanner, cash drawer

Markdown

View as Markdown

POS hardware: receipt printer, barcode scanner, cash drawer

LaunchMyStore POS is browser-first, so most hardware connects through WebUSB, Web Bluetooth, or a cloud printing protocol. This guide covers the three pieces every counter needs — printer, scanner, drawer — plus the troubleshooting checklist when one of them goes dark.

What you need

  • A receipt printer (thermal, ESC/POS-compatible, or Star CloudPRNT)
  • A barcode scanner (USB HID or Bluetooth keyboard-emulation)
  • A cash drawer (RJ-11 kick cable connected to the printer)
  • Optional: Stripe Terminal reader or supported card reader, label printer for shipping
  • A modern Chrome or Edge browser (WebUSB / Web Bluetooth required)

Receipt printers

Option A: ESC/POS USB / Bluetooth (most common)

Any thermal receipt printer that speaks ESC/POS works. Tested models include Epson TM-T20, TM-T88, Star TSP100, TSP143, and most generic 58mm/80mm USB thermal printers.

To pair:

  1. Open POS → More → Hardware.
  2. Click Pair receipt printer.
  3. Pick the printer from the Chrome WebUSB picker.
  4. Click Print test receipt to confirm the connection.

The pairing is per-browser-per-device. If you switch laptops or clear browsing data, you re-pair.

Option B: Bluetooth receipt printer

For mobile registers (iPad, phone), use the Bluetooth printer pairing flow. Pair the printer at the OS level first (Bluetooth settings), then in POS → Hardware click Pair Bluetooth printer.

Option C: Star CloudPRNT (recommended for fixed locations)

CloudPRNT printers poll our backend on a 10-second interval and pull print jobs over HTTPS — no browser permissions or WebUSB needed, and the printer keeps working even if the cashier’s laptop is sleeping. Setup:

  1. POS → More → Hardware → Add CloudPRNT printer.
  2. Copy the generated poll URL (contains a per-printer secret).
  3. Paste it into the printer’s admin web UI under “CloudPRNT URL”.
  4. Save and reboot the printer.

The printer will start polling. Within 10 seconds, the printer appears as Connected in the hardware panel.

The CloudPRNT poll URL contains a random 24-char URL-safe secret. Never share the URL publicly — anyone with it can queue jobs to your printer.

Barcode scanners

The cheapest path is a USB scanner that emulates a keyboard. Plug it into the cashier’s laptop or tablet and it’s ready — no driver, no pairing. POS listens for fast keystroke sequences ending in Enter and treats them as a barcode scan.

Supported types

  • USB HID (keyboard emulation) — the default. Works everywhere.
  • Bluetooth scanners — pair at OS level, then they behave like USB.
  • Camera scanning — if no hardware scanner is present, click the camera icon in the catalog tab to use the device camera (uses the browser’s BarcodeDetector API).

Once you scan a barcode that matches a product SKU or variant barcode, the item is added to the cart instantly.

Tuning the scanner

Most scanners ship with the right defaults. If scans land in the wrong field:

  • Re-program the scanner to send Enter as a suffix (every model has a config barcode for this in its manual).
  • Make sure no other input is focused before scanning.

Cash drawers

Cash drawers don’t connect to the laptop directly — they plug into the back of the receipt printer via an RJ-11 (kick cable). The printer sends an electrical pulse that pops the drawer open at the end of a cash sale.

Wire it up

  1. Plug the cash drawer’s RJ-11 cable into the printer’s drawer kick port (DK port).
  2. Make sure the receipt printer is paired and online in POS → Hardware.
  3. Ring up a cash test sale — the drawer should pop at print-time.

You can also fire a manual drawer kick from More → Hardware → Open drawer. This permission is gated to roles with the Cash-drawer permission (Owner, Manager, Admin, and yes, Cashier — cashiers need to make change).

Customer-facing display (optional)

If you have a second screen at the counter facing the customer, open /pos/customer-display on it — it mirrors the current cart in real time. Setup:

  1. On the cashier’s device, log into POS as usual.
  2. On the second screen, open the same store URL at /pos/customer-display.
  3. Sign in with the same account — it auto-binds to the cashier’s active cart.

Troubleshooting

Printer says “Disconnected”

  • Chrome shows printer as in use — close every other tab/app that might hold the WebUSB handle.
  • USB cable came loose — replug.
  • Browser permission revoked — re-pair from POS → Hardware.

Receipt prints garbled

  • Wrong code-page on the printer (set to UTF-8 or CP437).
  • Paper width mismatch (58mm template on an 80mm printer) — pick the right template in More → Receipt.

Scanner does nothing

  • Focus is on the wrong input field — click into the catalog search bar first.
  • Scanner didn’t send Enter as suffix — re-program with the config barcode in its manual.

Cash drawer won’t open

  • RJ-11 cable not seated in the printer’s DK port.
  • Some cheap drawers need 24V; check spec matches the printer’s kick voltage.
  • Cashier role missing the Cash-drawer permission.

FAQ

What happens if my receipt printer disconnects mid-sale?

The sale still completes — inventory and cash are recorded regardless of print success. The receipt is queued and POS shows a toast “Receipt could not print”. Re-print from Orders → Order detail → Print receipt once the printer is back.

Do I need separate hardware for each register?

Each physical register needs its own printer and drawer. A barcode scanner is per-cashier. The deviceId field on the shift lets you tag which physical terminal opened the shift so multi-terminal stores can reconcile drawers separately.

Can I use AirPrint or a regular office printer?

Yes, for A4 paper receipts. But a thermal ESC/POS printer is dramatically faster and cheaper per receipt for a real shop.

Does CloudPRNT need a special printer?

Yes — it’s a Star Micronics protocol. Star TSP143IIIU, TSP654II, and TSP100IV (Wi-Fi or Ethernet variants) support it. The benefit: no browser permissions, no laptop USB tether.

Will the camera scanner work in Safari?

Safari supports BarcodeDetector in iOS 16+. On older iOS, fall back to a paired Bluetooth scanner.

Where do I configure receipt templates?

POS → More → Receipt. You can pick paper width (58mm / 80mm / A4), toggle store logo, edit header/footer text, and switch language. Templates are stored per store in the PosReceiptTemplates table.


Was this article helpful ?