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

# Purchasing & goods receiving

> Raise purchase orders to suppliers, approve them, and receive delivered stock into inventory — with an auditable lifecycle.

Purchasing lets a branch order ingredients from a supplier, get the order
approved, and then book the delivered quantities back into stock. Every step is
recorded, so you always know what was ordered, what arrived, and what it cost.

<Note>
  Purchasing is part of the **Procurement** capability. If you don't see a
  **Purchase Orders** entry under Inventory, it isn't enabled for your business
  yet — ask your klikit contact to switch it on.
</Note>

## The purchase order lifecycle

A purchase order (PO) moves through a fixed set of states so approvals and
receiving stay controlled and auditable.

<Steps>
  <Step title="Draft">
    Create the PO: pick the **supplier**, add **line items** (ingredient,
    quantity, unit, unit price), and an optional note. The total is calculated
    for you. A PO number is assigned automatically.
  </Step>

  <Step title="Submitted">
    Send the draft for approval. A submitted PO is read-only for the person who
    raised it.
  </Step>

  <Step title="Approved">
    A manager approves the PO. Only approved POs can proceed to receiving.
  </Step>

  <Step title="Received">
    When the delivery arrives, record the quantities actually received. Stock
    goes up and the movement is written to the ledger.
  </Step>

  <Step title="Closed">
    Close the PO once everything is received and reconciled. Closed and
    cancelled POs stay on record for audit.
  </Step>
</Steps>

## Create a purchase order

1. Go to **Inventory → Purchase Orders** and choose **New purchase order**.
2. Pick the **branch** the stock is for and the **supplier**.
3. Add each ingredient as a line item with its quantity, unit, and unit price.
4. **Save Draft** to keep editing, or **Save & Submit** to send it straight for
   approval.

<Tip>
  **Pre-fill from suggestion** looks at what's below its reorder point (or, for a
  commissary supplier, recent consumption) and drafts the line items for you.
  Review the quantities before submitting.
</Tip>

## Approve

A manager opens the submitted PO and chooses **Approve** (or **Cancel** while it
is still Draft/Submitted). Approval records who approved it and when.

## Receive the goods

When the delivery arrives, open the approved PO and record what actually turned
up — per line, the received quantity can differ from what was ordered.

* Received quantities are added to branch stock as a **stock-in** movement.
* The order-vs-received difference is captured so short or over deliveries are
  visible.
* The PO moves to **Received**; **Close** it once you're done.

<Info>
  Behind the scenes, receiving is handled through a delivery document so external
  purchases and internal commissary transfers share one consistent receiving
  screen. You don't need to create anything extra — approving an external PO
  prepares its delivery automatically, ready to receive.
</Info>

## Suppliers

Suppliers are managed under **Inventory → Suppliers**. A supplier can be an
ordinary external vendor, or an internal **commissary** branch that supplies
other branches — see [Commissary & transfers](/inventory/commissary).

## Where each part lives

<CardGroup cols={2}>
  <Card title="klikit dashboard (cloud)" icon="desktop">
    Create, submit, approve, receive, and close purchase orders; manage
    suppliers.
  </Card>

  <Card title="Next: production" icon="arrow-right" href="/inventory/production">
    Turn received raw materials into finished goods with **production runs**.
  </Card>
</CardGroup>
