Okta POSLogin

Public Guide

Inventory Documentation

Full tutorial for stock tracking, suppliers, purchase orders, purchase bills, costing, recipes, stock count, and troubleshooting.

Open OktaPOS

Beginner Quick Start

Start with these 5 steps

This is the safest setup path for a new store. Do this first before trying purchase orders, recipes, stock count, or reports.

1

Decide if the store needs inventory

If the store does not want stock control, leave Track Inventory off in Products. Billing, KOT, takeaway, and reports will still work normally.

2

Create suppliers and stock items

Add suppliers first, then create inventory items such as Onion, Rice, Oil, Milk, Coke Bottle, Packing Box, or Paper Cup.

3

Enable tracking only where needed

Use Simple Stock for direct products like bottles and packed goods. Use Recipe Based for food items that consume ingredients.

4

Enter opening stock

Use Stock In for current stock or create a Purchase Bill if you have a supplier bill. Enter real quantity, unit, cost, batch, and expiry where needed.

5

Test one sale before going live

Settle one test order and check Inventory movements. If stock reduces correctly, the setup is ready for daily operation.

Which User Are You?

Choose the correct inventory path

I do not want inventory

Do not enable Track Inventory in Products. The POS can be used only for billing, orders, KOT, customers, and reports.

Best for stores that do not follow stock.

I sell packed products

Enable Track Inventory and choose Simple Stock. Enter opening stock and minimum stock in the product.

Best for bottles, packets, retail goods, and direct quantity deduction.

I run a restaurant kitchen

Create ingredients in Inventory, enable Recipe Based on menu products, then map recipes ingredient by ingredient.

Best for biryani, tea, meals, juices, sandwiches, and prepared foods.

I manage purchase control

Use Purchase Orders before goods arrive and Purchase Bills when supplier invoice/goods are received.

Best for managers who check quantity, rate, supplier, expiry, and pending orders.

Daily Purchase Choice

Purchase Order vs Purchase Bill vs Stock In

This is the most important purchase concept. The correct option depends on whether goods are requested, already received, or just being entered as quick stock.

Purchase Order

When to use
Use before goods arrive.
Stock effect
Does not increase stock.
Example
You ask supplier for 50 kg Onion. Stock stays same until received.
Next action
When goods arrive, open the PO and Receive actual quantity, rate, batch, and expiry.

Purchase Bill

When to use
Use after goods and supplier invoice are available.
Stock effect
Increases stock immediately.
Example
You received Onion, Tomato, and Oil with one market bill. Save bill and stock updates now.
Next action
Use View, Copy, Share, Print, or Save PDF for supplier/account records.

Stock In

When to use
Use for quick single-item receiving or opening stock.
Stock effect
Increases stock immediately.
Example
Opening stock: Rice 30 kg at INR 55/kg.
Next action
Use Purchase Bill instead when multiple items belong to one supplier invoice.

Flow Charts

Understand the main inventory workflows

These simple flows help staff understand what happens first, what updates stock, and where mistakes usually happen.

Inventory Setup Flow

Use this when a store is starting inventory for the first time.

Create Supplier
Create Inventory Item
Enable Product Tracking
Stock In Opening Qty
Test Sale
Review Reports

Product Tracking Decision

Use this to decide which tracking mode a product needs.

Product sold?
Need stock control?
No: Not Tracked
Yes: Simple Stock
Prepared food?
Recipe Based

Purchase Order vs Purchase Bill

Use this to decide the right purchase workflow.

Need to request goods?
Create PO
Goods arrive
Receive PO
Already have bill?
Create Purchase Bill

Sale Deduction Flow

Stock reduces after settlement, not when KOT is printed.

Create Order
Send KOT
Settle Bill
Check Tracking Mode
Deduct Product or Recipe
Record Movement

Stock Count Audit Flow

Use this when physical stock and system stock may be different.

Start Count
Enter Physical Qty
Review Variance
Investigate Difference
Apply Adjustment
Audit Movement Saved

Important Rules

Read this before using inventory live

KOT does not reduce stock. Stock is deducted when the bill/order is settled.
Creating a Purchase Order does not increase stock. Stock increases only after Receive PO.
Purchase Bill stocks in immediately because goods and invoice are already confirmed.
Track Inventory should be enabled only for products where stock matters.
Recipe Based products need recipe mapping before sales can deduct ingredients.
Unit cost means cost per kg, per litre, per piece, or per base unit. Do not enter total invoice amount as unit cost.
When price changes from supplier to supplier, average cost changes using weighted average.
Use Stock Count to correct system stock after physical audit, not to enter purchases.

