---
title: Run an assembly order
summary: >
  An assembly order turns components into finished units at one location. A
  supervisor creates it and approves it; whoever is packing opens it on their
  phone, enters how many they finished in this session, and confirms.
  Components come off stock and finished units go on, both at that location.
  You can pack across several sessions until the order is complete.
type: task
group: make
step: 4
permission: assembly.execute
prerequisites:
  - /help/make/build-a-bill-of-materials
related:
  - /help/make/the-three-numbers-of-a-built-product
  - /help/make/cant-build-a-kit-that-should-be-buildable
  - /help/store/move-stock-between-locations
last_updated: 2026-08-07
---

**A parts list says what a product is made of. An assembly order is somebody
actually making it.**

Until someone builds, a gift set exists only as its component parts on a shelf.
The assembly order is the one event that consumes those parts and puts finished
units on the books, at a named place, on a named day.

This page covers:

- [How an assembly order moves](#how-an-assembly-order-moves)
- [Create and approve the order](#create-and-approve-the-order)
- [Pack it on the floor](#pack-it-on-the-floor)
- [What one session does to your stock](#what-one-session-does-to-your-stock)
- [When a component is short](#when-a-component-is-short)

## How an assembly order moves

Four states, in order.

| Status | What it means |
| --- | --- |
| Draft | Written down, not released. Editable. Nobody can pack it yet. |
| Approved | Released to the floor. It appears in the packing queue. |
| In progress | At least one session has been packed. Some units are done. |
| Completed | The full quantity has been built. |

An order that should not have been raised can be **dismissed** at any point
before it completes. Dismissing is not deleting — the order stays visible in
history, it just leaves the queue.

Every order names one product, one quantity to build, and **one location**. The
location matters more than it looks: components are taken from there, finished
units land there, and an order can only be packed where the parts physically
are. Kits are built at a warehouse. A retail counter or an event stall holds
stock and sells it, but nobody assembles behind the counter.

## Create and approve the order

On a computer, in the assembly orders list:

1. Click **New order** and pick the built product. Only products with a parts list can be chosen — there is nothing to consume otherwise.
2. Enter the quantity to build. The form shows how many the components on hand could support, so you can see straight away whether the number is realistic.
3. The component lines fill in from the parts list. Each line's expected quantity is the per-unit quantity times the quantity to build, plus wastage, rounded up.
4. Optionally set a scheduled date and a note for whoever picks it up.
5. Save. The order lands as a **draft**.
6. When you are ready to release it, click **Approve**.

Approval is the gate. A draft is invisible to the floor, and only an
administrator, the supply chain lead or the operations lead can approve one.
Approve too early and the queue fills with work nobody has committed to; approve
too late and the person at the bench has nothing to do.

If a draft needs changing after approval, revoke the approval first. Approved
orders are locked against edits on purpose.

## Pack it on the floor

This half is a phone job. The screens are short.

Open **Assembly**. You see two lists.

- **In progress** — orders somebody has already started.
- **Planned, waiting to start** — approved orders ready to pick up.

Each row carries a pill. **All components ready** means every line can cover
what is left. **Short on components** means at least one cannot.

Tap the order you want. Then:

1. Check the header. It names the product and how many units are left to build.
2. Set **how many you are finishing in this session**. It defaults to everything remaining. Tap it down if you are only doing part of it.
3. Look at the component list. Each line shows exactly how much this session will take, with a coloured dot: green if it is there, amber if it is tight, red if there is none.
4. Tap the build button. A sheet appears listing every deduction and the finished units going in.
5. Read the sheet. Confirm.

That is the whole flow. Do not tap twice while it is saving.

You do not have to finish an order in one go. Pack three today, four tomorrow.
Each session is recorded on its own, and the order tracks the running total.
Once the total reaches the target, the order completes on its own and you land
on a confirmation screen.

If you have to stop, tap **Pause**. The order goes back to the planned list with
its progress intact, and anyone can pick it up later.

### Starting your own pack

You do not always need a supervisor. Tap **New pack** and pick a product, and
the order is created already in progress so you can start immediately. Use it
when the shelf tells you to build something and waiting for paperwork would
just be waiting.

## What one session does to your stock

One session is one atomic event. Either all of it happens or none of it does.

When you confirm:

- Each component is **deducted** at the order's location, one permanent ledger entry per component.
- The finished units are **added** at the same location, as their own ledger entry.
- The order's produced total goes up, and the status becomes in progress or completed.
- The new numbers are queued out to any storefront that sells from that location.

Nothing is overwritten and nothing is deleted, so any session can be explained
later: who packed it, when, how many, and what it consumed.

Sessions never over-consume across a run. The app works out each session's share
of the components from the cumulative total, not from the session in isolation,
so packing 3 then 4 then 3 takes exactly what packing 10 at once would have
taken.

A built product's numbers move in two directions at the same time here. Finished
units go up. The units you could still build go down, because the components
that backed them are now inside something. The house way of saying it is "we
have 25 in stock, and the components to assemble 50 more" — after a session of
ten, that is 35 in stock and the components for 40 more.

## When a component is short

The session is refused, in full, and nothing is written.

The check runs before anything is saved, at the order's own location, against
what is available there — on hand minus whatever is already promised to orders.
If any one line cannot cover its share, the whole session raises an error naming
the component, how much more it needs, and how much is there.

That is the safe outcome. A half-written session would leave components deducted
against units that were never built.

Four things worth checking, in this order:

- **Is the stock at the right place?** The most common cause by far. Components at another site do not count. Transfer them in, then pack.
- **Is it promised to something else?** Stock reserved by an open order is not available to consume, even though it is physically present.
- **Is the parts list right?** A quantity typed as 10 instead of 1 makes an order ten times hungrier than the bench is.
- **Pack a smaller session.** If you genuinely have parts for four and the order is for ten, build four now and the rest when stock lands.

Do not work around a shortage by adjusting stock upward to make the screen let
you through. That trades a blocked order for a number nobody can trust.

## Explore

**Writing the parts list.** An assembly order can only consume what the
product's bill of materials says it is made of.
[Learn more →](/help/make/build-a-bill-of-materials)

**A kit that should be buildable but is not.** The usual causes, and which one
to check first.
[Learn more →](/help/make/cant-build-a-kit-that-should-be-buildable)

**Moving components to the bench.** Stock has to be at the order's location
before it can be consumed there.
[Learn more →](/help/store/move-stock-between-locations)
