# Your first build order > Stock a location, create a build order, reserve materials, and produce one unit. Build orders are how you make units in BuildTrace. A build order is a plan to build a number of units of one assembly. This page takes you from an empty workspace to a produced unit. You need a product with a **released** revision. If you did not turn on **Lock for production** when you added the product, release its v1 revision first. Who can do what: adding a product needs a role with `parts:write` (`ENGINEER`, `MANAGER` or `ADMIN`). Receiving stock needs inventory write access, and creating and reserving build orders needs `production:write`. `OPERATOR`, `MANAGER` and `ADMIN` have both. ## 1. Receive materials into a location Stock lives in locations, such as a warehouse or a shelf. 1. Open **Inventory**, then select **Locations**, and add a location. Give it a code, a name and a kind. 2. Receive the parts your product needs: - Select **+ Stock (RAW)** for parts you track by quantity. Choose the revision, the location and the quantity. A lot and a supplier are optional. - Select **+ Serial** for parts you track by serial number. Choose the revision and the location, then enter the serial numbers or generate a range. The setup checklist also links to both steps, with its **Add location** and **Receive stock** buttons. ## 2. Create the order 1. Open **Build Orders** and select **New build order**. 2. Choose the **Assembly Revision** and enter the **Target Qty**, the number of units you want. 3. Choose **Consume materials from** and **Produce units to**. These are locations. They can be the same. Only assemblies appear in the list. BuildTrace copies the order's lines from the revision's effective BOM at the moment you create the order. Later changes to the BOM do not change an order that already exists. See [BOMs](https://buildtrace.eu/docs/concepts/boms.md). A new order starts as `DRAFT`. ## 3. Acknowledge change orders and reserve If any engineering change orders (ECOs) apply to the revision, the order lists them on its **ECOs** tab. Acknowledge each one before you reserve. The **Reserve** button stays disabled until you do. Select **Reserve**. BuildTrace sets aside the quantities and the serialized components the order needs, and the order moves to `RESERVED`. If there is not enough free stock at the consume-from location, the reserve fails with an error that says so, and the **Materials** tab lists every item that is short. The order stays `DRAFT`. Add stock and select **Reserve** again. Later, if a reserved serial is quarantined or scrapped, the order shows how many reserved parts are short. Select **Reserve replacements** to top it up. ## 4. Start and produce a unit Select **Start**. The order moves to `IN_PRODUCTION`. Then select **Produce unit**. A six-step wizard walks you through it: 1. **Overview** 2. **Kit / Materials**: pick the serialized components and enter the lots you are using. 3. **Work Instructions**: tick off the steps. 4. **ECO Application**: say whether each change order was applied or skipped. 5. **Final Test**: if the revision has a test plan, you enter the results here, and BuildTrace judges them against the limits. If it has no plan, this step says so. 6. **Review & Finish**: select **Finish**. Finishing consumes the reserved components and lots and creates a new serial number for the unit. It also writes the unit's immutable as-built record: the exact components, lots, applied changes and test result. If the unit fails its final test, you can still finish it as failed. It is produced, then quarantined. Repeat for each unit. ## 5. Complete the order When the number of units produced plus the number scrapped reaches the target, select **Complete**. The order moves to `COMPLETED`. ## Next [Open the unit you produced](https://buildtrace.eu/docs/getting-started/first-serial.md).