Best Practices for Inventory Configuration in Odoo: Valuation Methods and Product Setup

blog-banner

Why Inventory Valuation Matters in Odoo 19

In Odoo 19, Inventory is not just about stock tracking it directly impacts your financial reporting, profitability, and tax compliance.

The way you configure inventory valuation determines:

The Technical Approach: Why Scripted Migration Matters

For such bulk migrations, manual CSV import methods will almost never work. They don’t support relational records, have no fault tolerance, and need a lot of pre-processing before use. However, using an automatic, script-based system, in particular, through the Odoo XML-RPC interface, provides solutions for all those issues, resulting in migration procedures which are consistent and can be reproduced whenever necessary.

The primary idea behind this is to completely eliminate any processing of the exported CSV files outside of the importing scripts. The logic of the file consumption should be fully implemented within the script, without renaming columns, editing the files in any way, etc.

This approach delivers several specific advantages:

  • Accuracy of your Balance Sheet
  • Accurate cost of goods sold (COGS)
  • Real-time profit margins
  • Audit readiness

If configured incorrectly, your financial statements can be significantly distorted.
This guide explains:

  • Average Costing (AVCO)
  • Standard Costing
  • FIFO (brief comparison)
  • Step-by-step configuration in Odoo 19

Standard Valuation Methods in Odoo 19

  • Manual (Periodic)
  • Inventory value is not updated automatically in accounting when products are received, delivered, or transferred.
  • Stock movements affect only the inventory records, not the accounting entries.
  • The accounting team manually calculates and records inventory adjustments at the end of a period (monthly, quarterly, or yearly).
  • Suitable for businesses with simpler inventory processes or those that prefer periodic stock valuation
  • Automated (Perpetual)
  • Inventory value is updated automatically in real time whenever stock moves.
  • Odoo automatically creates accounting journal entries for receipts, deliveries, returns, and valuation changes.
  • Provides up-to-date inventory valuation and cost of goods sold (COGS) information.
  • Recommended for businesses that require accurate, real-time financial reporting and inventory tracking.

Standard Costing in Odoo 19

What is Standard Cost

Standard Cost assigns a fixed cost to a product, regardless of purchase price.
This cost is manually set by management based on:

  • Budget
  • Historical average
  • Supplier contracts

Variance Accounting

If standard cost = $10 
Actual purchase = $12 
Qty = 100  

Odoo posts:

Account Debit Credit
Stock Valuation $1,000  
Price Difference $200  
Stock Input   $1,200

The $200 is recorded as a variance, helping management track supplier performance

FIFO (First In, First Out) in Odoo 19

What is FIFO?

FIFO (First-In, First-Out) implies that the oldest goods in stock are the first ones to be sold out. As a result, the cost of goods sold (COGS) will be based on the cost of the oldest inventory, while the remaining goods will have a newer cost.

FIFO is best suited for:

  • Items with expiration dates
  • Inventory batches
  • Companies that require inventory rotation

Example

If you sell 120 units: 

COGS Calculation: 

100 units × $5 = $500 
20 units × $7 = $140 

Total COGS = $640 

Remaining Inventory: 

30 units × $7 = $210 

Average Costing (AVCO) in Odoo 19

What is AVCO

AVCO (Average Costing) calculates a weighted average cost each time new stock is received.

Formula:

New Avg Cost = (Existing Value + New Value) / (Existing Qty + New Qty)

Example

Transaction Qty Cost Stock Qty Avg Cost
Purchase 1 100 $5 100 $5.00
Purchase 2 50 $7 150 $5.67

Calculation:
(500 + 350) / 150 = 5.67

If the goods are sold 60 times, then COGS would be computed using the $5.67 per unit cost.

Step-by-Step Odoo 19 Configuration

Step 1: Enable Settings

Go to:
Inventory -> Configuration -> Settings
Enable:

  • Inventory Valuation (Automated)
  • Landed Costs (if importing goods)

image-1

Step 2: Configure Product Category

Go to:
Inventory -> Configuration -> Product Categories
Set:

Field Value
Costing Methods AVCO / Standard / FIFO
Inventory Valuation Automated
Stock Valuation Account Asset account

image-2

Step 3: Assign Category to Products

Open Product
Select the configured Product Category.

Which Method Should You Choose?

Business Type Recommended Setup
SME / Trading AVCO + Automated
Manufacturing Standard + Automated
Retail Chain AVCO
Perishables FIFO
Import Business AVCO + Landed Costs
Expiration Date FEFO

For most companies implementing Odoo 19 for the first time:
Start with AVCO + Automated Valuation.
It is simple, accurate, and aligns with real-time accounting.

Conclusion

Correct Odoo Inventory Configuration ensures:

  • Accurate financial statements
  • Real-time stock value visibility
  • Clean audit trails
  • Faster month-end closing

FAQ

Can I change costing method after going live?

Yes, but it will revalue all stock. Always consult your accountant first.

Does Standard Cost work with Manufacturing?

Yes. It is recommended for manufacturing environments.

How do I check if valuation matches accounting?

Compare: Inventory Valuation Report & Stock Valuation Account in General Ledger They should always match.

What is Landed Cost?

Additional expenses (freight, customs, insurance) added to product cost.

Is FIFO better than AVCO?

Depends on your business. FIFO is better for batch-specific tracking; AVCO is simpler for general trading.

Contact Us

For Your Business Requirements