Start: Load Step (get-job) → init trolly_ID/HU_ID/trolly_place_ID → Trolly Step (or NoOpenOrders if empty). Trolley & HUs: Scan trolley → Set HU Step (box counts S/M/L) → Done → HU ID Step. Scan one HU per job_customer → Trolly Place ID Step. Scan one position per job_customer → Check Trolly Place ID (router). If all positions set → Prepare Storage; else → back to HU ID Step. Picking: Prepare Storage (router): all check → Completion; else first uncompleted → Storage Step (storage + article). Scan storage_scan: match + stock≥1 → Inventory Step (Yes/No); match → Quantity Confirm; wrong → negative_feedback. Inventory: Yes → Quantity Confirm. No → Inventory Count (-1/+1, ENTER) → Quantity Confirm or next Storage. Quantity confirm: Scan trolly_place_ID: last article at location → Prepare Storage; more articles → Part_Quantity Confirm (scan next position). Wrong scan → negative_feedback. Part_Quantity Confirm: Same scan logic; last → Prepare; more → same step (next article). Completion: Prepare when all check → Completion Step. Save → api.workflow.done(). Options (OPTION): From any step: BACK to previous or Stop Working / Skip article / Skip order / Confirm Storage etc. as per each Options step.
REST API — Step by Step
Required HTTP Data Connection endpoints per workflow step (derived from step logic). Standard PoV JSONs still use CSV/local job data — these endpoints are what your ERP/WMS should expose when migrating to HTTP.
Main flow
1Load Step (Initial)
GETget-jobLoad open picking job and all pick lines
2Trolly Step
POSTassign-trolleyRegister trolley ID for multi-order picking
3HU ID Step
POSTassign-huAssign handling unit to trolley / order
4Trolly Place ID Step
POSTassign-trolley-placeAssign pick target position on trolley
5Prepare Storage Step
POSTcomplete-jobClose picking job and send results to ERP
6Storage Step
GETget-pick-lineLoad current line: storage, quantity, article, stock
GETget-pick-lineLoad current line: storage, quantity, article, stock
10Inventory Count Step
GETget-pick-lineLoad current line: storage, quantity, article, stock
PATCHupdate-stock-countSubmit corrected stock count after inventory
11Completion Step
POSTcomplete-jobClose picking job and send results to ERP
Branches
12NoOpenOrders
GETget-jobLoad open picking job and all pick lines
Options menu
13Options Trolly Step
POSTassign-trolleyRegister trolley ID for multi-order picking
14Options HU ID Step
POSTassign-huAssign handling unit to trolley / order
15Options Storage Step
POSTconfirm-without-scanConfirm article without barcode scan
16Options Storage Step1
POSTconfirm-without-scanConfirm article without barcode scan
17Options Storage Step2
POSTskip-articleSkip current article, move to next line
POSTskip-orderSkip entire order in multi-order job
18Options Quantity Confirm Step
POSTskip-articleSkip current article, move to next line
POSTskip-orderSkip entire order in multi-order job
19Options Part_Quantity Confirm Step
POSTskip-articleSkip current article, move to next line
POSTskip-orderSkip entire order in multi-order job
Technical Reference — CSV Multi Order Multi
Multiple orders in one trolley job. See the step-by-step section above for which endpoint belongs to which workflow step.
1 · HTTP Data Connection setup
Connection type
HTTP Data Connection
Identifier
e.g. erp-system — referenced as dataConnection in the workflow
Base URL
Customer web service URL (HTTPS)
Authentication
None, Basic, Bearer, or OAuth
Endpoint identifier
Unique name per operation (must match step cards above)
Endpoint URL
Relative path, e.g. /orders/{orderId}/lines/{lineId}
Pre / post processing
Transform request and map response to NIMMSTA job format
requestOverride
Workflow can override body, headers, params, query (JavaScript)
Async rules:await works in loadData pre/post processing, onStopJobCode, and api.workflow.runActionCodeAsync(...). Step handlers (onScan, onButtonPress) are synchronous — use a loading step or workflow actions for API calls.