With this module, group all your cart rule (and voucher code) into families, for which you define the way their rules can be cumulative or exclusive.Cart rules families
You define as many cart rules family that you want. For each one, you define:
- If its rules are cumulative or not with the product in reduction
- If its rules are cumulative to each other
- Its behavior against each of the others families:
Voucher code patterns
- cumulative: its rules are cumulative with the rules of the other family
- prioritary: its rules have the priority on the rules of the other family (which can then be removed from the cart)
- non prioritary: the rules of the other familly remove the rules from this family from the cart
To be compatible with core features and modules generating voucher, you can define voucher code patterns. This avoid to modify php code regarding code generation.
Each feature or module generate voucher with a code following a given format (for example V[id]C[id]O[id] for the credit slips).
When a new cart rule is created, the module detects if its code follows one of the defined pattern. In such case, the cart rule of this voucher is pa-laced in the family associated to the pattern.Front-office behavior
In front-office, when the customer change his cart content (add/suppression of product, add/suppression of discount...), the Prestashop Core evaluate the cart rules. The module is called during this phase to determine the combiantion and priority depending of the cart rules families.