Purchase Orders
A purchase order (PO) buys stock from a vendor. A single PO
targets either raw materials or finished
products — set by its targetType — and that choice decides
which inventory ledger the order feeds.
What problem it solves
A PO is the bridge between sourcing and inventory. It records what you've committed to buy (so the stock shows as on order), then captures what actually arrives through one or more receipts (so the stock becomes on hand). Partial deliveries are normal, so order and receipt are tracked separately.
Lifecycle
A PO starts in Planning, where it has no inventory effect yet. Moving to Placed (and onward through In Transit, Partial, Received, Paid) marks it as a real commitment. Cancelled is terminal and undoes the on-order effect. Each status stamps a business date you can edit.
Fields, line items, and receipts
- Header —
poNumber(unique per org), the vendor,targetType, a ship-to location, expected dates, and cost add-ons (shipping, setup, other). - Line items — one row per material or product, with a
quantityandunitCost. - Receipts — each delivery is a receipt with its own date and lines; a receipt line's quantity can differ from the ordered line, which is how partial and over-receipts are recorded.
Inventory effects
| When | Ledger | Event | Quantity |
|---|---|---|---|
| Status leaves Planning (Placed and beyond) | materials or finished goods, per targetType | ORDER | ordered quantity |
| A receipt is created | same ledger | RECEIVE | received quantity |
| Status becomes Cancelled | same ledger | the ORDER is reversed | — |
The ORDER effect is driven by status and reverses if you cancel; the RECEIVE effect is
driven by receipts. Together they move stock from on order to on hand. All entries
carry the PO number as their ref.
Relationships
- Buys from a vendor into a location.
- Lines reference materials or products.
- Feeds the materials or finished-goods ledger.
See also
Drive purchase orders through the REST API or the MCP server.