Skip to Content

Stock Valuation Evolution in Odoo v19: From Layers to Direct Values

Understanding the Fundamentals

Before exploring Odoo's transformation, let's clarify the key accounting concepts that govern inventory valuation.

Accounting Philosophies: Continental vs Anglo-Saxon

These are not valuation methods but rather accounting philosophies that determine WHEN inventory costs impact your profit and loss statement.

Continental Accounting (European approach):

  • Purchases are immediately recorded as expenses
  • Inventory is an adjustment made at period end
  • Used primarily in continental Europe, France, Belgium, and Germany

Anglo-Saxon Accounting (UK/US approach):

  • Purchases increase inventory (asset account)
  • Expenses are recognized only when goods are sold (Cost of Goods Sold)
  • Standard in UK, US, Australia, other English-speaking countries like New Zealand, Ireland, Canada, and most trading companies in the Middle East.

Valuation Timing Methods: Periodic vs Perpetual

These determine WHEN inventory values are updated in your accounting books.

Periodic Valuation:

  • Inventory values updated manually at period end
  • Requires physical counts and manual adjustments
  • Simpler but provides less visibility during the period

Perpetual Valuation:

  • Inventory values updated automatically with each transaction
  • Provides real-time inventory value visibility
  • More complex but more accurate and timely

The Evolution: Before and After Odoo version 19

Before Odoo 19: The Layered Approach

The system created a "valuation layer" for every single inventory movement. Think of it like keeping a detailed receipt for every item that moved in or out of your warehouse. While comprehensive, this created thousands of records for busy operations, making the system slow and complex.

Problems with the Old System:

  • Performance degradation with high-volume transactions
  • Difficult reconciliation when discrepancies arose
  • Complex backdating and correction processes
  • Large database storage requirements

Odoo 19: The Streamlined Solution

The new system eliminates the intermediate layer entirely. Values are now stored directly with the inventory movements themselves, like writing the price directly on the box instead of keeping separate price tags.

Benefits of the New Approach:

  • Faster performance, especially for high-volume operations
  • Simpler reconciliation between inventory and accounting
  • Clearer tracking of manual adjustments
  • Reduced database storage requirements

Practical Examples: Before and After Odoo 19

Let's examine how the same scenarios work before and after the changes.

Scenario 1: Continental + Periodic Valuation

Company Profile: A French retailer using traditional European accounting

Transaction Flow

  • Purchase: 10 units at €50 each = €500
  • Sale: 6 units at €100 each = €600
  • Remaining: 4 units valued at €200

Before Odoo 19

At Purchase:

Account

Debit

Credit

Purchase Expense

€500


Accounts Payable


€500

System creates valuation layers in background (not posted)

At Sale:

Account

Debit

Credit

Accounts Receivable

€600


Sales Revenue


€600

More valuation layers created but not posted

Month-End Closing:

Account

Debit

Credit

Inventory Asset

€200


Inventory Variation


€300

Purchase Expense


€500

System had to process all valuation layers to calculate these amounts


After Odoo 19

At Purchase:

Account

Debit

Credit

Purchase Expense

€500


Accounts Payable


€500

Value stored directly on movement

At Sale:

Account

Debit

Credit

Accounts Receivable

€600


Sales Revenue


€600

System calculates value from movement directly

Month-End Closing (Automated):

Account

Debit

Credit

Inventory Asset

€200


Inventory Variation


€200

New closing report automatically generates this entry

Scenario 2: Anglo-Saxon + Perpetual Valuation

Company Profile: An Aussie distributor with real-time inventory tracking

Transaction Flow

  • Purchase: 10 units at $50 each = $500
  • Sale: 6 units at $100 each (cost $300)
  • Remaining: 4 units valued at $200

Before Odoo 19

At Receipt (before invoice):

Account

Debit

Credit

Stock Interim (Receipt)

$500


Stock Input


$500

Valuation layer created with estimated value

At Vendor Bill:

Account

Debit

Credit

Stock Input

$500


Accounts Payable


$500

