Scanner App API — Version 1

v1 · stable · frozen

Binding interface specification for the Chainway C72 scanner app. This document is the single source of truth for the app developer. All changes are strictly additive (new optional fields, new endpoints). Breaking changes only appear under /api/scanner/v2/….

The device is dumb. The server is smart.

  • The scanner only reads EPCs and sends them to the REST API.
  • No business logic on the device (no PO matching, no stock calculation, no inventory rules).
  • The server decides, based on the selected mode, what action to take.
  • No printer integration on the device. Label printing and re-tagging happen in the backoffice (browser).

Visual reference for the app developer: every screen shown here maps to a mode and one or more API endpoints below.

Device Specs & Global Behavior

Device specs and global behavior

Specs & Behavior

All screens

  • Resolution: 720 × 1440 px (Chainway C72)
  • Language switcher: DE / EN in top-right status bar on every screen. Persisted per device (LocalStorage). Default = German.
  • Antenna: only active while trigger is held.
  • Haptic feedback: vibration on every successful scan.
  • Color code: Green = OK, Yellow = Warning, Red = Error.
  • Offline pill: yellow badge with queue count, only visible when queue > 0.
Login screen

1. Login

POST /api/public/scanner/v1/login

Home screen with 8 modes

2. Home

POST /session/start with mode

Goods receipt screen

3. Wareneingang

mode=receipt → /receipt/commit

Inventory count screen

4. Inventur (Zählen)

mode=count → /count/submit

Inventory reconcile screen

5. Inventur (Abgleich)

mode=inventory → /inventory/scan + /submit

Lookup screen

6. Lookup

mode=lookup → /lookup-batch

Last updated: 2026-06-19 — dual-environment (test + live) added. For questions → backoffice team.