Skip to main content

Stock Management

Stocks are the core records of the Inventory Management module. Each stock entry represents a specific product held at a specific warehouse and bin, along with its quantity, pricing, and availability status.


Stock Structureโ€‹

Every stock record contains the following fields:

FieldDescription
ProductThe item being tracked (required)
WarehouseThe storage location where the stock resides
BinThe sub-location within the warehouse
QuantityTotal number of units (required)
On HoldUnits reserved for pending shipments
AvailableCalculated field: Quantity - On Hold
Cost PricePurchase cost per unit
Selling PriceSale price per unit
Created ByThe user who created the stock entry (required, auto-filled)
Required Fields

The three mandatory fields are Product, Quantity, and Created By. The system validates these before saving any stock record.


How Stocks Are Createdโ€‹

Automatic Creation from Receiptsโ€‹

The primary way stocks enter the system is through Receipt Management. When a receipt is processed:

  1. Each line item on the receipt generates a corresponding stock entry
  2. The product, quantity, and pricing are pulled directly from the receipt item
  3. The warehouse and bin are assigned based on the receipt configuration
  4. The Created By field is set to the user who processed the receipt

This automation eliminates manual data entry and ensures your stock levels always reflect actual goods received.

Manual Stock Creationโ€‹

Administrators can also create stock records manually from the Stocks section. This is useful for initial inventory setup or recording stock that arrives outside the normal receipt workflow.


Stock Actionsโ€‹

Put Awayโ€‹

The Put Away action assigns or transfers stock to a specific warehouse and bin combination. Use this when:

  • Newly received stock needs to be placed in its designated location
  • Stock needs to be moved from a staging area to a permanent bin
  • You want to reorganize stock across bins within the same warehouse

Steps:

  1. Open the stock record
  2. Click Put Away
  3. Select the target Warehouse and Bin
  4. Confirm the action

Stock Adjustmentโ€‹

Stock Adjustment allows you to increase or decrease the quantity of an existing stock record. Every adjustment requires a mandatory reason to maintain a complete audit trail.

Common adjustment reasons:

  • Physical count correction
  • Damaged goods write-off
  • Inventory reconciliation
  • Receiving error correction

Steps:

  1. Open the stock record
  2. Click Stock Adjustment
  3. Choose Increase or Decrease
  4. Enter the adjustment quantity
  5. Provide a reason for the adjustment (required)
  6. Confirm the adjustment
warning

Stock adjustments are permanent and logged. The system records the user, timestamp, quantity change, and reason for every adjustment. Double-check quantities before confirming.

Stock Transferโ€‹

Transfer stock from one warehouse/bin to another without changing the total quantity in the system.

Steps:

  1. Open the stock record
  2. Click Transfer
  3. Select the destination Warehouse and Bin
  4. Enter the quantity to transfer
  5. Confirm the transfer

The system creates a movement record showing the origin, destination, quantity, and the user who performed the transfer.


FIFO Stock Holdingโ€‹

The module uses a First-In, First-Out (FIFO) system for stock consumption during shipments. When a shipment is created:

  1. The system identifies all available stock for the requested product
  2. Stock entries are sorted by creation date (oldest first)
  3. The oldest stock is consumed first until the shipment quantity is fulfilled
  4. Consumed units are placed On Hold until the shipment is confirmed
  5. Once shipped, on-hold quantities are deducted permanently

This approach ensures proper stock rotation and accurate cost tracking.


Stock Pagesโ€‹

Stock List Pageโ€‹

The Stock List provides an overview of all stock records with powerful filtering:

  • Product -- filter by a specific product
  • Warehouse -- filter by warehouse location
  • Availability -- show only available, on-hold, or depleted stock
  • Search -- free-text search across product names and locations

The list displays key columns including product name, warehouse, bin, quantity, on hold, available, cost price, and selling price.

Stock Detail Pageโ€‹

Click any stock record to open its detail page, which shows:

  • Full stock information (all fields listed above)
  • Movement History -- every put-away, adjustment, transfer, and shipment event
  • Action Buttons -- quick access to Put Away, Adjust, and Transfer actions
  • Related Records -- links to the originating receipt, associated shipments, and product details

Business Rules and Validationโ€‹

RuleDescription
Product is requiredEvery stock record must reference a valid product
Quantity cannot be negativeAdjustments that would result in negative stock are blocked
On Hold cannot exceed QuantityThe system prevents over-allocation
Adjustment reason is mandatoryEvery increase or decrease must include a reason
FIFO order is enforcedShipments always consume the oldest available stock first
Database transactionsAll stock operations use database transactions for data integrity

Data Securityโ€‹

  • Role-Based Access -- only authorized users can view, create, or modify stock records
  • Database Transactions -- all stock movements are wrapped in transactions to prevent partial updates
  • Audit Trails -- every action (creation, adjustment, transfer, shipment hold) is logged with user, timestamp, and details
  • User Tracking -- the Created By field and movement logs ensure full accountability