Back to Blog

October 30, 2026

Odoo 20 Makes Reference Pricing Mandatory-Ready for European E-Commerce With Per-Unit Price Displays

Odoo 20 overhauls its e-commerce pricing display with a configurable Product Reference Price setting that shows the cost per unit of measure beneath every product price, bringing storefronts into compliance with EU price indication regulations and giving shoppers the comparison data they actually need.

Walk into any European supermarket and you’ll see it: next to every price tag, a smaller number showing the cost per liter, per kilogram, or per unit. That’s reference pricing, and in much of the EU it’s not optional — it’s mandated by consumer protection regulations. Online retailers are subject to the same rules, but most e-commerce platforms treat it as an afterthought. Odoo 20 just made it a first-class feature.

Two product cards showing crossed-out original prices alongside sale prices with per-unit reference pricing below, next to a configuration panel with toggle switches for reference price, price per unit, strikethrough price, and discount badge settings

One Toggle, Every Product Page

The feature lives behind a single setting: “Product Reference Price” in the Website settings under the eCommerce section. Flip it on and every product in your catalog gains a secondary price line showing the cost per unit of measure. A two-liter paint bucket priced at €60 will display €30/L beneath the main price. A five-kilogram bag of coffee at €75 shows €15/kg.

The reference price appears consistently across the shop page, individual product pages, and the catalog view. That consistency matters because shoppers develop scanning patterns — they learn where to look for the per-unit cost — and breaking that pattern between pages erodes trust. By rendering it in the same position everywhere, Odoo treats reference pricing as a core part of the price display rather than metadata tacked onto the bottom.

Variants Need Individual Attention

Here’s where most e-commerce implementations get reference pricing wrong: they calculate it from the base product and ignore variants. A t-shirt sold in packs of three and packs of five has two different per-unit costs, and showing the wrong one is worse than showing none at all. Odoo handles this by requiring the reference unit to be set per-variant, which means the calculation is always accurate for the specific configuration the customer is viewing.

This is a detail that only matters until it matters enormously. A consumer protection authority in Germany or France isn’t going to accept “our software calculates it from the parent product” as a defense for displaying incorrect per-unit prices. Getting this right at the variant level is the difference between compliance and a regulatory headache.

Website-Specific Configuration for Multi-Market Sellers

The reference price setting is website-specific, which is Odoo’s way of acknowledging that not every market has the same requirements. A company selling into both France (where per-unit pricing is mandatory for most consumer goods) and the United States (where it’s not required online) can enable the feature for their EU storefront while keeping the US site cleaner. This avoids the all-or-nothing approach that forces international sellers to either clutter every market with unnecessary data or risk non-compliance in regulated ones.

Combined with Odoo’s existing multi-website architecture, this means a single product catalog can present different pricing displays to different audiences without duplicating products or maintaining separate configurations per SKU.

The Crossed-Out Price Gets It Right Too

Reference pricing isn’t the only pricing display that EU regulators care about. The Omnibus Directive added rules around strikethrough pricing — the classic “was €79.99, now €59.99” pattern — requiring retailers to show the lowest price from the previous 30 days, not just any historical price they feel like crossing out. Odoo’s updated pricing display infrastructure handles both the reference price and the comparison price in a way that keeps the storefront legally defensible without requiring store operators to manually track price histories.

For any online retailer selling physical goods into EU markets, this is the kind of feature that eliminates a compliance checklist item that previously required either custom development or a third-party plugin. It’s not exciting. It’s not going to make anyone choose Odoo over a competitor. But it’s the kind of thing that prevents a very specific, very expensive regulatory problem — and that’s worth more than excitement.

Ready to experience Odoo AI?

Join hundreds of teams using DearERP to customize Odoo in minutes, not weeks. Plans start at $29/month.