Coupons multi product criteria
Base module that allows to define complex rules on products to fulfill the conditions of a coupon program, so for a given set of products we could define a minimum quantity and another for others, being all those criterias mandatory for the coupon to be applied.
auto_awesome What this module does
AI-generated from the code · Odoo 15.0Adds a 'Multi Product' coupon criteria option to promotion programs, letting you set different minimum quantities for different product groups, all of which must be met for the coupon to apply.
When configuring a coupon program, you can now choose between the standard 'Domain' criteria and a new 'Multi Product' criteria. With 'Multi Product' selected, a table appears where you can add several lines, each listing products and a minimum quantity.
- Each line requires a set of products and a minimum quantity. If 'Repeat' is off, the minimum quantity is automatically set to the number of products in that line and cannot be changed; if you try to change it, Odoo blocks the save with an error.
- If 'Repeat' is on, product quantities can count multiple times, and you can freely set the minimum quantity.
- All lines must be satisfied for the coupon to be valid.
The feature is available on the coupon program form, in the same area where the product domain is normally defined. The standard domain field is hidden when 'Multi Product' is selected, and the multi-product table is hidden when 'Domain' is selected.
This module extends the coupon.program model and adds a new coupon.criteria model to store the lines. It does not change any other sales or promotion behaviour.
Depends on
Required by other modules
Models and fields (2)
- coupon.program · extends an existing modelcoupon_criteria (Coupon criteria), coupon_criteria_ids (Multi Product Criterias)
- coupon.criteria · new modelprogram_id, product_ids, repeat_product (Repeat), rule_min_quantity (Min. Quantity)
Text generated by AI (DeepSeek) from reading the Odoo 15.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 1 confirmed, 8 with no information of 9 versions.
Sources · Odoo 15.0
Confirmed on 2026-11-03 in branch 15.0 of OCA/sale-promotion.
terminal Installation and usage
OCA documentation · Odoo 15.0Configuration
Source · Odoo 15.0To configure multiple product criterias:
- Go to Sales > Catalog > Coupon Programs and select or create a new one.
- On the Coupon Criteria field choose Multi Product.
- The standard domain will be hidden and a criteria list will be shown.
- Add as many criterias as needed for the desired promotion behavior.
In the list of criterias we can configure:
- Qty: The minimum quantity of products in the sale order to fulfill the condition.
- Products: The products that should be present to fulfill the condition.
- Repeat: The sum of quantities of any product in the criteria must be at least the one defined in the minimum quantities. If not set, the minimum quantity will be the number of products defined in the criteria, as all of them must be in the order to fulfill the condition.
Some examples:
===== ================ ======== Qty Products Repeat ===== ================ ======== 1 Prod A ===== ================ ========
A unit of Product A must be in the sale order.
===== ================ ======== Qty Products Repeat ===== ================ ======== 2 Prod B, Prod C ===== ================ ========
A unit of Product B and Product C must be in the sale order.
===== ================ ======== Qty Products Repeat ===== ================ ======== 3 Prod D, Prod E X ===== ================ ========
Either Product D or Product E or both must be in the sale order and the sum of their quantities must be three.
Also note that all the defined criterias must be fulfilled or the program won't be applied.
No verified information in OCA: Installation, Usage.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.