Pharmacy Flow already holds the record: orders, lots, locations, receiving, QA and putaway, pack-verify, shipping. The execution layer is what turns that record into the next physical action. It models three things, a resource that does work, a task that is one unit of work, and a wave that releases tasks together, and it treats a person and a machine as the same kind of resource. This page describes exactly what is built today and what is still on the roadmap, because a fulfilment buyer deserves that distinction.
Three primitives: resource, task, wave
- Resource
- Anything that executes work. Kind is one of human, AMR, AGV, sorter, AS/RS or put-wall. A resource has capabilities (which task types it may take), a zone, a live status of idle, busy or offline, and, for machines, an API key issued when the resource is registered.
- Task
- The atomic unit of physical work. Type is one of receive, putaway, move, pick, replenish, count, sort or pack. A task carries from and to locations, the item reference and quantity, an acceptance criterion (what done requires: a scan, a cold pack), and handling flags for cold chain, controlled, hazmat and temperature control. Lifecycle: pending, ready, assigned, in progress, then done or exception.
- Wave
- A batch of tasks released together with a strategy and a progress rollup. A wave completes itself when its last task closes.
From orders to a released wave
- 1Plan
The planner takes the most recent open orders (up to sixty per wave) and emits a pick, pack and sort task chain for each. It stamps cold-chain and controlled flags from the product family, sends cold picks to the Cold zone and controlled picks to the Vault zone, and gives controlled picks a higher priority.
- 2Release
Releasing a wave flips its pending tasks to ready and timestamps the release. Nothing is dispatched until it is ready.
- 3Dispatch
Auto-dispatch assigns every ready task, in priority order, to a resource whose capabilities include that task type, round-robin across the matching fleet. A manual assign covers targeted work.
- 4Advance
Start, complete or flag an exception. Starting marks the resource busy; completing or excepting frees it once it holds no other in-progress task. Completing the last task completes the wave.

Dispatch to people and machines from one model

Outbound is part of the same record
When a task chain ends at the ship station, the parcel record that the pack station created carries carrier, service, packout and the cold-chain flag; the ship action adds it to the facility's open SSCC carton, writes the shipment and moves the order to Shipped. Carrier scans arrive by webhook and are stored once each, keyed on the carrier's event id. Delivery cascades to the order and to the partner's order.delivered webhook, but not while a cold-chain QA hold is open on the parcel.
The machine task API
x-resource-key header (or as a bearer token) and calls GET /api/fulfillment/tasks. The response is either the task it already holds (assigned or in progress, highest priority first), or the next ready task in its tenant whose type matches one of its capabilities, claimed with a conditional update so two machines cannot take the same task. If it loses the race it is told to retry. The task payload is deliberately plain:| Field | Meaning |
|---|---|
taskId, type, status, priority | Identity and ordering. |
item.ref, item.name, item.qty | What to move and how much; the order number is the reference for pick, pack and sort. |
from, to, zone | Locations, for example Cold-07 to Pack-IN. |
handling | coldChain, controlled, hazmat, tempControlled booleans the adapter must respect. |
acceptance | What done requires: scan unit, scan plus cold pack, insulated plus gel packs, SLAM label. |
report | The URL to POST progress to: /api/fulfillment/tasks/{id}. |
The scan-gated stations

Twenty minutes: we load a handful of your orders, plan and release a wave, dispatch to a human and a simulated robot, and walk a unit through Fill, Pack, Verify and Ship.
Handling flags and chain of custody
- ✓Cold-chain and controlled flags set from the product family at planning time
- ✓Controlled picks routed to the Vault zone and prioritised ahead of standard picks
- ✓Resource, assignee, assigned, started and completed timestamps on every task
- ✓EPCIS-style commissioning, packing, inspecting and shipping events with serial and SSCC
- ✓Parcel temperature readings against 2–8 °C, with an excursion opening a QA hold that blocks delivery
Shipped today, on the roadmap
| Capability | Shipped | Roadmap |
|---|---|---|
| Resources, tasks, waves with RLS | ✓ | |
| Wave planner (pick → pack → sort per order) | ✓ | Batch, zone and cluster strategies; pick-path sequencing |
| Capability-matched auto-dispatch, manual assign | ✓ | Constraint-aware dispatch on handling flags |
| Machine pull and report API with per-resource keys | ✓ | Row-locked claiming for large robot fleets |
| Live Control Tower: board, fleet, wave detail | ✓ | |
| Receiving, QA release and rule-suggested putaway (WMS) | ✓ | Receiving as WES task chains; ASN ingestion; dock scheduling |
| Replenishment and cycle-count task generation | — | Pick-face min/max replenishment, continuous counting, slotting |
| Goods-to-person and AS/RS integration | — | Adapters per vendor speaking the task API |
| Automated sortation and SLAM | — | Sorter dispatch, carton selection, manifest close-out |
Who this is for
Volume that arrives by API and leaves by carrier, where the constraint is the floor. See mail-order and the order API.
Every pick and pack flagged cold-chain, temperature readings on the parcel, QA holds on excursions. See GLP-1 fulfilment.
Office-stock volume across facilities with per-site resources and routing. See 503B and local manufacturing.
Frequently asked questions
Do we need robots to get value from this?+
How does a robot receive work?+
Can two machines claim the same task?+
Are controlled or cold-chain tasks prevented from going to the wrong resource today?+
What is the difference between this and the WMS?+
Which automation vendors are supported?+
Is the WES multi-tenant?+
The record underneath and the board on top.
How orders arrive before they become tasks.
Orchestration first, machines second: the sequence that works.
Cold-chain flags, temperature readings and QA holds in practice.
What to ask any fulfilment vendor.
Packout, readings and excursion handling.