Inventory Asset

$500


Stock Interim (Receipt)


$500

Multiple valuation layers and reconciliation needed

At Customer Delivery:

Account

Debit

Credit

Stock Output

$300


Inventory Asset


$300

Valuation layers calculate FIFO/AVCO cost

At Customer Invoice:

Account

Debit

Credit

Accounts Receivable

$600


Sales Revenue


$600

COGS

$300


Stock Output


$300

System reconciles through valuation layers

After Odoo 19

At Receipt (before invoice):

No accounting entry - value tracked on movement

At Vendor Bill:

Account

Debit

Credit

Inventory Asset

$500


Accounts Payable


$500

Direct posting, no interim accounts

At Customer Invoice:

Account

Debit

Credit

Accounts Receivable

$600


Sales Revenue


$600

COGS

$300


Inventory Asset


$300

Value pulled directly from movements

The New Closing Process in Odoo v19

Automated Reconciliation

The new Inventory Valuation Audit Report automatically:

  1. Compares physical inventory value with accounting balances
  2. Identifies discrepancies between systems
  3. Generates necessary adjustment entries
  4. Handles timing differences for goods in transit

Manual Adjustments

When manual value corrections are needed:

  • Before Odoo 19: Complex layer adjustments, often requiring technical intervention
  • After Odoo 19: Simple value update with clear audit trail showing who, when, and why

Configuration Comparison

Before Odoo 19

  • Multiple configuration points across different modules
  • Separate settings for input/output accounts
  • Complex interim account configurations
  • Manual period-end closing processes

After Odoo 19

  • Centralized configuration in company settings
  • Simplified account structure
  • Automated closing options (daily, monthly, or manual)
  • Built-in reconciliation tools

Key Differences Summary

Aspect

Before Odoo 19

After Odoo 19

Data Structure

Separate valuation layers for each movement

Values stored directly on movements

Performance

Slower with high volumes

Optimized for any volume

Reconciliation

Manual and complex

Automated with audit report

Corrections

Difficult, often need technical help

Simple with clear audit trail

Interim Accounts

Required for perpetual valuation

No longer needed

Closing Process

Manual journal entries

Automated generation

Storage

Large database footprint

Minimal storage impact


Business Impact


For Finance Teams

  • Less time spent on month-end reconciliation
  • Clearer visibility into inventory values
  • Simpler corrections when adjustments are needed
  • Better compliance with automated audit trails

For Operations

  • Faster system response during busy periods
  • Real-time accuracy without performance penalty
  • Easier troubleshooting of valuation issues

For IT/Implementation Teams

  • Simpler architecture to maintain
  • Fewer customizations needed
  • Easier upgrades in the future
  • Reduced database maintenance

Migration Considerations

When upgrading to Odoo 19:

  1. Historical Data: Previous valuations remain accessible but use the new structure going forward
  2. Customizations: Any custom reports or processes need updating
  3. Training: Finance teams need orientation on the new closing process
  4. Testing: Thoroughly test valuation scenarios before go-live

Conclusion

Odoo version 19's transformation of inventory valuation represents a major simplification without sacrificing functionality. The removal of valuation layers in favor of direct value storage delivers:

  • Improved performance that scales with business growth
  • Simplified processes that reduce training requirements
  • Better accuracy through automated reconciliation
  • Enhanced auditability with clearer adjustment tracking

The key takeaway: Odoo 19 achieves the same business outcomes, accurate inventory valuation and proper accounting, through a much simpler and more efficient approach. Whether using Continental or Anglo-Saxon accounting, Periodic or Perpetual valuation, the new system handles all scenarios more elegantly than before.

Need Help with Odoo 19 Migration or Implementation?

Upgrading to Odoo 19's new valuation system can be complex. At ERP Heritage, we've successfully migrated dozens of businesses, ensuring smooth transitions without data loss or operational disruption.

Get expert guidance from Odoo specialists who understand both the technical and accounting implications.

Contact us today for a free consultation or call +61 469 095 910 or info@erpheritage.com.au.