Inventory Management

A complete reference for Vendra's inventory module — from setting up products and stock locations to reorder rules, lot tracking, expiry management and physical stock counts.

Updated June 2026 16 min read Inventory guide

Overview

The Inventory module is the central system for tracking every physical product in your business. It records all stock movements — goods coming in from suppliers, goods going out through POS sales or delivery orders, transfers between locations, adjustments, and write-offs. Every movement is timestamped and linked to its source document, giving you a complete audit trail at all times.

Vendra's inventory is real-time and integrated. When a cashier sells a product at the POS, the stock level drops immediately. When a purchase order receipt is validated, the stock level rises. You never need to manually synchronize inventory with sales — it happens automatically across all modules.

The Inventory Overview dashboard shows all active operations as cards: Receipts (incoming from suppliers), Internal Transfers (between locations), Delivery Orders (outgoing to customers), and POS Orders (stock reductions from POS sales). Each card shows how many transfers are pending action, so your warehouse team always knows what to do next.

Setting Up Products

Every item you stock, sell, or purchase needs a product record. Go to Inventory → Products → Products and click New to create one. The product form has several tabs, but the general tab is the most important starting point.

Set the Product Type to Storable Product for any item you physically hold and want to track in stock. Consumables are not tracked — use this for packaging materials or items you want to purchase but do not need inventory counts for. Services are intangible and generate no stock movements.

The Sales Price is the default price charged to customers. The Cost field (on the Purchase tab) is the value used for inventory valuation and margin calculations. Both can be overridden at the order line level or via pricelists. Assign the correct Customer Taxes (e.g., VAT 16%) and Vendor Taxes so that all transactions post the right tax amounts automatically.

Product variants allow a single product to have multiple configurations — different sizes, flavors, or colors. Enable variants in Sales → Configuration → Settings, then use the Attributes & Variants tab on the product form to define attributes. Vendra generates one variant record per combination, each with its own barcode, price, and stock level. This is far cleaner than creating a separate product for each variation.

Stock Locations

Locations in Vendra represent the physical places where goods are stored. They are organized in a hierarchy: a Warehouse contains multiple storage zones, each of which can have sub-locations down to individual shelves or bins. Enable multi-location warehousing from Inventory → Configuration → Settings → Storage Locations.

Vendra distinguishes between several location types. Physical locations are real places in your premises — your main storeroom, the shop floor, a cold room, or a specific rack. Virtual locations are accounting locations used to track stock that is in transit, has been scrapped, or is being adjusted. Partner locations represent your customers' and vendors' premises — goods that have left your warehouse but not yet reached the customer are in a transit location between your output and their input.

To add locations, go to Inventory → Configuration → Locations and click New. Set the location type, assign it a parent location to place it in the correct part of the hierarchy, and give it a descriptive name. Putaway rules (under Configuration → Putaway Rules) can automatically route incoming products to specific bins based on the product or product category, removing the need for warehouse staff to decide where to put things.

Receiving Stock

Stock enters your warehouse primarily through purchase order receipts. When you confirm a purchase order in the Purchase module, Vendra automatically creates a receipt (incoming transfer) in Inventory. When your goods arrive, follow this process:

  1. Go to Inventory → Overview and click the Receipts card, or open the Purchase Order and click Receive Products.
  2. Find the receipt linked to your purchase order. The Demand column shows the ordered quantity.
  3. Enter the actual received quantity in the Done column. If you received less than ordered, enter the partial quantity — the remainder stays as a backorder.
  4. If the products are lot-tracked or serialized, assign lot or serial numbers before validating.
  5. Click Validate. Stock levels update immediately and the cost is posted to the inventory valuation account.

For goods that arrive without a purchase order, you can create a manual receipt directly from Inventory → Operations → Transfers → Receipts → New. Set the source as the vendor's virtual location and the destination as your warehouse location, add product lines, and validate.

Stock Adjustments

Stock adjustments correct discrepancies between the system's recorded quantities and your actual physical stock. They are used for damage write-offs, quantity corrections, and any situation where stock needs to be added or removed outside a normal purchase or sale.

For a manual adjustment, go to Inventory → Operations → Transfers → Internal and create a new transfer from a virtual source location (e.g., Inventory Adjustments) to your storage location (or the reverse for a reduction). Alternatively, use the Physical Inventory function described in the stock count section for bulk adjustments.

To scrap damaged, expired, or unsalable goods, go to Inventory → Operations → Scrap and click New. Select the product, quantity, and source location. If the product is lot-tracked, select the specific lot. Click Validate. The stock is reduced and the value of the scrapped goods is posted as a loss to your expense account in accounting — no manual journal entry needed.

Inter-location transfers move stock between two physical locations without any accounting impact. Go to Inventory → Operations → Transfers → Internal, set source and destination locations, add product lines, and validate. Useful when restocking the shop floor from the back store, or moving goods from one warehouse to another.

