Inventory Valuation & COGS
Last updated: 2026-07-10 Summary:
- Every inventory-tracked product carries a costing method — FIFO, LIFO, or Weighted Average — chosen when you create it.
- eKapital keeps real cost layers: each receipt records its own quantity and unit cost, and a sale consumes those layers in your method’s order. The method genuinely changes the cost of goods sold (COGS) posted at sale time; it is not weighted-average behind the scenes.
- Two places always use average cost, whatever the product’s method: the Inventory Reports valuation view, and restocking from a credit memo or a voided invoice.
Inventory tracking and these reports are available on Pro and higher plans (module:inventory).
Cost layers
Section titled “Cost layers”When you receive stock — recording a bill for an inventory product, or an inventory adjustment — eKapital creates a cost layer: the quantity received and the unit cost you paid, stamped with the receipt date. A product accumulates one layer per receipt, so different layers can sit at different unit costs.
When you sell that product, eKapital reduces the on-hand quantity by consuming layers, and the cost of the layers it consumes becomes the COGS posted against the sale. Which layers it consumes depends on the product’s costing method.
How each method picks cost
Section titled “How each method picks cost”Say you buy the same product twice, then sell 15 units:
- Layer A: 10 units at ₱100
- Layer B: 10 units at ₱120
| Method | Which layers a sale of 15 consumes | COGS | Left on hand |
|---|---|---|---|
| FIFO (first in, first out) | All 10 of A, then 5 of B | 10×₱100 + 5×₱120 = ₱1,600 | 5 units at ₱120 |
| LIFO (last in, first out) | All 10 of B, then 5 of A | 10×₱120 + 5×₱100 = ₱1,700 | 5 units at ₱100 |
| Weighted Average | A blended cost across everything on hand | 15 × ₱110 = ₱1,650 | 5 units at ₱110 |
The three methods post genuinely different COGS from the same purchases — this flows straight into your gross profit and net income.
You choose the method when you create a product
Section titled “You choose the method when you create a product”The costing method is set on the product form at creation and defaults to FIFO. It’s locked after creation — the dropdown is disabled when you edit an existing product — because switching mid-life would make already-posted COGS ambiguous. Decide the method when you first set the product up.
Where average cost is used instead
Section titled “Where average cost is used instead”Two figures always use a blended average cost, regardless of a product’s method — know these so the numbers don’t surprise you:
- The Inventory Reports valuation view. The “Avg Cost” column is total value ÷ quantity on hand — a point-in-time snapshot of what your stock is worth. It is not the FIFO/LIFO cost a sale would post. For a FIFO or LIFO product, the valuation average and an individual sale’s COGS can differ, and that’s expected.
- Returns and voids. When a credit memo or a voided invoice puts stock back, eKapital restocks it at weighted-average cost, even for FIFO/LIFO products. The COGS reversed on a return can therefore differ slightly from the exact layer that was originally sold.
Specific Identification is not supported
Section titled “Specific Identification is not supported”You may see Specific Identification as a disabled, legacy option when editing an older product. It is not a working method: it’s absent from the new-product form, and trying to sell a product still set to Specific will fail. If you have a legacy product on Specific, recreate it with FIFO, LIFO, or Weighted Average.
See the layers on the stock card
Section titled “See the layers on the stock card”To see the actual layers a product is holding, open its stock card — the cost-layers panel lists each remaining layer with its quantity, unit cost, and receipt date, in the order FIFO would consume them. See Adjust stock & read the stock card.
Where people get tripped up
Section titled “Where people get tripped up”- The valuation total doesn’t match a sale’s COGS. For FIFO/LIFO products it won’t — the valuation view shows an average, while a sale posts the actual layer cost. Both are correct for what they measure.
- You can’t change a product’s costing method. It’s fixed at creation. Recreate the product if you truly need a different method.
- A return didn’t reverse the exact cost you expected. Returns and voids restock at average cost, not the specific layer sold.
See also
Section titled “See also”Salamat — thanks for the feedback!