Sales: Products: Promotion Programs


Promotions are discounts or rewards that can be configured to be applied automatically when certain order conditions are met or require a code to be inputted along with the order conditions being met. 

The purpose of this document is to show you how to configure promotions, and how they're applied in the Odoo Sales app.


To get started, navigate to the Sales app. 

Odoo image and text block

Click CONFIGURATION >SETTINGS. Under the Pricing section, ensure Coupons & Promotions is enabled.

Odoo image and text block

If you've made changes, click SAVE.

Creating Promotions

Click Products > Promotion programs.

From this page, you'll see all of your existing promotion programs listed and whether or not they're currently Active.

Click create to begin making a new promotion program. 

Odoo image and text block

Program Name: Enter the name you would like to set for your Promotion Program. This will display on the line item for your Sales Orders. 

Odoo image and text block


The first step to creating your promotion program is to define the circumstances that this promotion can be used under. You can define your parameters as loosely or tightly as you see fit for each of your programs by adding conditions based on Products and Customers. 

Good to Know!

You'll often see Odoo refer to filtering records down to subsets as "Domains". Simply put, everything you specify as being a part of the Domain will be impacted by whatever record you're on. 

So, for our purposes, when we set the Domain on the promotion program, we are filtering down our entire product catalog or contacts list into a smaller sub-set of products or customers that this promotion can be applied to. 

When you add more than one condition in the Domain modal window, you'll have the option to choose whether you want the promotion to apply if ALL of the conditions are met or if ANY of the conditions are met. 

By default, Odoo filters using all conditions, but you can easily change it using the drop-down menu.

Based on Customers: To only allow the coupon to be used by specific customers, click the EDIT DOMAIN button. The example below shows the number of customers included before a domain is set.

On the Domain modal window that will appear, you can hit the   Add Filter button to start inputting targeting on your customers list. If you do not use any filters, then all of your customers will be eligible for this promotion. 

Select the variable you want to filter your customers by from the dropdown menu. Then, select how you want to filter by that field and set the value that you want to filter for. 

In the below example, we selected the "Display Name" of the customer, the operator of "contains", and the value we wanted to target to "Hibou". This means that we only want customers with the word "Hibou" in their name to be able to use this promotion. 

Add more filters with the  button, delete filters with the  button, or narrow specific filters down even further (e.g. numerical ranges) with the  More menu.

Based on Products: To only allow the promotion to be used on specific products or categories, click the EDIT DOMAIN button. The example below shows the number of products included before a domain is set.

When you're done inputting your Domain rules, click SAVE.

If your conditions return 0 records, then you'll want to modify your filters to be less strict. You can see a list of all of the products that will qualify for your promotion by clicking the  # RECORD(S) button.

Quantity: Minimum quantity of the applicable products required to be in the cart or on the order before the promotion will apply.

Minimum Purchase Of: This is the minimum purchase amount that needs to be reached before the promotion will be applied. You can choose if you want the taxes to be included or excluded from this amount. This is based on the order total, not the total amount for a specific product line. 

Promo Code Usage: You can set the discounts to apply automatically without the need for a code or you can create promotional codes that need to be applied for the discount to take place. 

  • Automatically Applied: With this option, the discount will apply to all orders meeting the criteria.

  • Use a Code: With this option, a promotional code is required for the discount to apply. If you select this option, you will be prompted to create a Promotion Code that will be used to activate the discount on all qualifying orders. 

Company: If you are in a multi-company environment, you can specify which company this coupon will apply to. If left blank, this will default to your current company. 


Website: Promotions will automatically be applicable across all of your websites. If you have more than one website and would like to restrict its applicability to only one of them, select which website you want this to apply to. 

Apply on First: This is the maximum number of sale orders this promotion can be applied to by a single customer. Enter 0 for infinite use.

Start Date: Enter the date the promotion begins. 

End Date: Enter the date the promotion expires. Leaving this blank means that the promotion will never expire. 


This section allows you to configure the type of benefit your customer will receive when they use this promotion. 


  • Apply on Current Order: Reward will be applied to the current order (e.g. 10% off now).

  • Apply on Next Order: The reward can be used on a future order (e.g. 10% off coupon will be generated that the customer can use on their next order).


  • Discount: If Discount is selected, you will have the below options to configure for your Discount: 

    • Apply Discount: You can set this to either be a percentage off or a fixed dollar amount off. 

    • Discount Apply On: If using a percentage-based discount, you can set the discount to be applied on the entire order, on the cheapest product on the order or on a specific product (see next image) on the order. If using a fixed rate discount, the discount will apply to the order total. 

  • Max Discount Amount: This is the maximum dollar value that can be discounted with this promotion. In the following example, we've capped the discount at $10.00. This means a $200 product with a 10% discount coupon would not get a $20 discount because of this setting. They'd only get a $10 discount.

  • Free Product: If selected, then you will select the free product offered with this promotion, along with the quantity

  • Free Shipping: If selected, then any calculated shipping costs will be waived for the order. 

When you're done with the basic configuration, click  SAVE.

Applying Promotions

On the Website

If the promotion is configured to apply automatically, the customer only needs to meet the criteria with their order to see the discount applied.

If the promotion requires a code, the customer will have the option to enter their promotion code in the shopping cart of the website.

On a Sales Order

For any order, click the Promotions button to apply any applicable promotion that does not require a code.

If a promotion requires a code to apply, you'll need to add the code using the Coupon button.

This brings up a modal window where you'll enter the code, then click APPLY.