Skip to content

How to Set Up Pricelists & Multi-Currency in Odoo 19

DeployMonkey Team · March 24, 2026 10 min read

What Are Pricelists?

Pricelists in Odoo 19 define pricing rules: discounts, fixed prices, formulas, and currency. Assign different pricelists to different customers for B2B vs B2C pricing, regional pricing, or wholesale tiers.

Enable Pricelists

  1. Go to Sales → Configuration → Settings
  2. Under Pricing, enable Pricelists
  3. Choose: Multiple prices per product or Advanced price rules (discounts, formulas)
  4. Click Save

Create a Pricelist

  1. Go to Sales → Configuration → Pricelists
  2. Click New
  3. Set Name (e.g., "Wholesale EUR") and Currency

Price Rule Types

TypeUse CaseExample
Fixed PriceSet exact price per productProduct A = $50.00
DiscountPercentage off the base price15% off all products
FormulaCalculate from cost/other pricelistCost + 30% margin

Adding Rules

In the Price Rules tab:

  1. Click Add a line
  2. Select Apply On: All Products, Product Category, or Specific Product
  3. Set Min. Quantity for quantity breaks (e.g., 10+ units = 10% off)
  4. Set Computation: Fixed Price, Percentage (discount), or Formula
  5. Set Date range for promotional pricing

Example: B2B Wholesale Pricelist

Pricelist: Wholesale USD
Currency: USD

Rules:
1. All Products: 20% discount (min qty: 1)
2. All Products: 30% discount (min qty: 50)
3. All Products: 40% discount (min qty: 200)
4. Category "Accessories": Fixed $5.00 (min qty: 100)

Multi-Currency Setup

Step 1: Enable Multi-Currency

  1. Go to Accounting → Configuration → Settings
  2. Enable Multi-Currencies
  3. Click Save

Step 2: Activate Currencies

  1. Go to Accounting → Configuration → Currencies
  2. Activate the currencies you need (EUR, GBP, INR, etc.)
  3. Set exchange rates manually or enable automatic updates

Step 3: Automatic Exchange Rates

  1. Go to Accounting → Configuration → Settings
  2. Under Currencies, select the Exchange Rate Provider:
    • European Central Bank (ECB)
    • Federal Reserve
    • Bank of Canada
    • Custom provider
  3. Set Interval: Daily, Weekly, or Monthly
  4. Rates update automatically via scheduled action

Step 4: Currency Pricelists

Create a pricelist per currency: "Retail EUR", "Retail GBP". Assign to customers based on their country or region.

Assign Pricelists to Customers

  1. Open the customer record
  2. Go to Sales & Purchases tab
  3. Set the Pricelist field

Or assign by country: create a fiscal position that maps to a pricelist.

Best Practices

  • Name pricelists clearly: "Wholesale EUR", "Retail USD", "VIP 20% Off"
  • Use quantity breaks for volume discounts
  • Enable automatic exchange rate updates to avoid manual errors
  • Test pricelists by creating a draft quotation and verifying prices