FIFO Costing, Valuation & Warehouse Transfers
Compliant with Indian Accounting Standard 2 (AS-2) and Ind AS 2. Discover how Katixo's high-performance FIFO costing engine opens cost lots, calculates real-time Cost of Goods Sold (COGS), and maintains cost basis integrity across inter-warehouse stock transfers.
1. Module Overview: Why FIFO Costing is Essential
Under Indian tax and accounting standards, enterprises cannot arbitrarily estimate stock valuation.First-In, First-Out (FIFO) assumes that items purchased earliest are sold earliest. In a rising price environment, FIFO accurately matches historical procurement costs with sales revenues:
AS-2 Statutory Compliance
Audit-ready inventory valuation backed by granular lot-by-lot acquisition and consumption records.
Accurate Gross Profit
Eliminates false profit spikes caused by using outdated purchase prices or un-weighted averages.
Pessimistic Concurrency
Row-level database locking ensures multiple concurrent dispatches cannot oversell or double-consume lots.
2. How the FIFO Engine Operates Under the Hood
Whenever stock enters a warehouse — whether via a Goods Receipt Note (GRN), direct Purchase Bill, or positive physical stock count — Katixo opens an immutable cost_lot record:
• Lot ID: UUID
• Item: Paracetamol 650mg | Warehouse: Main Depot
• Opening Qty: 100 units | Remaining Qty: 100 units
• Landed Unit Cost: ₹42.50 | Total Lot Value: ₹4,250.00
When a sales issue occurs (Delivery Challan dispatch, POS cash sale, or direct invoice), the FIFO engine queries active open lots ordered by created_at ASC:
Suppose an order requires 15 units. Active open lots are:
- Lot 1 (Oldest): 10 units remaining @ ₹100.00 each
- Lot 2 (Newer): 20 units remaining @ ₹120.00 each
Engine consumes all 10 units from Lot 1 (₹1,000) + 5 units from Lot 2 (₹600).
Total COGS = ₹1,600.00 | Blended FIFO Unit Cost = ₹106.67.
When the Sales Invoice is posted, the accounting posting rule credits Inventory Asset (1200) and debits Cost of Goods Sold (5000) using this exact blended FIFO cost basis.
3. Inter-Warehouse Transfers & Cost Preservation
Transferring inventory between branches (e.g. Central Warehouse to a City Van Hub) must never alter the company's total inventory asset value:
- 1Create Transfer Order: Go to Inventory > Transfer Orders > "New Transfer Order". Select Origin Warehouse and Destination Warehouse. Add item lines and batch numbers.
- 2Dispatch (TRANSFER_OUT): Warehouse staff pack items and click Dispatch. Origin stock is deducted and items enter
IN_TRANSIT. The original FIFO acquisition cost is carried forward on the transfer order line. - 3Receive at Destination (TRANSFER_IN): Destination warehouse verifies the goods and clicks Receive. Katixo opens a new FIFO cost lot at the destination warehouse carrying the identical original cost basis. Zero valuation distortion occurs.
4. Valuation Reports & Balance Sheet Synchronization
Two standard reports provide full audit visibility into stock valuations:
FIFO Lot Valuation Report
Lists every active, unconsumed cost lot in your organization with receipt date, original quantity, remaining quantity, unit cost, and current balance sheet value.
/api/v1/reports/fifo-valuationStock Summary Report
Aggregated view per item across all warehouses. For FIFO organizations, values are derived directly from the sum of active cost lots.
/api/v1/reports/stock-summaryDeveloper & API Integration Reference
JWT Bearer RequiredTransfer order and valuation endpoints for automated inventory pipelines:
/api/v1/transfer-orders/api/v1/transfer-orders/api/v1/transfer-orders/{id}/dispatch/api/v1/transfer-orders/{id}/receive/api/v1/reports/fifo-valuation