Training Video

YouTube video player placeholder

Step 1

Inventory Overview

Inventory connects products, ingredients, suppliers, purchase flow, stock count, costing, and sale deduction. The goal is to know what is available, what must be reordered, what each item costs, and what gets consumed when sales are settled.

When to use: Start here when a new store wants to understand what Inventory controls and which daily workflows affect stock.

Screenshot placeholder
  1. 1Create suppliers if purchase orders should be grouped supplier-wise.
  2. 2Create inventory items such as Onion, Rice, Oil, Cups, or Packing Box.
  3. 3Set base unit, current stock, minimum stock, average cost, supplier, batch, and expiry where needed.
  4. 4Enable Track Inventory in Products and choose Simple Stock or Recipe Based.
  5. 5Use Stock In or Purchase Bill whenever goods are received.
  6. 6Use Purchase Orders when goods must be requested before they arrive.
  7. 7Use Stock Count to compare system stock with physical stock.
  8. 8Review Reports for low stock, expiry, movement value, and supplier ledger.

Example: Onion is an inventory item. It can be purchased in kg, linked to a supplier, consumed by recipes, deducted when food is sold, and reordered when it falls below minimum stock.

Result: After setup, the store gets live stock, purchase history, low-stock alerts, costing, supplier ledger, and automatic deduction on settlement.

Common mistakes

  • - Tracking every product even when stock is not needed.
  • - Skipping supplier/item setup before purchase flow.
  • - Expecting recipe deduction without mapping recipes.

Step 2

Product Tracking

Products can be Not Tracked, Simple Stock, or Recipe Based. Simple Stock deducts the product quantity directly. Recipe Based deducts ingredients mapped in Inventory > Recipes.

When to use: Use this when adding or editing a product and deciding whether sales should reduce stock.

Screenshot placeholder
  1. 1Open Products from the sidebar.
  2. 2Create or edit a product.
  3. 3Turn on Track Inventory only if the product must affect stock.
  4. 4Choose Simple Stock for bottled drinks, packed goods, and retail items.
  5. 5Enter current stock and minimum stock for Simple Stock products.
  6. 6Choose Recipe Based for prepared menu items like biryani, meals, tea, sandwiches, or juices.
  7. 7Save the product.
  8. 8For Recipe Based products, open Inventory > Recipes and map every ingredient.
  9. 9Settle one test sale and check Inventory Movements.

Example: A Coke bottle should be Simple Stock. Chicken Biryani should be Recipe Based because it consumes rice, chicken, onion, oil, and packing material.

Result: Sales deduct stock according to the selected product tracking mode.

Common mistakes

  • - Choosing Recipe Based but not creating the recipe.
  • - Using Simple Stock for dishes with many ingredients.
  • - Leaving minimum stock empty so reorder alerts are weak.

Step 3

Stock In and Costing

Stock In increases inventory and records actual purchase cost. Each stock-in can create a batch with expiry. Average cost uses weighted average while each batch keeps its own purchase cost.

When to use: Use Stock In for quick receiving when a full purchase bill is not required.

Screenshot placeholder
  1. 1Open Inventory > Stock In.
  2. 2Select the inventory item.
  3. 3Enter quantity received in the item's base unit.
  4. 4Enter actual purchase cost per unit, not total bill amount.
  5. 5Enter invoice/reference number if available.
  6. 6Enter batch number for traceability.
  7. 7Enter expiry date for perishable stock.
  8. 8Add notes if useful.
  9. 9Click Save.
  10. 10Check Items or Reports to confirm stock and value updated.

Example: Existing Onion: 10 kg at INR 20. New purchase: 10 kg at INR 30. New average cost becomes INR 25/kg, while the new batch keeps INR 30/kg as actual batch cost.

Result: Stock increases, movement history is created, batch/expiry is saved, and average cost is updated.

Common mistakes

  • - Entering total invoice amount instead of per-unit rate.
  • - Forgetting expiry for perishables.
  • - Using Stock In for many-item supplier bills instead of Purchase Bill.

Step 4

Purchase Orders

A Purchase Order is only an order/request. It does not increase stock. Stock updates only when the PO is received, so actual quantity and actual rate can be checked.

When to use: Use Purchase Orders when goods must be requested from a supplier before they arrive.

