# Purchase orders

A purchase order records what you want to buy from a supplier. Creating an order
does not increase stock on hand: stock increases when you record the delivery.

## Set up the supplier's products

Do this in the [TablePort console](https://console.tableport.io) before
ordering.

1. Open your business and go to **Stock → Stock Items**. Create each product you
   buy, with its base unit of measure.
2. Add its packaging variants, such as a bottle or a case of 12. Check the pack
   size: it determines how much stock is added when a pack is received.
3. Go to **Stock → Suppliers**, open the supplier, and select **Add item**.
4. Choose the stock item and its variant. Enter the supplier's unit cost for
   that variant and, if useful, their product code. Save the item.
5. Repeat for the products you buy from this supplier. Keep the stock items,
   variants, and supplier catalogue entries active.

The same product can be linked to more than one supplier, with a different price
for each. Creating a stock item alone does not link it to a supplier.

## Create an order in the console

1. Open the location's **Stock → Purchase Orders** page and select **New
   purchase order**.
2. Choose the supplier. The sheet shows only their active products and packs,
   with the saved price per pack. Search by product name, SKU, or supplier code.
3. Enter **Packs to order** beside each pack you want. Selected products stay
   below the sheet when you search or change pages. Check their quantities and
   prices; you can change the price for this order.
4. Add an expected delivery date and notes if needed, then select **Create
   order**.
5. Open the order to review it. Use **Edit draft** to change a saved draft. Use
   **Submit for Approval** and the approval actions when required by your
   purchasing workflow.
6. Use **Send to Supplier** when available to send the order. Saving a draft is
   separate from sending it. You can also download the order as a PDF.

Quantities and prices must use the same unit. For example, ordering **3 cases of
12 bottles** at **£24 per case** means 36 bottles for £72.

Changing the supplier after entering quantities asks you to confirm clearing the
current lines, so products and prices from the previous supplier do not carry
over.

## Create an order in the staff app

1. Open **Stock** and choose **New PO**.
2. Select the supplier. Only products linked to that supplier are shown. Search
   for a product to add.
3. Add a product, choose its pack or base-unit quantity, and check the suggested
   cost. Repeat for the remaining products.
4. Use **Save draft** or **Save and submit for approval**. Use **Resume draft**
   to continue a saved order. Creating and submitting require a connection.
5. If the app says the draft is saved but submission could not be confirmed,
   check that existing order's status in the Console before trying again.

Read validation beside the barcode field or save actions. Correct the supplier,
product/pack, positive quantity, or missing price in the same draft. A product
already on the order needs its existing quantity updated, not another line. A
dismissed validation message is not evidence that the order was saved.

Barcode entry checks that the product and pack belong to the selected supplier.
Check the supplier catalogue and use **Refresh products** if a pack changed. Do
not choose an unrelated product to bypass a missing supplier link.

## Receive a delivery

1. In the console, open the purchase order and select **Receive** when
   available. In the staff app, use **Receive PO** from Stock.
2. Record the quantities that actually arrived, using the displayed units. Check
   the costs against the delivery paperwork.
3. Confirm the receipt. A partial delivery leaves the remaining quantity open;
   receive the rest when it arrives.

Do not record the full ordered quantity if only part of the delivery arrived.
Use [Receive a PO delivery](/stock/receiving) for actual quantities, rejections,
and substitute products, or
[Delivery without an order](/stock/unplanned-deliveries) for goods not being
received against a PO.

## A product is missing from the picker

- Check that you chose the correct supplier and clear any search text.
- Open **Stock → Suppliers** in the console and add the product's packaging
  variant to that supplier's catalogue.
- Check that the supplier, product, variant, and catalogue entry are active.
- In the Console, **Add an item they don’t list** can offer another stocked
  product and pack. Check its price and the notice that it is added to the
  supplier's list when saved. The app's PO picker still requires supplier links.
- Use **Manage supplier products** to open the catalogue, then **Refresh
  products** after adding a missing link.
- In the staff app, products already added to the draft are removed from the
  available-products list; edit their existing line to change the quantity.

Set up supplier links before ordering so the correct pack prices are available.
If a supplier price does not fill in, check the catalogue link and selected pack
rather than assuming an empty price means the goods are free.

For reviewed suggestions and supplier comparisons, see
[Auto-Order](/stock/auto-order) and [Order Builder](/stock/order-builder).
