CSV Picking Storage Article Scan

Standard PoV · Two-step pick: storage then article

Workflow 4

What this workflow does

The operator loads a pick job via get-job, scans a picking box, then for each line first scans the storage location at Storage Pre Step and then scans the article barcode at Storage Step. This two-scan pattern verifies both location and product. Multi-quantity lines use quantity confirmation; optional inventory checks stock after picking. Completed jobs post via complete-job.

Data formatCSV or API job.results[] with storage, article, quantities, stock
Main scan loopPicking box → scan storage (Pre) → scan article → quantity / inventory → next line
LightTagLightTags are optional and not required — the PoV works the same way with or without them.
LanguagesDE / EN via translationKeys
PoV example dataStorage 12.0.3 · scan LT-12-0-3 · Article Cola · ART-1001

Typical scan sequence

Picking box Scan storage Scan article Qty confirm / inventory …
Two-step verification: Storage Pre confirms the operator is at the right shelf (storage_scan); Storage Step confirms the correct article (article_number).

Operator journey

What the operator does on the watch — each step shows the screen, required action, and where the flow goes next.

1
Load Step Automatic

Pick job loads via get-job. Lines with storage, article, and quantity appear in results[].

  • Results present → Picking Box Step
  • Empty job → No open orders
KO-2026-0056781 line
Load Step
Loading Data

workflow y=40 · 18pt SemiBold · error y=70

↓ Picking Box Step
2
Picking Box Step Scan box

Scan picking container barcode. Value is stored on all pick lines.

Scan container Skip picking box (OPTION)
Picking Box Step
OPTION
Order 123
SCAN picking box

order y=28 · scan_box y=68 · SCAN_NOW_TOUCH y=98

↓ Storage Pre Step
3
Storage Pre Step Scan storage

Screen displays location 12.0.3. Scan LT-12-0-3 to confirm arrival.

12.0.3LT-12-0-3
Scan LT-12-0-3 Wrong location → beep
Storage Pre Step
OPTION
Please SCAN storage
12.0.3

scan_storage y=28 · storage y=58 auto · SCAN_NOW_TOUCH y=118

↓ Storage Step (scan article)
4
Storage Step Scan article

Storage Step shows quantity and Cola. Scan ART-1001 to pick. Wrong article → negative feedback.

12.0.3ColaART-1001qty 3
Scan ART-1001 Wrong article → beep
Storage Step
OPTION
Quantity
3
Article info: SCAN to confirm
Cola

quantity y=30 · article_info y=84 · article y=88 auto

↓ Quantity Confirm (qty > 1) or Inventory / next line
5
Quantity Confirm & Inventory Scan article ALL TAKEN

Multi-qty → Quantity Confirm; stock known → Inventory ask; shortage via numpad. OPTION: skip article, skip job, short pick.

Scan ART-1001 2 / 3 ALL TAKEN YES / NO (inventory)
Quantity Confirm Step
OPTION
2 / 3 ALL TAKEN
Article info: SCAN to confirm
Cola

got_all 180×51 y=26 · article y=88 auto

↓ Storage Pre (more lines) or Completion
6
Completion Step Save

All lines have check. Press SAVEapi.workflow.done() and complete-job.

SAVE complete-job
Completion Step
OPTION
Order 123
Please save
SAVE

job y=48 · save 180×50 y=143

✓ Job finished

Flow diagram

Main path
flowchart TD
    Load[get-job / Load Step] -->|results| PBox[Picking Box Step
scan container] Load -->|empty| NoJob[No open orders] PBox -->|container scan| Pre[Storage Pre Step
scan storage_scan] PBox -->|skip box| Pre Pre -->|storage scan| Storage[Storage Step
scan article] Pre -->|wrong scan| Pre Storage -->|article scan qty>1| Qty[Quantity Confirm Step] Storage -->|article scan qty=1 + stock| Inv[Inventory Step] Storage -->|article scan qty=1| Next[Next line or Completion] Qty -->|all taken| Next Inv -->|YES| Next Inv -->|NO| Count[Inventory Count Step] Count --> Next Next -->|open lines| Pre Next -->|all check set| Done[Completion / api.workflow.done] style Pre fill:#e3f2fd,stroke:#1565c0 style Storage fill:#e6f7fc,stroke:#0090BD style Done fill:#e8faf3,stroke:#4ED49B

Key screens

Storage Pre Step
OPTION
Please SCAN storage
12.0.3
Storage Step
OPTION
Quantity
3
Article info: SCAN to confirm
Cola
Quantity Confirm Step
OPTION
2 / 3 ALL TAKEN
Article info: SCAN to confirm
Cola

Options & special cases

OPTION menu & branches

REST API

Pattern: get-job → work → complete-job

FieldMeaning
storage / storage_scanStorage location label and barcode
article_number / article_nameExpected article at location
required_quantity / stockQuantity and on-hand stock
scannedArticles / checkProgress and completion timestamp
noteShortage or skip reason

get-job (response)

{
  "name": "KO-2026-005678",
  "results": [{
    "lineId": "501",
    "storage": "12.0.3",
    "storage_scan": "LT-12-0-3",
    "article_number": "ART-1001",
    "article_name": "Cola",
    "required_quantity": 3,
    "stock": 48
  }]
}

complete-job (request)

{
  "name": "KO-2026-005678",
  "results": [{
    "lineId": "501",
    "storage": "12.0.3",
    "article_number": "ART-1001",
    "required_quantity": 3,
    "scannedArticles": 3,
    "check": "2026-06-24T14:32:00Z",
    "note": ""
  }]
}