Screenshot placeholder
  1. 1Open Inventory > Purchase Orders.
  2. 2Click Create Purchase Order.
  3. 3Select supplier.
  4. 4Add item rows with expected quantity and expected rate.
  5. 5Save Order. Status becomes Ordered.
  6. 6Use Copy, Share, or Print to send it to the supplier.
  7. 7When goods arrive, open the same PO and click Receive.
  8. 8Enter supplier invoice number.
  9. 9For each item, enter actual received quantity, actual rate, batch, and expiry.
  10. 10Click Stock In Received.
  11. 11If all quantities are received, status becomes Received. If only some arrived, status becomes Partially Received.

Example: You order 50 kg Onion at expected INR 25/kg. Supplier sends 40 kg at INR 27/kg. Receive only 40 kg at INR 27. Stock increases by 40 kg and PO remains partially received if 10 kg is pending.

Result: Supplier order history is preserved and stock only increases after actual receiving.

Common mistakes

  • - Expecting stock to increase immediately after creating PO.
  • - Not editing actual rate during receiving.
  • - Receiving full quantity when supplier sent partial goods.

Step 5

Purchase Bills

A Purchase Bill is a direct purchase entry. It records the supplier bill and stocks in items immediately.

When to use: Use Purchase Bill when goods already arrived and the supplier invoice/bill is available.

Screenshot placeholder
  1. 1Open Inventory > Purchase Orders.
  2. 2Click Create Purchase Bill.
  3. 3Select supplier or enter supplier name.
  4. 4Enter invoice number and bill date.
  5. 5Choose payment status if available.
  6. 6Add each purchased item as a row.
  7. 7For each row, enter quantity, rate, batch number, and expiry date.
  8. 8Review grand total.
  9. 9Click Save & Stock In.
  10. 10Use View Bill, Copy, Share, or Print if needed.

Example: You bought Onion 20 kg, Tomato 10 kg, and Oil 5 L from the market. Add all three rows and Save & Stock In. Stock updates for all items in one action.

Result: Purchase record, movement, batch, stock quantity, and average cost are all updated together.

Common mistakes

  • - Using Purchase Bill before goods are received.
  • - Skipping actual rate, which makes costing wrong.
  • - Entering one combined row for different items.

Step 6

Recipes and Sale Deduction

Recipes connect sale products to inventory ingredients. When a recipe product is settled, mapped ingredients are deducted automatically. Batch deduction follows FIFO/expiry-first logic where batch data exists.

When to use: Use Recipes for menu items that consume ingredients.

Screenshot placeholder
  1. 1Open Inventory > Recipes.
  2. 2Select the menu product.
  3. 3Select an inventory ingredient.
  4. 4Enter ingredient quantity used for one product unit.
  5. 5Enter wastage percentage if normal preparation loss exists.
  6. 6Add packaging cost if required.
  7. 7Save the recipe ingredient.
  8. 8Repeat for all ingredients in the product.
  9. 9Review sale price, ingredient cost, total cost, and margin.
  10. 10Settle a test order and check movement history.

Example: Tea can deduct Milk 0.1 L, Tea Powder 0.01 kg, Sugar 0.02 kg, and Cup 1 pcs for each Tea sold.

Result: Recipe products reduce ingredient stock automatically after settlement.

Common mistakes

  • - Entering quantity for a full batch instead of one product unit.
  • - Forgetting packaging items.
  • - Expecting deduction before settlement; KOT does not deduct stock.

Step 7

Stock Count

Stock Count compares expected system stock with counted physical stock. Applying adjustments changes item stock to counted quantity and records audit movements.

When to use: Use Stock Count during closing, weekly audit, or when physical stock does not match system stock.

Screenshot placeholder
  1. 1Open Inventory > Stock Count.
  2. 2Click Start Count.
  3. 3Count physical stock item by item.
  4. 4Enter counted quantity for each item.
  5. 5Review variance quantity and variance value.
  6. 6Investigate large differences before applying.
  7. 7Click Apply Adjustments.
  8. 8Manager permission may be required depending on Inventory Settings.
  9. 9Check movement history for audit adjustment entries.

Example: System shows Rice 50 kg but physical stock is 47 kg. Count 47 kg and apply adjustment. System posts -3 kg adjustment.

Result: System stock matches physical stock and variance is recorded for audit.

Common mistakes

  • - Applying count before finishing all items.
  • - Using adjustment for purchases instead of Stock In/Purchase Bill.
  • - Not investigating large variance before posting.

Step 8

Supplier Ledger

