> ## 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.

# Inventory overview

> Track raw ingredient stock, run physical stocktakes, and see variance, valuation, and food cost — end to end.

klikit Inventory turns the menu from a consumption-only model ("what did we sell?")
into a full stock model ("what do we actually have, and where did it go?"). It adds
an ingredient catalog, per-branch stock levels, a mobile stocktake (physical count)
workflow with manager approval, an immutable movement ledger, and reporting.

## The loop

Everything in Inventory follows one loop. Set it up once, then run the count →
approve → report cycle on whatever cadence you choose (per shift, daily, weekly).

<Steps>
  <Step title="Set up ingredients">
    Build the ingredient catalog for the business, then track the ones you care
    about at each branch with an **opening stock** balance. See
    [Set up ingredients](/inventory/setup).
  </Step>

  <Step title="Count (staff, mobile app)">
    Staff open a stocktake in the klikit app and count each tracked ingredient.
    See [Run a stocktake](/inventory/stocktake).
  </Step>

  <Step title="Approve (manager, dashboard)">
    A manager reviews the counted numbers and the variance, then approves or
    rejects. Approval adjusts stock and writes the ledger.
  </Step>

  <Step title="Report & act">
    Movement history, food cost, valuation, and variance-by-reason let a manager
    see where stock went and act on it. See [Reports & movements](/inventory/reports).
  </Step>
</Steps>

## Where each part lives

<CardGroup cols={2}>
  <Card title="klikit dashboard (cloud)" icon="desktop">
    Set up ingredients and stock levels, review and **approve** stocktakes, and
    read **Reports** and **Movements**. This is where managers and owners work.
  </Card>

  <Card title="klikit app (mobile / NMA)" icon="mobile">
    Where staff run the physical **count** — start a stocktake, enter quantities,
    pick a variance reason, and submit for approval.
  </Card>
</CardGroup>

## Key concepts

<AccordionGroup>
  <Accordion title="Ingredient">
    A raw item you want to track (e.g. Almonds, Flour, Olive Oil). Ingredients
    live in a **business-level catalog** and carry a unit and category. Creating
    an ingredient does **not** by itself make it countable at a branch — you also
    have to track it there.
  </Accordion>

  <Accordion title="Stock level (tracked ingredient at a branch)">
    An ingredient that is being tracked at a specific branch, with a current
    quantity, an **opening stock** balance, and an optional reorder point. A
    stocktake counts exactly the branch's active stock levels — no stock levels,
    nothing to count.
  </Accordion>

  <Accordion title="Stocktake">
    A physical count session for a branch. When created, it snapshots one count
    line per active stock level. Staff enter the real quantities; the difference
    from the expected quantity is the **variance**.
  </Accordion>

  <Accordion title="Variance & reason codes">
    Variance is counted − expected. When it isn't zero, staff pick a reason so
    shrinkage is explainable and reportable: **Supplier Short Delivery**,
    **Wastage**, **Opening Stock Adjustment**, **Theft**, or **Other**.
  </Accordion>

  <Accordion title="Movement ledger">
    Every stock change (a sale's consumption, a stocktake adjustment, etc.) is
    written as an immutable ledger entry. The Movements tab is the audit trail.
  </Accordion>
</AccordionGroup>

## Beyond counting

Stocktakes keep counts honest. The rest of Inventory keeps them honest
*automatically* by recording stock as it actually moves — bought, produced,
wasted, and transferred. These capabilities are enabled per business.

<CardGroup cols={2}>
  <Card title="Purchasing & receiving" icon="file-invoice" href="/inventory/procurement">
    Raise purchase orders to suppliers, approve them, and receive delivered
    stock — an auditable draft → approved → received lifecycle.
  </Card>

  <Card title="Production runs" icon="kitchen-set" href="/inventory/production">
    Turn raw ingredients into finished goods and track actual yield against the
    recipe.
  </Card>

  <Card title="Waste logging" icon="trash" href="/inventory/waste">
    Record spoilage, expiry, and over-portioning with a reason, and analyse
    waste cost by category.
  </Card>

  <Card title="Commissary & transfers" icon="truck" href="/inventory/commissary">
    Supply branches from a central kitchen and move stock between locations with
    delivery orders.
  </Card>
</CardGroup>

## Before you start

<Note>
  Inventory is rolled out per business and per branch. If you don't see the
  **Inventory** section in the dashboard, or a branch has no stocktake option in
  the app, it isn't enabled yet for that business/branch — ask your klikit contact
  to enable it. Access is also role-based: owners and branch managers set up and
  approve; staff count.
</Note>

Ready? Start with [Set up ingredients](/inventory/setup).
