> ## Documentation Index
> Fetch the complete documentation index at: https://www.adorabl.info/llms.txt
> Use this file to discover all available pages before exploring further.

# Purchase orders & receipts

> Create purchase orders and receive inventory.

Purchasing covers purchase orders to suppliers and goods receipts into inventory. POs commit expected spend and quantities; receipts update stock on hand and feed three-way match when bills arrive.

## Prerequisites

Before you create purchase orders:

* [Suppliers](https://www.adorabl.info/accounts-payable/suppliers.md) exist for the businesses you buy from.
* [Items](https://www.adorabl.info/products/items.md) are set up as stock goods with **Postable** GL defaults. See [Item GL accounts](https://www.adorabl.info/books/setup/system-accounts.md#item-gl-accounts).
* [Warehouses](https://www.adorabl.info/products/warehouses.md) define where receipts post inventory.
* Optional: [Payables setup](https://www.adorabl.info/accounts-payable/setup/payables-setup.md) for approval and match policies.

| Prerequisite | Purpose |
| - | - |
| Stock items | PO lines resolve to catalog SKUs |
| Receiving warehouse | Receipts increase qty at a location |
| Supplier terms | Expected dates and default payment terms |

## Purchase order statuses

| Status | Meaning |
| - | - |
| **Draft** | Editable; not sent to supplier |
| **Open** | Confirmed; awaiting receipt |
| **Partially received** | Some lines received; balance outstanding |
| **Received** | All lines fully received |
| **Closed** | Administratively closed |
| **Cancelled** | Voided before full receipt |

## Receipt statuses

| Status | Meaning |
| - | - |
| **Draft** | Editable; no inventory impact |
| **Posted** | Inventory and GL updated |
| **Cancelled / Void** | Reversed receipt |

## Create a purchase order

**1. Open Purchase Orders**

1. In the sidebar, open **Inventory** (or **Accounts Payable**, depending on your nav).
2. Click **Purchase Orders**.

Stat tiles filter the list: **Open**, **Overdue**, **Partially received**, and **Received**. Click a tile to scope the table; click again to clear. Search matches PO number, supplier, or status, and the **Status** column filter offers the status names. The toolbar shows **Showing X of Y** with a **Show all** reset.

**2. Create a new PO**

Click **New PO**.

adorabl opens a purchase order with:

* **Supplier** (required) — the search menu shows each supplier's open-PO count
* **Order date** and **Expected date**
* **Ship to warehouse** and the supplier address
* **Supplier ref** — the supplier's own reference for this order. It may repeat across POs; adorabl warns you after save when another PO already uses the same value.
* **Quoted freight**, **Quoted duty**, **Quoted handling**, **Quoted insurance**, and **Quoted other** — the forwarder's or broker's quoted charges for this order. They do not change the PO total; they seed the estimate when you [allocate landed cost](https://www.adorabl.info/purchasing/landed-cost.md) to the receipt.
* Line grid for items, quantity, unit cost, and warehouse

Required fields are marked with an asterisk. Hover the info icon beside a field for guidance.

**3. Add lines**

On the line grid:

1. Select an **item** from the catalog. The line description becomes that item's name, including when you change the item on a line that already has a description.
2. Enter **quantity** and **unit cost**.
3. Choose the **receiving warehouse** per line when multiple locations apply.

Line totals roll up to the PO header total. Line numbers are fixed once the PO is saved; new lines append after the last number.

**4. Confirm the PO**

**Save as Draft** keeps the PO editable and shows it as **Draft purchase order** — the PO number is assigned when you confirm. **Save** confirms the PO and moves it to **Open**.

Open POs appear on the list with expected dates — overdue open POs highlight when expected date is in the past.

If the supplier has an email on their default address and [Email sending](https://www.adorabl.info/books/setup/email-sending.md) is verified, adorabl emails the purchase order to the supplier automatically on save.

## Amend an open purchase order

Open and partially received purchase orders stay editable. When you save a material change, adorabl asks why and records an **order action** with a full before-and-after snapshot.

**1. Edit the PO**

Change quantities, costs, dates, or lines directly. On lines that have received or billed units, identity cells (type, item, description, unit, unit cost) are locked, and quantity can only drop as far as the received or billed amount. Fully received or billed lines cannot change quantity or be removed.

**2. Pick a reason**

A bar docks at the bottom of the screen next to **Save changes**. It names the detected change — quantity reductions read **Could not receive** — and offers reason chips. Choose **Other** to type your own.

**3. Save changes**

Click **Save changes**. The PO and the action save together. Draft POs and notes-only edits do not ask for a reason.

Recorded actions appear on the PO's **Order actions** tab; the **Activity** tab keeps the field-level log. See [Audit log and record history](https://www.adorabl.info/admin-and-settings/audit-log.md).

## Copy a purchase order

Use **Copy order** on any purchase order to start a new draft with the same supplier, warehouse, terms, supplier ref, notes, and lines. Expected dates shift relative to today. Receipts, received and billed quantities, bills, payments, and sales-order links are not copied. If the supplier ref is already in use on another PO, adorabl shows a warning after the copy is created.

## Receive goods

A receipt starts from the supplier, not from a single PO. One receipt can cover every open purchase order from that supplier that arrived in the same delivery.

**1. Start a new receipt**

Open **Receipts** from the sidebar and click **New receipt**, or click **Receive** on a purchase order.

The Receipts list has **Draft**, **Posted**, and **Cancelled / void** tiles to scope the table, and search matches receipt number, PO number, supplier, or status.

In **Supplier or PO #**, search for the supplier or scan a PO number. Selecting a supplier includes **every open purchase order** and **every open line** for that supplier. Starting from a PO keeps that PO in focus, with the supplier's other open POs available to add.

**2. Uncheck what did not arrive**

Under **Purchase orders**, uncheck a PO that is not in this delivery. Under **Lines receiving**, uncheck an individual line that did not arrive. The **Receipt total** updates as you go.

**3. Enter received quantities**

For each remaining line:

1. Confirm **quantity received** — lower it for a short shipment.
2. Verify the **Warehouse** (defaults to the first selected PO's ship-to, otherwise your receiving default).
3. Set the **Receipt date**.

**4. Save as draft or save**

* **Save as Draft** — keeps the receipt editable with no stock impact. Drafts show as **Draft** in the list and header; the `RCPT-` number is assigned when the receipt posts.
* **Save** — posts the receipt. adorabl:

  * Updates **Stock on hand** at the receiving warehouse
  * Posts inventory / GRNI journal entries per item GL defaults
  * Advances each linked PO to **Partially received** or **Received**

View updated quantities on [Stock on hand](https://www.adorabl.info/products/stock-on-hand.md). Open quantity on a purchase order shows as **Inbound** there until the receipt posts.

On a posted receipt, **Create return** sends goods back to the supplier. See [Supplier returns](https://www.adorabl.info/purchasing/supplier-returns.md).

> [!NOTE]
>
> Draft receipts do not reserve quantity. Posting rechecks the remaining open quantity on each PO line, so two drafts for the same line cannot both post in full.

## Add landed cost to a receipt

Freight, duty, handling, and insurance you pay to land a shipment can be absorbed into the inventory cost of the goods on a posted receipt.

1. Open the posted receipt and click **Add landed cost**. The receipt is pre-selected; tick other posted receipts if one carrier or broker invoice covers several deliveries.
2. Enter the estimated charges — PO quotes default in — preview the allocation, and confirm.
3. When the carrier invoice arrives, open the event from the receipt's **Landed costs** tab and enter actuals.

The **Landed costs** tab on a receipt lists every allocation event with its `LC-` number, reference, date, status, and total. Receipts with no allocation yet appear as **Open** on the **Purchasing → Landed cost** list. See [Landed cost](https://www.adorabl.info/purchasing/landed-cost.md) for the full flow and the accounting.

## Purchase for a sales order

Sales-order lines support two linked purchasing paths:

| Procurement type | Delivery path | Inventory and cost |
| - | - | - |
| **Purchase to order** | Supplier → your warehouse → customer | Receipt increases inventory. The later customer fulfillment relieves inventory and posts COGS. |
| **Drop ship** | Supplier → customer | Goods never enter your warehouse. The linked AP bill records the cost. |

For purchase-to-order lines, the linked PO shows the originating sales order. After the PO is fully received, click **Fulfill sales order** to open the standard pick, pack, and fulfillment workflow.

For drop-ship lines, confirm the customer ship-to address on the PO. Record the supplier's tracking number on the waiting fulfillment when shipment occurs.

See [Sales orders & fulfillment](https://www.adorabl.info/commerce/sales-orders-and-fulfillment.md#purchase-to-order).

## Match to bills

When the supplier invoice arrives:

1. Enter the bill on [Bills and adjustments](https://www.adorabl.info/accounts-payable/bills-and-adjustments.md) — from one or more receipts or POs using **Transactions to Apply** (the fast path), or as a standalone bill.
2. On a standalone bill, adorabl links each stock line to a posted receipt automatically when exactly one receipt safely matches the item and quantity. Ambiguous cases are left for you to pick.
3. Each saved bill line shows its PO and receipt beneath it, so you can see what it was matched to and click through.
4. Post. Stock lines must be matched to a receipt, and the unit price must fall within the tolerance (2% or \$1 per unit by default) — otherwise posting stops with a clear message.

Closed purchase orders imported from a legacy system appear in the PO list with a **Migrated** badge. Click through to read-only archive detail when you need the original record.

> **Coming soon: Advance Ship Notification (ASN)**
>
> Inbound EDI 856 ASN workflows for supplier shipments are planned. Receive from PO lines manually until ASN intake ships.

## Relationship map

Open purchase orders and receipts expose a **Relationships** action in the detail header. The map shows the supplier, linked receipts, matched bills, landed cost events, and their journal entries — useful for tracing GRNI accruals or confirming what a receipt or bill was matched against. The action is hidden on new POs until the record is saved.

## Example: Trail Ridge Outfitters

Trail Ridge replenishes daypacks from Apex Supply Co.:

| Document | Number | Detail |
| - | - | - |
| **PO** | PO-4421 | 200 × AP-3300-NV @ \$42.00 → **Denver DC**, expected March 18 |
| **Receipt** | RCPT-1188 | 200 received March 17 — posted |
| **Bill** | BILL-8842 | \$8,400.00 + freight — matched to PO-4421 / RCPT-1188 |

Partial receipt scenario: Apex ships 120 of 200 units early.

1. Receipt **RCPT-1187** posts 120 → PO status **Partially received**.
2. Second receipt **RCPT-1188** posts remaining 80 → PO status **Received**.
3. Bill matches total received qty before payment on [Outgoing payments](https://www.adorabl.info/accounts-payable/outgoing-payments.md).

Multi-PO delivery: Apex sends one truck covering **PO-4421** (daypacks) and **PO-4425** (rain covers). The receiver starts a new receipt, picks **Apex Supply Co.**, sees both POs and all open lines checked, unchecks the rain-cover line that was back-ordered, and posts one receipt against both purchase orders.

Amendment: Apex confirms only 180 daypacks can ship this season. The buyer lowers line 1 on **PO-4421** from 200 to 180, taps **Supplier delay** in the reason bar, and saves. **Order actions** records `Quantity 200 → 180` with the reason.

## Related guides

> **[Suppliers](https://www.adorabl.info/accounts-payable/suppliers.md)**
>
> Supplier master data and remit-to addresses.

> **[Bills and adjustments](https://www.adorabl.info/accounts-payable/bills-and-adjustments.md)**
>
> Post supplier invoices against POs and receipts.

> **[Landed cost](https://www.adorabl.info/purchasing/landed-cost.md)**
>
> Absorb freight, duty, and handling into inventory cost.

> **[Items](https://www.adorabl.info/products/items.md)**
>
> Maintain SKUs and purchasing defaults.

> **[Stock on hand](https://www.adorabl.info/products/stock-on-hand.md)**
>
> Verify quantities after receipts post.

## Troubleshooting

> **Cannot add item to PO line**
>
> Confirm the item is a stock good with postable GL defaults. Non-stock and service items may be bill-only depending on your setup.

> **Receipt will not post — insufficient on-order qty**
>
> Received quantity cannot exceed the open quantity on the PO line. Adjust the receipt or amend the PO before posting.

> **PO stuck in Partially received**
>
> Expected when some lines are not fully received. Post remaining receipts or close the PO administratively if the balance will not arrive.

> **Stock on hand did not update**
>
> Confirm the receipt status is **Posted**, not **Draft**. Check the receiving warehouse on the receipt line matches the location you are viewing on Stock on hand.

> **Bill amount differs from PO**
>
> Freight, tax, or price changes cause legitimate variance. Small unit-price differences (within 2% or \$1 per unit) post without intervention. Larger differences stop the post — correct the bill line, or add the difference as a separate freight or adjustment line so the matched line stays within tolerance.

> **Save is waiting for a reason on an open PO**
>
> You changed an open or partially received purchase order. Choose a reason chip in the bar at the bottom of the screen, then click **Save changes**.

> **I cannot change or remove a PO line**
>
> The line has received or billed units. Quantity can only drop to the received or billed amount, and identity fields are locked. Add a new line instead when the item or cost needs to change.

> **New receipt shows more POs than arrived**
>
> Expected. Selecting a supplier includes every open PO and line so you can uncheck what did not arrive. Scan or search a specific PO number to keep one PO in focus.

> **Receipt shows Draft instead of a number**
>
> Draft receipts keep a **Draft** label. The `RCPT-` number is assigned when you **Save** (post) the receipt.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.