Skip to main content

Using the Fulfillment Workbench Modified on Thu, 15 Oct at 10:05 AM

The Fulfillment Workbench turns authorised fulfilment plans into fulfilment orders for many sales at once. It doesn't allocate stock — each sale's stock was already allocated when its fulfilment plan was authorised. Instead of opening each sale and creating its fulfilment, you choose a location and a priority order, Simulate to see which sales can be picked in full, partially or not at all from the stock on hand, then Generate orders to create (and optionally execute) the fulfilment documents in bulk.

Use it at the start of a shift, after a stock receipt lands, or whenever you need to decide which customers get limited stock first. The simulation is a planning estimate only and holds nothing. Generating moves each sale's allocation from its plan onto the new fulfilment orders.

✏ Updated after Confluence cross-check (15 Oct 2026): Corrected. The Workbench releases authorised plans into fulfilment orders. It doesn't allocate stock; the fulfilment plan does. Confirmed against the Fulfillment Workbench spec and the backend.

Before you start

  • Sale — Fulfilment full access (SaleFulfillmentFA). Read-only users can't open the workbench.
  • Sales need an authorised Fulfillment Plan (see Planning fulfilment); the workbench works from plan lines that aren't yet in an authorised fulfilment.
  • Decide whether you want the run to only authorise fulfilment orders (warehouse staff pick and pack as usual) or to auto-execute pick, pack and ship. Auto-execution records work as done — use it only when the physical work has already happened or is fully automated.

Open the workbench

Go to Sale → Fulfillment and switch the segment control at the top from Fulfillments to Workbench. Your choice is remembered per tenant.

The empty workbench shows Configure a simulation — Open simulate to choose fulfillment strategy, filters, and simulation parameters.

? Screenshot needed: Workbench tab, empty state with Simulate and Generate orders buttons

Run a simulation

1. Open Simulate

Click Simulate in the workbench header. The Simulate fulfillment dialog opens.

2. Choose the scope

  • Fulfillment Location — the location whose plan lines to release, or All locations.
    ✏ Updated after Confluence cross-check (15 Oct 2026): Reworded. The Workbench doesn't allocate from a location.
  • Filters: Requested Delivery Date from / to, Service Level, Customer, Customer Tier, Sales Channel.

You must set either a Fulfillment Location or a Requested Delivery Date "To" value, otherwise: Select a Fulfillment Location or a Requested Delivery Date "To" value before simulating.

3. Set priority rules

Priority rules decide which sales are released first when the stock on hand can't cover every sale — the simulation counts available stock against sales in this order.

✏ Updated after full article audit (15 Oct 2026): Corrected. Priority rules order the release; they don't hand out stock.
Pick a Strategy (a saved rule set from fulfilment configuration) or build a custom one:

  • Click Add rule and choose a component — Service Level, Customer Tier, Requested Delivery Date or Fully Pickable — and a direction, Ascending or Descending.
  • Drag rules by the grip to reorder; the first rule is applied first. Each component can be used only once.
  • At least one rule is required.

Choose a partial-fulfilment mode: Allow Partial Fulfillment (a sale can be released with some of its lines) or Ship Complete Only (a sale is released only if every line is pickable).

? Screenshot needed: Simulate fulfillment dialog — location, filters, strategy, priority rules grid, partial mode

4. Simulate

Click Simulate. For a large run you may first see Large simulation — This simulation includes: N Sales, N Fulfillment Plan lines. It may take longer to calculate. Continue? Click Continue or Cancel and narrow the filters. Beyond the safe limit the run is blocked outright (This simulation is too large…).

Read the results

