wp-e-commerce / WP-e-Commerce

WP eCommerce - The most popular independent eCommerce platform for WordPress
https://wpecommerce.org
GNU General Public License v2.0
215 stars 216 forks source link

Coupon: Fixed discount to apply to total of products matching conditions #2153

Open benhuson opened 8 years ago

benhuson commented 8 years ago

Just had an interesting request for a coupon configuration with does not seem to be currently possible (or maybe not working as expected).

"Discount total of products specified by coupon conditions by a fixed amount"

At the moment It is possible to set a fixed discount that applied to individual products or a fixed discount that applied to the whole basket.

However, if you specify conditions that limit the coupons to affecting only certain products in the basket (for example, by name) and you have a mixture of discounted and non-discounted items in the basket, the fixed discount will apply to the whole basket rather than just the total of the discountable products in the basket.

So, if my coupon discount is £100 and my basket total is £150 which includes some products which match the coupon conditions totalling £50, then the whole £100 is discounted from the basket rather than limiting the discount to £50 (only the total of products that ,watch the conditions).

Think should maybe be the expected behaviour otherwise you are discounting products that do not match the conditions that are part of the basket?

Or maybe we need radio buttons in coupon to choose:

Apply coupon to:

JeffPyeBrook commented 8 years ago

Ben,

This makes perfect sense.

I have been thinking about this also, in combination with multiple coupons and automatically applying coupon conditions.

I have a store where we want to do promotions like if you buy this item you get 50% off items in this category. If someone buys multiple "trigger" items, then multiple conditions need to apply.

An working example that is close to how this would work is newgg.com. If you add certain items to your cart the promotion code is automatically applied to your cart giving you a discount for that item, or for the related item.

I have multiple coupons working under the hood in a plugin that works with TEV1 branch, but no user interface yet.

Jeff

JustinSainton commented 8 years ago

Would love to see an enhancement like this

On Monday, September 5, 2016, Ben Huson notifications@github.com wrote:

Just had an interesting request for a coupon configuration with does not seem to be currently possible (or maybe not working as expected).

"Discount total of products specified by coupon conditions by a fixed amount"

At the moment It is possible to set a fixed discount that applied to individual products or a fixed discount that applied to the whole basket.

However, if you specify conditions that limit the coupons to affecting only certain products in the basket (for example, by name) and you have a mixture of discounted and non-discounted items in the basket, the fixed discount will apply to the whole basket rather than just the total of the discountable products in the basket.

So, if my coupon discount is £100 and my basket total is £150 which includes some products which match the coupon conditions totalling £50, then the whole £100 is discounted from the basket rather than limiting the discount to £50 (only the total of products that ,watch the conditions).

Think should maybe be the expected behaviour otherwise you are discounting products that do not match the conditions that are part of the basket?

Or maybe we need radio buttons in coupon to choose:

Apply coupon to: [x] Entire basket [] Total of products matching coupon conditions [] Each product at checkout.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/wp-e-commerce/WP-e-Commerce/issues/2153, or mute the thread https://github.com/notifications/unsubscribe-auth/ABHVcgUMQIAHXyv2riMzNZOYyWiXblcEks5qm-nzgaJpZM4J07X_ .

Justin Sainton

Owner | Developer 971.222.6330 / justin@zao.is

zao.is

[image: Facebook] https://www.facebook.com/zaoweb/ [image: Twitter] http://www.twitter.com/JS_Zao [image: Skype] @zao.web.design

benhuson commented 8 years ago

@JeffPyeBrook Like the idea.

I think in the implementation we would just need to be careful to make a distinction between coupons and discounts - see my comment on this issue https://github.com/wp-e-commerce/WP-e-Commerce/issues/474#issuecomment-38289033

"Coupons" are discounts applied at checkout by the user entering a promo code.

"Discounts/Offers" are automatically applied at checkout based on rules - i.e. Buy this, get 2 free, or buy this, get % off something

To me it feels like you should be able to set up automatic discounts in the admin separately to coupons, but essentially very similar with rules etc. I'm not sure we should hack the coupon functionality to do this by automatically applying coupons?

Perhaps you need to be able to setup a "Discount Group" in admin with start and end dates and be able to apply multiple discounts to it; 3 for 1 on some products, 50% off on other products. It would make preparing a store sale much easier - at the moment you need to edit products and set sale prices individually to do this!

Just thinking aloud 😄

JeffPyeBrook commented 8 years ago

@benhuson agreed that there is a subtle difference between coupons and discounts, but not sure the manual action of adding the coupon code is the key differentiator.

What I have currently running live programmatically creates a volume discount if multiple identical products are added to the cart, when all products have the same product options. In our case those options are colors and custom text.

For the coupon discount if a shopper added multiple coupons the discount would be applied, but there isn't a UI to remove them, and the discount does not survive a quantity change due to a cart class implementation artifact.

Currently, the automatic discount and coupon discount coexist and are additive.

The multiple coupon UI has not been a priority because we try not to use coupons on our store. Mostly because of the management overhead and a perceived higher abandonment rate when shared coupons don't always work.

Instead we are moving towards an automatic discount model. This seems to incentivise specific shopper actions more directly, and more predictably.

I am not sure a typical store owner would understand the nuances between coupons and automatic discounts when they do almost the same thing. For our implementation I am leaning towards UI with an additional radio button set that toggles between "Require Coupon Code" and "Apply Automatically". This might be all that's required to make this operational for the masses..

Definately worth discussing as I am not at all sure the best route for everyone as opposed to our stores.

benhuson commented 8 years ago

For our implementation I am leaning towards UI with an additional radio button set that toggles between "Require Coupon Code" and "Apply Automatically".

That would makes sense.

It's what I tried to explain (very badly). They both apply the same sort of rules to the basket based on conditions, but coupons require a user to input a coupon code and discounts just apply automatically (no coupon code required) - what you said 😉

Your radio button solution would work well I think, although then perhaps in the admin "Coupons" should then be changed to "Discounts" (or something) as discounts to me imply any sort of pricing saving (money-off coupons, free shipping, BOGOF, 3-for-2 etc) whereas coupons are purely discounts based upon the user having a discount code/voucher to enter.

I like where you're heading though...

JustinSainton commented 7 years ago

@benhuson or @JeffPyeBrook if either of you want to own this enhancement, I'd love to ship it in 4.0. Otherwise, we'll leave it milestoned for a future release!