I have been working with this module for the last couple of weeks and either I am missing something or there is no streamline method for creating exclusive discounts?
Scenario:
An administrator creates a $10 product discount, a 10% order discount and a %10 Role discount. I can find no way to specify that any of these discounts be exclusive, so customers are able to use them all on a single order.
In this case the administrator could add negative conditions of all other discounts to the discount in question (i.e. conditions could be added to the order discount that check if the specific product that already has a discount is not in the cart OR if the user does not belong to a role with a discount,
then apply the order discount), however I find it unreasonable to expect users to have to add negative conditions to discounts to counter any other configured discounts. Imagine having hundreds of discounts and trying to keep them all up to date as to not conflict with one another; Its improbable. Every time you added a new discount, you would have to update all the ones it conflicts with. If this is going to be a framework to replace (centralize) all other discount/coupon modules, I think it vital to the life of this module to have some streamline way of handling this.
Perhaps we can start with a definition of rules that will help guide its implementation. Here are just a few issues to consider off the top of my head:
- If multiple exclusive discounts apply to an order, how do we determine which one to use?
- by discount weight?
- by best value to the customer?
- other ideas?
- If a product discount is exclusive, is it exclusive to the product, or the order?
(i.e. if a customer purchases a product with a discount and enters a coupon code for 10% off an order, and both discounts are exclusive, is the coupon not applicable at all, or does it apply to products that don't already have a discount?)
These are just a couple of ideas to get a conversation started. Please don't refer me to other modules that already have this functionality, I know about all of them. I imagine, since Lyle and Ryan are the force behind this Discount Framework module, that it will eventually replace all others and thus would like to focus on it. That said, I would love to hear from the module maintainers and the community regarding this issue, as I believe it to be fundamental to it's adoption and success.
Cheers,
Antoine