Summary cards show Eligible Sales, Fully Pickable, Partially Pickable and Not Pickable, with the completion time. The results grid lists each sale with Customer, Service Level, Customer Tier, Requested Delivery Date, Planned Qty, Allocatable Qty, Short Qty, Result and Location.

  • Filter with All / Fully pickable / Not fully, or search by sale number.
  • Result is one of Fully Pickable, Partially Pickable, Not Pickable or Skipped — Requires Partial (the sale would need a partial release but the mode is Ship Complete Only).
  • Click Preview on a row to open the sale detail panel: the Plan table (per line — Plan, Released, Available, Pickable, Short) and Blocking products (per product — Required, Available, Short). This tells you exactly which SKU is holding a sale back. Released is the quantity already on authorised fulfilments that haven't been picked yet. Available is on hand, less reserved stock and less those unpicked quantities, after the sales ahead of this one in the priority order have taken their share.
    ✏ Updated after Confluence cross-check (15 Oct 2026): Added how Released and Available are worked out.
? Screenshot needed: Results grid with a sale preview panel open showing Blocking products

Quantities in the grid are aggregates and may mix units of measure; use the detail panel for exact per-line figures.

Stale results

If stock or any fulfilment plan in the run changes after you simulate, a banner appears: These results are out of date — the simulation inputs changed since ‹time›. Run the simulation again before generating. Click Simulate again. Generation is blocked while results are stale.

Generate fulfilment orders

1. Open Generate

Select rows if you want a subset, then click Generate orders. The Generate Fulfillment Orders dialog opens. If the simulation is more than a few minutes old you'll see This simulation is N min old — re-run it for fresher stock.

2. Choose the Scope

  • Selected sales (N) — only the rows you ticked.
  • All eligible sales in simulation (N) — every eligible row from the run.
  • All sales matching current filters — re-enumerates against the current filters. If the set exceeds the safe limit: Too many sales — narrow the filters and try again.

3. Choose what to generate for

  • Pickable Quantities Only (recommended) — only the quantities the simulation marked pickable.
  • Full Remaining Quantities, Including Currently Unavailable Quantities — the full remaining plan quantity; picking may stay blocked until stock arrives.
  • Fully Pickable Sales Only — only rows classified as fully pickable.

4. Choose the Execution mode

  • Authorize Fulfillment Orders — create or update the fulfilment orders and authorise them for warehouse execution. Pick, pack and ship are left for the floor.
  • Authorize and Auto-Pick — also record the pick, for orders that can be picked in full.
  • Authorize and Auto-Pick and Pack — also pack into a single default package.
  • Authorize and Auto-Pick, Pack and Ship — also record the shipment, which consumes stock.

Auto-execution modes are unavailable with Full Remaining Quantities. When you pick one, read the warnings in the dialog: orders that can't be picked in full stay Authorized and are not reported individually; a credit hold on any generated order aborts and rolls back the whole run; and a ship failure likewise rolls back everything.

The dialog also warns May replace existing Draft / Credit Hold orders: a matching Draft or Credit Hold fulfilment order (same sale, location, delivery date) is reused and its lines replaced.

? Screenshot needed: Generate Fulfillment Orders dialog — Scope, Generate for, Execution mode

5. Generate

Click Generate. The Generation complete dialog reports Created, Updated, Skipped and On Credit Hold counts, lists any sales Skipped — modified after simulation, and shows Affected fulfillments with Open fulfillment links. Click Simulate again to refresh, or Close.

What happens next

  • Each generated fulfilment appears on its sale's Fulfillments tab and in Sale → Fulfillment → Fulfillments, at Authorized (or further along if you chose auto-execution). Warehouse staff continue in Pick, pack and ship.
  • Orders that landed On Credit Hold need Release On Hold by a user with the override permission.
  • For auto-executed runs, open each affected fulfilment to confirm how far it progressed — the result dialog doesn't report pick/pack/ship per order.
  • Simulating holds no stock. Generating creates and authorises the fulfilments, which moves each sale's stock allocation from its fulfilment plan onto the fulfilment orders — the total held for the sale doesn't change. Nothing leaves inventory until each fulfilment is shipped.
    ✏ Updated after Confluence cross-check (15 Oct 2026): Corrected. Generating transfers the plan's existing allocation to the fulfilment orders rather than allocating stock. The earlier backend-review wording was wrong.

See also

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article

Have more questions?

Submit a request