Hardware compatibility
Status labels: Tested (verified on physical equipment, evidence recorded), Implemented, untested on hardware (code exists and is unit-tested), Planned, Unsupported. Nothing is listed as compatible without evidence.
| Equipment | Interface | Status | Notes |
|---|---|---|---|
| Barcode scanner, USB/Bluetooth in keyboard (HID) mode | Keyboard wedge | Implemented, untested on hardware | The register detects fast keystroke bursts ending in Enter (EAN-13/8, UPC-A/E, Code 128, Code 39 — whatever the scanner types). No driver needed. |
| Phone/tablet camera | Browser BarcodeDetector |
Implemented, untested on hardware | Chrome/Edge on Android, ChromeOS, macOS. Not available in Safari/Firefox — use a scanner. |
| ESC/POS thermal receipt printer (Epson TM-T20/T82, Xprinter, generic 80/58 mm) | Network (raw TCP 9100) via hardware bridge | Implemented, untested on hardware | Bridge renders the receipt document to ESC/POS (apps/device-agent). |
| ESC/POS printer | USB via hardware bridge | Implemented, untested on hardware | Linux: writes to /dev/usb/lp* (configurable devicePath). Windows USB printing needs a shared printer queue — planned. |
| Any printer | Browser print (80 mm stylesheet) | Implemented, untested on hardware | Works with any OS-installed printer. |
| Cash drawer on printer RJ11/12 port | ESC/POS pulse (pin 2 or 5) via bridge | Implemented, untested on hardware | Opens on cash sales and audited "no sale" opens. |
| Kitchen printer | ESC/POS via bridge | Implemented, untested on hardware | Kitchen ticket document from a sale. |
| Bluetooth ESC/POS printers | Web Bluetooth / bridge | Planned | |
| Card terminals — Yoco, Adumo, iKhokha, Peach, Paystack, SnapScan | Provider SDK/API | Planned — awaiting provider developer credentials | Today: any standalone terminal, cashier confirms approval. POS never handles card data. |
| Customer display, weighing scale, label printer | — | Planned | Device kinds exist in the data model. |
When you test a device, add a row with the model, firmware, OS, bridge version, date, and what was verified.