Skip to content

Odoo Inventory Valuation: FIFO, AVCO & Standard Cost Guide

DeployMonkey Team · March 22, 2026 12 min read

Why Inventory Valuation Matters

Inventory valuation determines the cost of goods on your balance sheet and the COGS on your P&L. The method you choose (FIFO, AVCO, Standard) affects profitability reporting, tax liability, and financial statement accuracy.

Valuation Methods

MethodHow It WorksBest For
FIFOFirst purchased units costed firstPerishable goods, distinct batches
AVCORunning average of purchase pricesTrading/distribution, varying prices
StandardFixed cost per unitManufacturing (known production cost)

Configuration

# Settings → Inventory → Inventory Valuation
# Product Category → set Costing Method:

# Category: Raw Materials
# Costing Method: FIFO
# Inventory Valuation: Automated (journal entries auto-created)

# Category: Finished Goods
# Costing Method: Standard Cost
# Inventory Valuation: Automated

# Category: Trading Goods
# Costing Method: Average Cost (AVCO)
# Inventory Valuation: Automated

FIFO Example

# Purchase 1: 100 widgets at $10/unit
# Purchase 2: 100 widgets at $12/unit
# Total stock: 200 widgets

# Sell 50 widgets:
# FIFO: cost = 50 × $10 = $500 (oldest first)
# COGS on P&L: $500
# Remaining inventory: 50 × $10 + 100 × $12 = $1,700

# Sell 80 more:
# FIFO: 50 × $10 + 30 × $12 = $860
# Remaining: 70 × $12 = $840

AVCO Example

# Purchase 1: 100 widgets at $10/unit
# Purchase 2: 100 widgets at $12/unit
# Average cost: (100×$10 + 100×$12) / 200 = $11/unit

# Sell 50 widgets:
# AVCO: cost = 50 × $11 = $550
# Remaining: 150 × $11 = $1,650

# New purchase: 100 at $15
# New average: (150×$11 + 100×$15) / 250 = $12.60
# Recalculated per unit

Standard Cost

# Product → set Standard Price: $10/unit
# All receipts and deliveries use $10

# If actual purchase is $12:
# Dr. Stock Valuation: $10 (standard)
# Dr. Price Difference: $2 (variance)
# Cr. Accounts Payable: $12 (actual)

# Variance accounts track the difference
# Standard cost updated periodically (quarterly/annually)

Automated vs Manual Valuation

# Automated (perpetual):
# Every stock move creates accounting journal entries
# Real-time inventory value on balance sheet
# Recommended for most businesses

# Manual (periodic):
# No automatic journal entries from stock moves
# Inventory value updated manually at period end
# Physical count → journal entry for valuation adjustment
# Simpler but less accurate

Accounting Entries

# Automated valuation — what Odoo posts:

# Receipt (purchase):
# Dr. Stock Valuation (asset)     $1,000
# Cr. Stock Input (interim)       $1,000

# Vendor Bill:
# Dr. Stock Input (interim)       $1,000
# Cr. Accounts Payable            $1,000

# Delivery (sale):
# Dr. Cost of Goods Sold (expense) $1,000
# Cr. Stock Valuation (asset)      $1,000

# Customer Invoice:
# Dr. Accounts Receivable          $1,500
# Cr. Revenue                      $1,500

Common Issues

  • Negative inventory: processing delivery without receipt → wrong cost allocation
  • Standard cost outdated: standard price not updated after cost changes
  • Valuation mismatch: stock value ≠ accounting value (check interim accounts)
  • FIFO with returns: returned items re-enter at original cost, not current price

DeployMonkey

DeployMonkey's AI agent configures inventory valuation — selecting the right method per product category, setting up accounting accounts, and monitoring for valuation discrepancies.