Reorder Rules

Reorder rules automate replenishment. You set a minimum quantity for a product at a given location, and when stock falls below that threshold, Vendra automatically generates a draft purchase order (or manufacturing order if the product is made in-house).

To create a reorder rule, go to Inventory → Configuration → Reordering Rules (or open the product and use the Replenishment tab). Set the following fields:

  • Product and location — Which product at which storage location this rule applies to.
  • Minimum Quantity — The reorder point. When on-hand stock drops to or below this level, replenishment is triggered.
  • Maximum Quantity — The quantity to restock up to. The system orders (Maximum − current stock) units.
  • Quantity Multiple — Forces orders to be in multiples of this number (e.g., order in cases of 12).
  • Route — Buy (generates a purchase order to the product's preferred vendor) or Manufacture (generates a manufacturing order).
  • Lead Time — The vendor lead time in days, used to calculate when to order so goods arrive before stockout.

Rules run on a scheduler that can be triggered manually from Inventory → Operations → Run Scheduler or set to run automatically on a schedule. Replenishment screen (Inventory → Operations → Replenishment) shows all products currently below their minimum with the suggested order quantities, which you can review and confirm before purchase orders are sent.

Lot and Serial Number Tracking

Lot tracking assigns a batch number to a group of identical products received together — useful for food, pharmaceuticals, and any product where you need to trace which batch a customer received. Serial number tracking assigns a unique number to each individual item — used for electronics, appliances, and equipment.

Enable tracking from Inventory → Configuration → Settings → Traceability. Then open the product and set the Tracking field on the Inventory tab to "By Lots" or "By Unique Serial Number." Once set, every receipt, transfer, and delivery involving that product will require a lot or serial number to be specified before the operation can be validated.

When receiving stock, click the detail icon on a product line to enter lot numbers and quantities. You can type a new lot number (Vendra creates it automatically) or select an existing one. For serial numbers, each unit gets its own line with a unique serial number. To view the complete movement history for a lot or serial number, go to Inventory → Products → Lots/Serial Numbers and open the record — the Traceability tab shows every movement from receipt to delivery.

Expiry Date Management

For perishable products, Vendra supports expiry date tracking at the lot level. Enable Expiration Dates in Inventory → Configuration → Settings. Once enabled, the lot record gains additional date fields: Best Before Date, Removal Date, Use Date, and End of Life Date.

When receiving a lot, enter the expiry date. Vendra uses FEFO (First Expired, First Out) as the removal strategy for product categories where this is configured — when picking goods for a delivery or POS sale, the system automatically selects the lot with the earliest expiry date first, reducing the risk of selling expired products.

The Inventory → Reporting → Stock Expiry report shows all lots grouped by expiry date, letting you proactively identify stock that is approaching its removal date. You can filter by product, location, and date range to prioritize which items need to be moved, discounted, or scrapped before they expire.

To activate FEFO for a product category, go to Inventory → Configuration → Product Categories, open the category, and set the Removal Strategy to "First Expiry First Out." Assign this category to all your perishable products.

Physical Stock Count

A physical stock count reconciles what the system records against what is actually on the shelves. This is a critical control procedure and should be done periodically — monthly for fast-moving goods and at least annually for all products.

1
Create an inventory adjustment

Go to Inventory → Operations → Physical Inventory. Click New Inventory Adjustment. Select the location(s) to count and optionally filter by product category.

2
Count quantities

For each product line, enter the physically counted quantity in the Counted Quantity column. The system shows the current recorded quantity alongside. The Difference column shows the variance.

3
Review variances

Before validating, review products with significant discrepancies. A recount may be needed. Add notes in the line's note field for auditing purposes.

4
Validate the adjustment

Click Apply All to post all adjustments at once, or validate individual lines. Stock quantities are updated immediately and accounting journal entries are created for any value differences.

Inventory Reports

The Inventory module includes several reports for monitoring stock health and value. Access them from Inventory → Reporting.

Stock Valuation shows the monetary value of all current stock, broken down by product and location. The valuation method (Average Cost, Standard Cost, or FIFO) determines how the cost is calculated. This report is used to populate the inventory asset line on your balance sheet.

Product Moves (also called Moves History) is the most detailed audit report — it shows every single stock movement, including the date, product, quantity, from/to locations, unit cost, and the source document (purchase order, sale, internal transfer, etc.). Use this to investigate unexplained stock changes.

Forecasted Stock combines current stock with pending incoming receipts and outgoing deliveries to project future stock levels. This is invaluable for anticipating stockouts before they happen, especially for products with long lead times from suppliers.

Ready to take control of your inventory?

Start your free trial and follow this guide to set up accurate, real-time stock tracking.