Supplier Ledger is calculated from purchase orders and received purchase bills. It summarizes total purchased, received value, pending value, bill/order count, and last purchase date.

When to use: Use Supplier Ledger to understand purchase volume and pending order value by supplier.

Screenshot placeholder
  1. 1Open Inventory > Suppliers.
  2. 2Create suppliers if they are not already available.
  3. 3Link inventory items to suppliers where possible.
  4. 4Create Purchase Orders or Purchase Bills using those suppliers.
  5. 5Review purchased, received, pending, bill count, and last date.
  6. 6On web, click Print/PDF Ledger to export.
  7. 7On Flutter, use Copy Ledger to share text.

Example: Dhanalakshmi Store may show INR 20,000 purchased, INR 15,000 received, INR 5,000 pending, 8 bills, last purchase 14/08/2026.

Result: The store can quickly see supplier activity and pending purchase value.

Common mistakes

  • - Creating bills with No supplier.
  • - Using different names for the same supplier.
  • - Expecting payment ledger before payment entries are added.

Step 9

Settings and Permissions

Inventory Settings control negative stock and manager-only operations.

When to use: Use Settings before giving inventory access to staff.

Screenshot placeholder
  1. 1Open Inventory > Settings.
  2. 2Choose Negative Stock policy.
  3. 3Use Allow if sales can continue even when stock is unavailable.
  4. 4Use Warn if the store wants warning but still allows sale.
  5. 5Use Block if settlement must stop when stock is insufficient.
  6. 6Enable Manager for Cost Edits to restrict receiving and purchase bill costs.
  7. 7Enable Manager for Adjustments to restrict manual adjustments and stock count posting.
  8. 8Assign inventory.manage or settings.manage from Employees.

Example: Cashier can settle sales but cannot change purchase cost. Manager can receive stock, adjust stock, and change settings.

Result: Inventory becomes safer for multi-user store operations.

Common mistakes

  • - Giving all employees full access.
  • - Using Allow when strict stock control is required.
  • - Blocking negative stock before opening stock is entered.

Step 10

Troubleshooting

Most issues come from setup mismatch: product not tracked, recipe missing, supplier not linked, stock unavailable, or negative stock set to Block.

When to use: Use this when inventory behavior does not match what the user expects.

Screenshot placeholder
  1. 1If stock is not reducing, open Products and confirm Track Inventory is enabled.
  2. 2If recipe item is not reducing, open Inventory > Recipes and confirm ingredients are mapped.
  3. 3If Generate Draft POs is disabled, confirm at least one item is below minimum stock.
  4. 4If settlement is blocked, check current stock and Negative Stock policy.
  5. 5If average cost looks unexpected, calculate weighted average from old stock and new purchase.
  6. 6If supplier ledger is empty, check that purchase orders/bills use the correct supplier.
  7. 7If expiry is missing, confirm expiry was entered during Stock In, Purchase Bill, or Receive.
  8. 8If employee cannot edit, check inventory.manage and settings.manage permissions.

Example: If Onion stock does not reduce after selling Biryani, check whether Biryani is Recipe Based and whether Onion is mapped in the Biryani recipe.

Result: The user can diagnose common setup and workflow issues without calling support.

Common mistakes

  • - Looking only at Inventory Items when the actual issue is Product tracking.
  • - Forgetting that KOT does not deduct stock until settlement.
  • - Using different item names without linking them in recipes.

FAQ

Common questions from store users

Can a user use OktaPOS without inventory?

Yes. Keep Track Inventory disabled in Products. Billing, KOT, takeaway, customers, and reports can continue without stock management.

Why is stock not reducing after sale?

Check whether the product has Track Inventory enabled. For Recipe Based items, also check whether ingredients are mapped in Inventory > Recipes. Stock reduces on settlement, not on KOT.

Why is Generate Draft POs disabled?

Draft POs are generated from low-stock items. At least one inventory item must have current stock below minimum stock and supplier information should be available.

Why did average cost change after Stock In?

Average cost uses weighted average. Example: 10 kg at INR 20 plus 10 kg at INR 30 becomes 20 kg at INR 25 average cost.

What if supplier sends less quantity than ordered?

Receive only the actual quantity. The PO becomes Partially Received and the remaining quantity stays pending.

When should I use Purchase Bill instead of Stock In?

Use Purchase Bill when multiple items came with one supplier bill or invoice. Use Stock In for quick single-item receiving.

Can I print or share this documentation?

Yes. This page is public and can be shared without login. Use Print / Save PDF to export it.