Hi there,
When a discount code is applied as a free product discount the total is actually doubled rather than reduced. I've attached a screenshot of what I mean. For some reason the free line item is being added but the original line item is not being removed, meaning that although the discount removes one line item total it still leaves one left, meaning the total is not 0.
100% discount works fine.
Thanks,
| Comment | File | Size | Author |
|---|---|---|---|
| #8 | clarify_rename_the-2339719-8.patch | 6.07 KB | joelpittet |
| coupon_bug.jpg | 48.32 KB | gc11 |
Comments
Comment #1
gc11 commentedComment #2
joelpittetThis is expected. Try using a product discount of 100% discount.
Comment #3
torgospizzaI actually think this is a poor UX and should be changed. I have had to refund some customers because we linked to the product they would get with the "free product" promotional discount, so they added that product to the cart, and then also entered the coupon code, resulting in both a free product and a paid product. It's super confusing and while it is the expected behavior for the module it is not expected for the customer.
Setting to Normal and Active and I'm working on a patch right now that basically checks the order line items and if it finds the product in the line item, it simply adds the price component to the existing line item instead of creating a new one.
EDIT to add that while I agree the "100 percent off product discount" works fine, the discount handler should be smart enough to figure out whether a user has the product in the cart already, and whether to apply this as a new line item or discount an existing one. Either that or we should just remove the "free product" offer type completely, since it's prone to cause more confusion than anything. I wouldn't necessarily advocate that, though, since there is something to be said about allowing free "bonus" products to an order, in combination with other discounts linked to a single coupon.
Comment #4
joelpittetWould changing that discount's title to "Add free product" help with the UX?
Comment #5
torgospizzaIt would, actually. Or something like "Free bonus product" or "Free add-on product". Something that lets the store admin know that this is a product in addition to the products in the order.
The thing is, I can see merit for both of these types of free product discounts; and likewise I think there is still some cause for concern w/r/t customer confusion.
Even in the case of changing the offer title, I think it still makes sense to have the discount handler remove any duplicate (non-free) line item(s). Customers can be forgetful (or just downright refuse to read the instructions) and so it is entirely possible that, if they see a coupon for a "free product" (which would be the marketer's fault) and add the product PLUS the coupon, they could still end up in the situation of having a duplicate in their cart.
I think it's just a matter of simplifying things across the board, and having some additional logic to handle "product already is in cart" will help keep things more airtight. (As opposed to the alternative solution: duplicating the Discount Rules to handle both situations...)
Comment #6
joelpittetRemoving non-free options is really not a good idea if you have the case where they can still buy that item if they want more of it yet the condition for a free one is over $100 order for example. That is a trickier problem and deserves it's own issue if you'd like to persue it. I'd rather do something we can and that is change the title to better reflect.
"Add free bonus product", verbose enough? (needs more bikeshedding:P)
Comment #7
torgospizzaThat is a good point. You're right, perhaps then it is just a titling issue and it should be renamed. I'll update this issue as well.
I think this will help actually, since it's wrong to assume that the "Free product" will always be associated with a coupon as I was doing. Your point makes it clear that for other complicated offer types including "Buy One Get One Free" then we should probably keep it as is.
Comment #8
joelpittetUntil a better name is picked. Here's something to discuss.
Comment #9
torgospizzaSuper simple and I think it does help clarify the use case for this particular offer type. Thanks!
Comment #10
joelpittetWould like to get one or two more people looking at this, tagging to get some sprinter eyeballs
Comment #12
joelpittetIt's been sitting for a couple weeks so I'll commit and let's see if people have concerns.