Understanding Odoo's Pricing Tools: Pricelists, Discounts, and Promotions
Pricing is one of the most strategically important functions in any business, and getting it right in your ERP system saves time, prevents errors, and protects margins. Odoo offers a flexible pricing engine that handles everything from simple retail pricing to complex B2B pricing structures with customer-specific rates, volume discounts, promotional campaigns, and multi-currency support. Understanding how these tools work together will help you configure pricing that matches your actual business.
The Basics: Product Prices
Every product in Odoo has a sales price, which is the default price shown on quotations and the eCommerce store. For many small businesses, this is all they need — a single price per product that applies to all customers.
But most businesses outgrow simple pricing quickly. You might offer different prices to different customer segments, volume discounts for large orders, seasonal promotions, or currency-specific pricing for international customers. That's where pricelists come in.
Pricelists: Customer-Specific and Segment-Based Pricing
A pricelist in Odoo is a set of pricing rules that can be applied to individual customers, customer groups, or sales channels. You can create as many pricelists as you need — a wholesale pricelist that's 30% below retail, a VIP customer pricelist with special rates, a pricelist for your eCommerce store that differs from your in-store pricing.
Pricelist rules can be defined as a fixed price per product, a percentage discount off the standard price, a formula based on cost plus markup, or a discount off another pricelist. Rules can apply to all products, specific product categories, or individual products.
Volume and Tiered Pricing
For businesses that offer quantity-based discounts — buy 10 units at $8 each, buy 100 units at $6 each — Odoo's pricelists support minimum quantity rules. The correct price is applied automatically based on the quantity on the order line, so salespeople don't need to remember discount thresholds or calculate prices manually.
Tiered pricing can be configured per product or per product category, and different tiers can apply to different customer groups.
Promotions and Discount Programs
Odoo's promotion engine lets you create time-limited offers, coupon codes, buy-one-get-one deals, free shipping thresholds, and bundled discounts. Promotions can be applied automatically at checkout (online or POS) or manually by a salesperson when creating a quotation.
Each promotion can be scoped to specific products, customer segments, date ranges, and minimum order values. This gives your marketing team the flexibility to run targeted campaigns without requiring a developer to configure each one.
Protecting Margins
One of the risks with flexible pricing is that discounts and promotions erode margins without anyone noticing. Odoo helps you manage this by showing the margin on each order line — the difference between the selling price and the product's cost — so salespeople and managers can see the impact of any discount in real time before confirming the order.
You can also set minimum margin rules that prevent orders from being confirmed below a certain profitability threshold, adding a safeguard against aggressive discounting.
Getting Pricing Right
Pricing configuration in Odoo is powerful but can get complex quickly if your business has multiple customer segments, channels, and promotional strategies. Getting the structure right at the start — deciding how many pricelists you need, how they relate to each other, and how promotions interact with base pricing — prevents confusion and errors down the line.
At Custom Pixel Design, we work with clients to design pricing structures during implementation that match their commercial strategy. If your current pricing in Odoo is messy or you're setting up for the first time, contact us for help.