Production orders that move your stock
A build is an order to make N of a product from its bill of materials at one location. Issue the components, record what you made, and Stockroom takes the parts out of Shopify inventory and puts the finished goods in. Work in progress, yield, stages and cost are tracked on the same document.
One ticket, from queued to built
A build is a work order: what to make, how many, where, by when, who has it, and where it stands.
- Start from a recipe. Pick a bill of materials, a quantity, a location and a due date. The build snapshots the recipe, so a later edit to the bill of materials does not change the sheet the bench is working from.
- Status comes from what happened. Draft, in progress, partially built or built, derived from the records on the build. Mark it blocked when a part has not arrived, and unblocking returns it to whatever the records say.
- Components, with the shortfall as numbers. Per component: required, consumed, what is here at the build's location, how much short, and what is incoming - including which open purchase orders carry it and when. "Can build N now" shows under the plan.
- Order the shortfall in one click. Order shortfall drafts one purchase order per supplier for the short quantities, with pack sizes and minimums applied, for you to review before anything is sent.
- Components here, output there. A build can consume components at one location and land the finished goods at another, for example a workshop that builds and a warehouse that sells.
- A make queue with filters and sorting. Open, done and all; filter by status, location, stage, priority, assignee or workstation; sort by due date or priority; an overdue toggle; your choice of columns; CSV export. Home shows open, blocked and overdue builds at a glance.
Issue the parts, then record what you made
There is a gap between taking parts off the shelf and finishing the product. Stockroom tracks that gap as work in progress.
- Issue components into work in progress. Issue moves components off the shelf into the build's own work-in-progress pool, as one Shopify adjustment at the build's location, valued at the cost they were issued at. The dialog prefills enough for the units still to make, and every line is editable.
- Record a build run. Quantity built, quantity scrapped, and the components consumed, prefilled from the recipe and editable. A build takes as many runs as you need, partial runs included, and you can build more than planned.
- Yield and scrap on the record. Only the good units enter finished goods. The scrapped units' share of parts and charges is expensed as scrap, with a note, and the build shows its yield. A run that made no good units is allowed.
- Return what you did not use. Leftover issued components go back on the shelf with Return to stock, capped at what is out. A build cannot be closed while parts are still out.
- One Shopify push per run. Finished goods up and components down in a single inventory adjustment, so both directions land together. The build number is in the reference your Shopify admin shows.
- Undo anything, reopen anything. Undo a run, an issue or a return and it is voided, so the record stays: stock comes back, costs re-derive, the Shopify movement is reversed by one queued correction, and the status steps back. Reopen a built or cancelled build and carry on from where the records left it.
Stages, priority, assignee, workstation
Status comes from inventory. The workflow is yours: name your own stages, and every build carries who has it, how urgent it is and which bench it is on.
- Your stages, in your order. Settings > Builds: an ordered, renameable list - Queued, Cutting, Assembly, QC, Ready, or whatever your floor calls them. New builds start in the first stage; the build page shows the pipeline with one tap to move to the next.
- Priority, assignee, workstation. Low to urgent, any staff member who has opened the app, and an optional list of benches, machines or cells. Filter and sort the queue by any of them; urgent sorts first.
- Due dates and overdue flags. A due date on the build, an Overdue badge when it passes, an overdue toggle on the list, and a Build overdue trigger in Shopify Flow.
- Every change in the activity trail. Created, started, issued, recorded, undone, moved to QC, assigned to Sam, priority set to urgent, shortfall ordered. The trail shows who did what and when, on the build itself.
- Shopify Flow knows about builds. Build created, finished, blocked, overdue, stage changed and assigned as triggers, and Create build as an action. Emailing the assignee when a build lands on them is a two-step Flow.
- Print the build sheet. The work order for the bench: what to make and how many, due date, where parts come from and goods land, the pick list with a tick box per line and what is still needed, what has been built so far, and a sign-off. Costs are left off the sheet and stay on the build page.
What each unit cost to make
Every run snapshots the component costs it consumed. Labor and overhead are charges on the build. Together they give an assembled cost per unit that does not change later.
- Components at the cost they carried. Issued parts are valued at the cost they were issued at; parts consumed straight from the shelf at the cost on the day. A price change next week does not restate this run.
- Labor and overhead as charges. Add Labor and Overhead rows to the build and they spread over the planned quantity, so units you never made do not absorb labor. The cost card shows components against charges and a ledger that ties.
- Update the product cost when you choose. Each time you record a run, choose whether the assembled cost updates the product's cost in Shopify as an on-hand-weighted average, with a preview before you confirm.
- Build numbers in the cost history. Each costed run writes a cost-history row on the product, labelled with the build number, and builds appear in the product history, the movement ledger and the COGS walk. Outputs enter as cost layers at assembled cost.
- Five manufacturing reports. Builds, Work in progress (issued, consumed and committed value), Component consumption, Build throughput (lead days, on-time %) and Build cost variance (recipe vs actual, with scrap). All five can be scheduled, exported and reached through Stockroom AI.
- Balanced journals for your accounting. Every issue, return and run writes a balanced posting by role (components, work in progress, charges, finished goods, scrap, variance), ready for MyWorks Sync to book in QuickBooks. The MyWorks side of that is in development.
What a build does not do
What to know before you plan around it.
- No routings, capacity or labor time. Stages, priority, assignee and workstation are labels you move a build through. Stockroom does not sequence operations, plan capacity across benches or time labor. That is shop-floor software territory, where tools like Katana start.
- Nothing is reserved on Shopify until you issue. An open build claims components in Stockroom's own readiness math, so a second build on the same parts reads short. Shopify sees no reserved or incoming quantity until components are issued or a run is recorded. The movement then shows in Shopify with the build number in the reference and a reason of "Other", because the Shopify API has no assembly reason yet.
- One build, one location. Components come from one location per build (the output can land at another). Building the same product at two sites is two builds.
Common questions
Can I take something apart?
Yes. An unbuild runs the bill of materials the other way. Take N finished units apart at a location and the components go back into stock at their own costs, for example a case into singles or a kit into its parts. It uses the same build document, records and undo.
What if we make more, or fewer, than planned?
Both are fine. You can build more than planned, and the build shows built against planned. A short build closes with Mark as built at what was made, once at least one run is recorded, and the units never made do not absorb labor.
Does a build change my COGS?
Finished goods enter your cost layers at their assembled cost, and the components they consumed leave theirs. When the finished product sells, COGS is the cost of making it. Consumption itself books no COGS. Scrap is expensed separately as scrap.
Can several people work the queue?
Yes. Any staff member who has opened the app can be an assignee, every change is on the activity trail with a name, and the list filters by assignee and workstation. A Stockroom account at go.stockroom.app carries the same builds, so your team can work the queue without a Shopify staff seat.
What does it cost?
Nothing. Manufacturing is in early access and it is free, like the rest of Stockroom, with no trials and no credit card at install. Early access means we are still building it out and want to hear what your floor needs next.
Try builds free
Install Stockroom free from the Shopify App Store. No trials, no credit card.