Barcode Scanners
Stock Receiving & Order Picking
Last updated: July 3, 2026
STOAR supports barcode scanning for stock receiving, order picking, and product lookup — with no drivers, plugins, or apps to install.
Scanners connect in HID keyboard mode: the scanner pairs or plugs in as a keyboard, "types" the decoded code into the focused input, and sends Enter to submit. Any scanner that supports HID keyboard mode works.
What You Can Do with a Scanner #
| Workflow | Where | What happens |
|---|---|---|
| Stock receiving | Admin → Catalog → Stock Receiving | Each scan adds stock and writes an audit-log entry |
| Order picking | Admin → Orders → Pick Items | Each scan confirms an item on the order; Mark Shipped unlocks once every line is picked |
| Product lookup | Admin global search | Scanning a code finds the product instantly |
| Custom apps | GET /api/v1/barcode/{code} |
Resolve a barcode to a product/variant from your own app |
How Codes Are Resolved #
Products and variants each carry two identifiers:
- Barcode — the manufacturer code (EAN-13, UPC-A, GTIN) printed on the item's packaging
- SKU — your internal identifier
A scan resolves in this order: variant barcode → product barcode → variant SKU → product SKU. That means items can be labelled with either manufacturer barcodes or your own SKU labels — both scan correctly.
Barcodes are set in Admin → Catalog → Products, on the product itself and on each variant.
Try It Without a Scanner #
You don't need any hardware to try the scan workflows. Because a scanner simply types a code into the focused field and presses Enter, you can do the same by hand: open Stock Receiving, Order Picking, or Point of Sale, click the scan field, then type or paste a product's barcode or SKU and press Enter. The item is received, picked, or added to the sale exactly as if you'd scanned it. It's the quickest way to demo or learn the flow before your scanner arrives — and a handy fallback if a label is damaged or missing.
Developers building a custom app can resolve a code without the admin UI at all:
GET /api/v1/barcode/{code} returns the matching product and variant as JSON.
Scanner Setup #
Every scanner needs three things:
- HID keyboard mode — not serial/SPP or SDK mode
- Enter (Carriage Return) suffix — sent after each scan, this is what submits the form
- US English keyboard layout on the host (or configure the scanner to match) — a mismatched layout can garble alphanumeric codes
Socket Mobile 1D (S700 series)
Pocket-size Bluetooth scanner for linear (1D) barcodes — EAN, UPC, Code 128, Code 39. A good fit when all your labels are standard retail barcodes. Cannot read QR or Data Matrix codes.
- Scan the "Basic Mode (HID)" configuration barcode from the Socket Mobile quick-start guide — Socket scanners often ship in Application Mode (SDK), which STOAR does not need
- Pair via your device's Bluetooth settings (it appears as a keyboard)
- The Enter suffix is the Socket default in HID mode — scan into any text field to verify
Socket Mobile 2D (S720 / S740)
Same form factor and setup as the 1D model, with a 2D imager that also reads QR Code, Data Matrix, PDF417, and codes displayed on screens. Choose this if you print QR labels for bins or internal SKUs.
Setup is identical to the 1D model: scan "Basic Mode (HID)", pair as a keyboard.
Zebra DS2208 (corded USB)
Corded USB handheld with a 1D + 2D imager. The workhorse for a fixed receiving desk — no battery, no pairing.
- Plug into USB — it works as a HID keyboard out of the box
- Scan the "Add an Enter Key (Carriage Return/Line Feed)" configuration barcode from the DS2208 Quick Start Guide
- If characters come out wrong, scan the keyboard-layout config barcode matching your host (e.g. US English)
Zebra DS2278 (cordless Bluetooth)
The cordless sibling of the DS2208 — same imager plus a charging cradle. Best for picking while moving through the warehouse.
- Via cradle: plug the cradle into USB; it presents itself as a keyboard — plug and play
- Direct Bluetooth: scan the "Bluetooth Keyboard Emulation (HID Slave)" config barcode, then pair from your device's Bluetooth settings
Either way, also scan "Add an Enter Key (Carriage Return/Line Feed)".
Choosing a Scanner #
| Scenario | Recommendation |
|---|---|
| Fixed receiving desk, lowest cost | Zebra DS2208 |
| Mobile picking in the warehouse | Zebra DS2278 |
| Pocketable, used with a phone or tablet | Socket Mobile 2D |
| Standard retail barcodes only, tight budget | Socket Mobile 1D |
| Any QR or Data Matrix labels, now or later | Any 2D model |
Troubleshooting #
| Symptom | Fix |
|---|---|
| Scan fills the field but nothing submits | Enter/CR suffix not configured — scan the suffix config barcode for your model |
| "Unknown code" notification | The code isn't stored on any product or variant — add it in Admin → Catalog → Products |
| Letters or symbols come out wrong | Host keyboard layout doesn't match the scanner — set both to US English |
| Socket scanner won't type anything | It's in Application Mode — scan the "Basic Mode (HID)" config barcode |
| Leading zeros missing on UPC codes | Configure the scanner's UPC transmission format to match the code as stored — matching is exact |