Skip to content

Scale, drawer & customer display

  • Pair each “peripheral” device (cash drawer, scale, label printer, customer display).
  • Test each from the device card.
  • Read the activity log when something misbehaves.

The cash drawer opens automatically when a cashier closes a sale and the printer finishes the receipt. The pulse travels through the receipt printer (most drawers piggyback on the printer’s RJ12 port).

IfDo
Drawer doesn’t open after a saleCheck the receipt printer is paired and reachable. The pulse goes printer → drawer.
Drawer opens during shift close onlyThat’s expected — the drawer also opens when the shift auto-closes.
Drawer opens randomlyMis-wired RJ12 — only the pulse pin should be connected.

For shift cash counts, see Work shifts — the Close flow requires typing the counted cash and the system reconciles against the expected amount.

Used for weighed products (produce, meat, cheese). Pair via USB / serial.

FieldValue
Namee.g. “Backroom scale”.
ConnectionUSB device path or serial COM3 / /dev/ttyUSB0.
Baud rateMatch your scale (commonly 9600 or 4800).
ProtocolCAS, Mettler, Generic 12-byte — depends on your scale brand.
Read unitkg / g / lb.

To use: in the POS workspace, pick a product that has “Track by weight” enabled. The POS reads the scale on every add-to-cart. The weight appears in the cart panel.

Most stores without a scale should leave scale products off the menu; mis-typed weights are the #1 cause of stock drift in weighed-item categories.

The label printer prints barcode shelf labels. Pair via USB or LAN depending on the model.

Workflow:

  1. POS workspace → More → Barcode labels (or Items → Products → Print labels).
  2. Pick products → the system generates a Code128 barcode from the client submit id (not the numeric orders.id — see Code128 rule).
  3. The label printer prints the slip with the product name + price + barcode.

If you sell to customers who rely on EAN-13, see the Code128 vs EAN-13 rule before changing the barcode format.

The customer display is a secondary screen that shows the running cart total, payment amount, and change due. Pair via the POS bridge running on the lane PC.

Most customer displays are USB-driven LCD panels (e.g. Epson DM-D, generic 20x2 VFD). The bridge reads the model from USB and pushes the cart snapshot on every cart change.

If your display shows the wrong amount after a discount, check that applied discounts propagate through the cart line items, not just the status pill.

Each device card has a Test button:

  • Cash drawer — pulses the open signal. The drawer pops open.
  • Scale — reads the current weight and shows it in the card.
  • Label printer — prints a 1-line test slip.
  • Customer display — pushes “TEST” to the screen.

If any of these fail, the POS bridge is the first place to look — see POS bridge & ECR Hub.

Cash drawer opens during a refund. Expected. The drawer also pulses for refunds.

Scale weight reads 0. The serial port is right but the baud rate is wrong. Try 9600 first; check the scale’s spec sheet.

Label prints the wrong barcode. You’re using a product that was created from a numeric orders.id legacy path. Reprint via the Code128 lane flow — see POS — technical.

Customer display freezes. Restart Vendor Desktop. The WebSocket session is one-to-one with the bridge; a stale session blocks new pushes.