TIP: You can type at any time to perform a new search.
Coupons multi product criteria
coupon_criteria_multi_product · OCA/sale-promotion
Security findings
Migration considerations
coupon_program_view_form_common— For a target of Odoo 17.0+: view 'coupon_program_view_form_common' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · source
Migration review checklist, not a compatibility verdict. No target version is selected: apply version-specific advice only when migrating to that version or later.
- Repository
- OCA/sale-promotion · module folder · Try on Runboat
- Module version
- 1.0.1
- Category
- Sale
- Folder size
- 0.05 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/sale-promotion
- Last tracking update
- 2026-08-07 07:57:18
- Authors
- Odoo Community Association (OCA), Tecnativa
- Maintainers
- Odoo Community Association (OCA), Tecnativa
- Committers
- pilarvargas-tecnativa, Weblate, OCA-git-bot, oca-ci, Stefan
Code Analysis
Views touched (1)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
coupon_program_view_form_common |
coupon.program | form | Inherits coupon.coupon_program_view_form_common |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (2)
New fields (4)
-
product_idsMany2many → product.productcomodel_name='product.product'required=True -
program_idMany2one → coupon.programcomodel_name='coupon.program' -
repeat_productBooleanhelp='Can product quantities count multiple times or not'string='Repeat' -
rule_min_quantityIntegercompute='_compute_rule_min_quantity'help='Minimum required product quantity to get the reward'readonly=Falsestore=Truestring='Min. Quantity'
No public methods.
New fields (2)
-
coupon_criteriaSelectiondefault='domain'help='- Domain: Standard behavior. The products are evaluated by domain.\n- Multi product: different rules can be applied to different products and all of the have to be fulfilled'selection=[('domain', 'Domain'), ('multi_product', 'Multi Product')]string='Coupon criteria' -
coupon_criteria_idsOne2many → coupon.criteriacomodel_name='coupon.criteria'inverse_name='program_id'string='Multi Product Criterias'
No public methods.