User Manual
Help Center/User Manual/Mobile operations: scan to receive, pick, move, and print

Mobile operations: scan to receive, pick, move, and print

Last updated 2026-10-13

Task center, scan-based receiving (with offload recording), scan-based picking, inventory moves, counts, replenishment execution, and cloud printing.

Getting in#

Open m.docklify.com in the phone browser and sign in. Under WMS you’ll find: tasks, inbox, scan, search, inventory, exceptions and more. Everything runs online — there is no offline mode.

Task center#

  1. The tasks page lists tasks assigned to you (task types: receive, pick, count, replenishment, …).
  2. Tap into a task detail: task info on top, a timeline on the side (created → assigned → started → each execution step with operator/result, exceptions in red → finished).
  3. Tap Start (or just submit the first time) → pending → in_progress.

Scan receiving#

  1. Enter the receive task and first record the offload: pick the offloading type (full_pallet whole-pallet unload / loose_carton loose-carton unload / manual manual handling / other) + optional notes → the task moves pending → in_progress and one step log is written.
  2. Decide mode: two big cards (palletized / direct) → tap → confirm → the method is written back to the task. The method locks after the first receiving submission.
  3. Palletized in 4 steps: Summary → Build → Pallets → Confirm (variance confirmation → submit → success page lists the pallet LPNs).
  4. Direct in single-screen cards: per line enter actual received qty + picking location (scan/select) + condition + optional Lot#/Expiry; Submit → variance confirmation. Multiple rounds are allowed — the backend auto-advances the receipt to received once everything is in.
  5. Close the task when done: receive-complete verifies everything is received → receipt becomes received and Purchase quantities are recalculated in full. If anything remains, closing is blocked (WMS_STATE_001) — ask a supervisor.

Scan picking#

The task walks you step by step in seq order. Each step: scan the from location (valid → a picking location jumps to to-LPN; a storage location first shows the pallet LPN box) → scan the to LPN (must be a tote assigned to the task) → enter qty → tap Pick. Partial picks auto-queue a remainder step at the tail; Next skips; Force close settles on actuals; short marks stock-outs for later re-generation.

Inventory moves, counts, replenishment#

  • Move inventory (big single-screen scan page): whole-pallet (scan the pallet LPN) or by-product (scan source location + product + qty) → scan the destination location to confirm → writes a move double-leg ledger entry.
  • Counts: enter the counted qty per location/product line → enter-count submits one line at a time; counted lines show system/counted/variance. Close the task by going back to the task list (approval and posting happen on desktop).
  • Replenishment, two steps: Step 1 pick at the storage location (scan source location / item / source pallet LPN, qty ≤ qty_to_move — records qty_picked, no ledger write yet); Step 2 drop at the destination pick location (scan its code to confirm) → writes the move double-leg and the line goes to done.
  • Inventory inquiry: the inventory page searches by SKU/product name and shows cards with SKU/name/location/quantity (read-only).

Cloud printing from the phone#

  1. On a page that supports printing (e.g. the pallet-build page), tap the cloud-print button → POST /api/wms/print-jobs — the job enters the queue (queued).
  2. The Device Hub on a warehouse workstation subscribes to Supabase Realtime (with a 3-second polling fallback) → atomically claims the job → prints locally on the Zebra.
  3. Print completion/failure is written back as done/failed; the phone polls the status for feedback.
After submitting a print, you get a link to the print center — go to Admin → Print Center to watch the queue status.
Scanners and cameras don’t need the Hub: a scan gun is a keyboard wedge (a scan types as keystrokes, no pairing needed) and the phone camera uses the browser’s getUserMedia — both work natively.