Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stock is not reduced when an item is added to the cart #5966

Closed
michaelmcmillan opened this issue Aug 4, 2014 · 48 comments
Closed

Stock is not reduced when an item is added to the cart #5966

michaelmcmillan opened this issue Aug 4, 2014 · 48 comments
Labels
needs: author feedback The issue/PR needs a response from any of the parties involved in the issue.

Comments

@michaelmcmillan
Copy link

When an item is added to the cart the quantity stays the same. It's only when the payment has been successful that the stock is reduced. Consider this scenario:

"User one" and "user two" have added the last available t-shirt to their carts. They proceed to place the order. At this point one of the two users are going to get this error.

From a users perspective this is pants-on-head retarded. Up to this point everything is filled out and ready to go - there's no indication that the product is unavailable, but the user is refused because someone else "beat them to the checkout". If you think of a real physical cart, this would never ever happen. When a product is placed in the cart it should always be available to the customer.

Let me be clear: The stock itself should not be altered with, but there should be some sort of flag that temporarily marks an item as reserved.

This is, by a wide margin, the most noodle-bending counterintuitive thing I have ever seen. I sincerely hope I've missed something, even though I've been through your classes and settings several times.

@bryceadams
Copy link
Contributor

Hi Michael,

WooCommerce is aware of this and 'hold stock' functionality is built into the core. If you go to WooCommerce > Settings > Products > Inventory you can choose the amount of time that stock is Held For for unpaid orders - http://cld.wthms.co/koJQ

@michaelmcmillan
Copy link
Author

Hi Bryce, thanks for the swift reply.

I am aware of the 'hold stock' functionality you are referring to, but it does not solve the scenario I presented above. Two customers can still add the same item even though there's only one item left. This will - regardless of the 'hold stock' - cause an error for one of the two customers.

@Kenshino
Copy link

Kenshino commented Aug 4, 2014

Any propositions to solve this conundrum?

Because this solves the possibility of people holding onto a cart (window
shopping) but not buying it. And frees up actual stock for real paying
customer. (Which happens a fair deal)

I'll be happy to chime in the discussion as one of my clients recently
asked this very same question.

On Mon, Aug 4, 2014 at 5:25 PM, Michael McMillan notifications@github.com
wrote:

Hi Bryce, thanks for the swift reply.

I am aware of the 'hold stock' functionality you are referring to, but it
does not solve the scenario I presented above. Two customers can still add
the same item even though there's only one item left. This will -
regardless of the 'hold stock' - cause an error for one of the two
customers.


Reply to this email directly or view it on GitHub
#5966 (comment)
.

@michaelmcmillan
Copy link
Author

I suggest to implement something similar to the "hold stock" functionality, but for items in the cart. Similarly it should feature an expiration time specified in minutes or so to avoid stock being held up in carts that never gets purchased, like you said @Kenshino .

I would argue that the frustration from being denied an item you clearly were told was available is far more damaging than being told it's sold out. With the latter you don't get the wrong expectations.

This is a real problem, and not just me being grumpy. We have over 3000 customers hitting our servers at the same time. With a little over 12 different products with 30 in stock, a collision is bound to happen, more than you would think.

@mikejolley mikejolley added this to the Future milestone Aug 4, 2014
@michaelmcmillan
Copy link
Author

I'm trying to write a monkey-patch around this horribly unfortunate problem. I have concluded - please strap yourself in for this one - that the best way (for us) of making sure no product is snapped away last minute at checkout is to subtract the items that are already placed in carts.

To make this happen I need some assistance in iterating through every cart (session) in WooCommerce. Where is this stored and are there any ways of initiating a WC_Cart from session vars? I know this is far from pretty, but I have to meet a deadline and this is currently the only option.

I would appreciate if you could assist me as quick as possible! Thanks guys.

Update:

get_option( '_wc_session_' . 1, array() );

Returns the session for a given user. Now I only need to know how I can create a WC_Class object based on the cart-key.

@manospsyx
Copy link
Member

@michaelmcmillan I don't get why the hold stock setting doesn't work for you. Could you please explain? What you describe sounds like an infinite-time hold-stock.

On a side-note, consider this scenario: A scarce stock of 10 items is made available and 100 people lined up for it start adding the available items to their carts. Let's say that stock in carts is accounted for in the availability by default. Once 10 people have grabbed one each, others will be lead to think that the stock has "run out" for good and abandon the effort, although many of those 10 "fast" customers may never actually check out.

To my understanding, this is why the hold stock setting is optional, and this is why is has an associated time frame for "releasing" items.

@mikejolley
Copy link
Member

mikejolley commented Oct 7, 2014

This type of holding can cause issues for some stores. Take a store that sells unique/one off items for instance. You need one person to add it to the cart and stay idle, then no one can purchase it. This can be troublesome for a store.

So if implemented, it would a) need a timeout, b) need to be completely optional.

Some plugins such as bookings could benefit from the addition of this in core.

@bryceadams
Copy link
Contributor

bryceadams commented Oct 7, 2014

Might be worth doing as a free plugin rather than including directly in core, as you said it can cause a lot of issues when unwillingly enabled

Bryce

@Kenshino
Copy link

Kenshino commented Oct 7, 2014

Does anyone know how Magento and other e-Commerce store handle it? No need to reinvent the wheel if someone has already found an operationally feasible solution.

@michaelmcmillan
Copy link
Author

I have a workaround for this. I'll post it here when I get the chance.

@bavington
Copy link

I've just been looking at a similar issue on one of my stores. Essentially what you've suggested @mikejolley would be perfect for my needs. Will keep an eye on this thread, would be great to add this feature either as a core option or plugin.

@davidkusel
Copy link

@michaelmcmillan that workaround you mentioned achieve the desired result? Can you post it please?

@mikejolley mikejolley modified the milestones: Future, 2.4 (name undecided) Nov 13, 2014
@asparrow
Copy link

@michaelmcmillan yes, could you please post your workaround?

@michaelmcmillan
Copy link
Author

My workaround is a hack, a ugly hack. I frequently receive emails from people wanting me to publish it, but it's tightly integrated into our system and is not really portable. Basically all our products are retrieved by a custom ajax-function where we subtract stock which are in any cart. We have a short lifespan for carts (session expirations) and we kill old carts to avoid the problem @mikejolley raised. This is a bad solution in many ways and I don't encourage solving it like that.

Due to the demand here though, I'll give it a shot and write a patch. I don't have the time to make sure it holds up to any coding standards in this project, but those who wish could make it into a proper PR and propose it to @mikejolley or the other WC-devs.

@bryceadams
Copy link
Contributor

@michaelmcmillan I'd recommend trying to do it as a plugin / extension.

@michaelmcmillan
Copy link
Author

@bryceadams (cc. @asparrow, @Kenshino, @bavington, @davidkusel) Alright, I've created a repository which I hope to get started on within this week: https://github.com/michaelmcmillan/WooCommerce-reduce-stock-on-order

I'm in the middle of my exams and work, so I can't promise anything.

@dafro2
Copy link

dafro2 commented Dec 15, 2014

Did someone implement the plugin and tried it?Im looking exactly for this Kind of thing!!!Does it work bug free?

Looking forward to an answer!thanks!

@michaelmcmillan
Copy link
Author

I've tried, but failed. There is no stable and secure way of doing this. If one of the devs could chip in their $0.02 that would be helpful! This is how I picture it could be done:

1. The customer puts a product in her cart.
2. Event is fired and the plugin stores the WC_Cart id (which holds the products) with a timestamp in a table.
3. Stock is then temporarily reduced by the plugin.
4. A cronjob (registered via. wp_cron) checks the table with carts and timestamps and resets the stock for old carts and removes the row from the table.

It's an ugly hack, no doubt. But it should work. I don't know if this a sane way of solving this issue. There's probably a huge amount of edge cases I haven't thought about.

@aj-adl
Copy link
Contributor

aj-adl commented Dec 18, 2014

I can understand the valid use case for this, but (in my personal, relatively worthless opinion) I don't think this should be in core. A lot of edge cases, and WP's lazy cron implementation can also make it more difficult to properly expire timed sessions etc

I think there could be better error handling when such cases happen though - making it more obvious / friendly to customers why such an action happened.

Firing off an ajax call to check the cart's validity every couple minutes on the checkout and/or cart page could also be an option worth looking into - it would mean if someone sits on those page forever they are at least notified what happened before they try and checkout.

@robsaa
Copy link

robsaa commented Jan 9, 2015

Im facing the same problem and I think this would be a nice option in the core.

@stevednm
Copy link

stevednm commented Feb 7, 2015

I agree with Michael McMillan's original comment.

In a real store, if someone takes the last item of a product off the shelf and places it in their cart, none of that item remain on the shelf for someone else to put in their cart. If the cart is abandoned for a time, a store clerk returns the unbought item to the shelf.

I believe that's the way woocommerce should handle stock management, by reducing the number of available items when someone places the items in their cart, instead of doing so only when the item is actually bought. Then a store owner can set a reasonable time-out for the cart after which items in the cart are returned to inventory.

Because WooCommerce manages stock by substracting from the available stock quantity only after a product is bought, it also negatively impacts store owners who prefer to merely authorize the payment transaction instead of completing the payment (sometimes store owners prefer to wait until they are ready to ship the item before completing the payment). For example, with the PayPal payment gateway, one can choose "authorize" rather than "capture." Authorize means that the store owner can review the order, sometimes days later, before capturing the payment (before actually moving the money from the customer's account to the store owner's account). However, because WooCommerce leaves the item in stock until it is actually bought (until the payment is "captured"), another person could conceivably buy the same item even if the previous item was the last one and there are technically none left or available.

I agree with others that WooCommerce should seriously consider managing stock by subtracting items from inventory as they are placed in a cart, and the store owner can determine how much time to give the customer to complete his shopping and proceed through the checkout process before the contents of his cart are returned to inventory. (2 hours seems like more than enough time to me personally, although others' cart-timeouts will of course vary).

@roykho
Copy link
Member

roykho commented Feb 7, 2015

@stevednm

I believe stock should not reduce when it is merely added to the cart. If you did it this way, you are prone to lose sales. Although this is not to say some stores may want it this way but I don't believe it will be majority.

In addition, your statement about a transaction being "authorized" only, that is not correct. It does reduce stock on an order that is only "authorized".

@stevednm
Copy link

stevednm commented Feb 7, 2015

@roykho says: "I believe stock should not reduce when it is merely added to the cart. If you did it this way, you are prone to lose sales."

On the other hand, as an ecommerce store operator for 8 years, I know that there will be angry customers because often I have only one or two of a premium (much desired) item that I can place in stock at any particular time. I would rather lose a few sales than deal with angry customers who were not able to purchase an item they had waited weeks or months to find in stock, and which they rightly believed to be in stock at the time they placed it in their cart.

Just my opinion as a store owner. In my experience, this issue is unique with WooCommerce: I have not experienced it with ZenCart, Magento or OpenCart. Let's say that there is only one of a particular product in stock: the store sells gemstones or old jewelry recovered from estates, for example, and each product is one-of-a-kind. Two customers place this same item in their cart, and both proceed through checkout to PayPal to make payment at almost the same time. At which point is one of those customers informed that he can no longer purchase that one, unique item for which he believes he has just made payment at PayPal, not knowing about the first person and that the first person's PayPal transaction has completed just seconds before his? This can be a potentially very serious customer-service problem and is not a trivial consideration.

Perhaps the functionality could be included in WooCommerce while allowing the store owner to decide whether stock should be reduced upon being added to the cart, or upon purchase.


Regarding the information about stock management and whether payment transactions were set to "authorize" or "capture," thank you very much. Perhaps I didn't check the interaction between PayPal and my website well enough.

@WordCommerce
Copy link
Contributor

If stock reduced when an item added to the cart probably small store owners will lose customers due to lack of stock.

@michaelmcmillan
Copy link
Author

So let it be an option then, I would never suggest to force this upon
anyone.
7. feb. 2015 23.33 skrev "WordCommerce" notifications@github.com:

If stock reduced when an item added to the cart probably small store
owners will lose customers due to lack of stock.


Reply to this email directly or view it on GitHub
#5966 (comment)
.

@stevednm
Copy link

stevednm commented Feb 7, 2015

Perhaps the store operator should be allowed to choose which method of stock management he or she prefers (cart-based with editable timeout, or sale-based), and be able to choose between the two.

@michaelmcmillan
Copy link
Author

Yes, that is what I am suggesting.
7. feb. 2015 23.49 skrev "stevednm" notifications@github.com:

Perhaps the store operator should be allowed to choose which method of
stock management he or she prefers, and be able to choose between the two.


Reply to this email directly or view it on GitHub
#5966 (comment)
.

@stevednm
Copy link

stevednm commented Feb 9, 2015

The issue of cart-based stock management (rather than sale-based as in woocommerce, which can create customer-service problems) is important to me as an ecommerce store owner, so I am investigating alternatives to woocommerce, including wpecommerce. From the stock-management documentation at wpecommerce.org:

The first step is to apply quantities to your products (see below on how to do this).
As your buyers put products into their cart the stock level for this product will decrease,
once checkout is successful and all products are paid for these stock levels will be
deducted permanently. If a payment is unsuccessful or the buyer leaves your store
(closes the browser) with products in their cart these quantities will be reset after an hour.

I believe that this is a better way to handle stock management from a store-owner's and customer's perspective, so despite an investment in woocommerce extensions, I may try wpecommerce, and I urge WooCommerce programmers to give stock management additional consideration. Thank you.

@Kenshino
Copy link

Kenshino commented Feb 9, 2015

@stevednm WooCommerce already does this. You get to set a specific amount of time before cart quantities are returned.

@stevednm
Copy link

stevednm commented Feb 9, 2015

@Kenshino Thank you for your comments, and perhaps I have a misunderstanding.

Woocommerce (in my store, at least) appears to not deduct an item from stock when a person places it in their cart, or at least does not display the deducted quantity for that customer or other customers to see. For example, if I have 2 of a particular item in stock, and add 1 of them to my cart, the quantity listed in stock for that variation (it is a variable product) remains displayed at 2. Why would this be so?

Are you saying that if I tried to add 2 more of the same item to the cart (in addition to the 1 I have already added to the cart), based upon the quantity in stock displayed in the storefront, WooCommerce would issue a message saying that I could only add 1, or that there were not 2 currently in stock? If so, then indeed, WooCommerce deducts from stock when someone adds an item to the cart. But if that reduced stock number is not displayed to the customer (if the quantity displayed in the storefront for that product remains at 2 instead of 1 until the first of the 2 items of that product is actually purchased), then wouldn't you regard that as confusing to the customers?

I'm not sure I understand how WooCommerce is handling the stock management in the background, compared to the stock quantities that are displayed in the storefront. I think I'll test that right now. Thank you Kenshino for your comments. Report to follow--


OK, here is a report for WooCommerce programmers to think about. I just tested WooCommerce's stock management at my store--

I currently have WooCommerce--> Settings--> Products--> Inventory--> Hold Stock set for 60 minutes for unpaid orders.

  • As store administrator, I placed 2 of a particular variation (of a variable product) in stock.
  • As a customer visiting the website, I added 1 of the 2 to my cart.
  • My cart listed 1 of that item in the cart.
  • However, the product page still showed a quantity of 2 in stock.
  • I added another of the item to my cart. My cart listed 2 of that item in the cart.
  • The product page still listed 2 of that item in stock.
  • I attempted to add another of that item to the cart, and received the message: "You cannot add that amount to the cart — we have 2 in stock and you already have 2 in your cart."
  • I deleted 1 of the 2 items in my cart, leaving just 1.
  • The product page showed that there were still 2 of that item in stock.
  • I asked a friend to visit that product at my webstore.
  • On his computer, 2 of that product were listed in stock (despite the fact that I already had one of those 2 in my cart on my computer).
  • My friend added both of those two to his cart, which was successful (no error message was displayed).
  • So although I had only 2 of those items, 1 of them was in my cart and 2 were in his cart on his computer.
  • The product page on my computer and on his computer still listed 2 of that product in stock.
  • When my friend tried to add another of the same item to his cart, he received the error message above (You cannot add that amount to the cart ...) despite the fact that on the product page, 2 were still listed in stock.
  • I was able to add one more of the product to my cart as well, without an error message.
  • So both my friend and I had 2 of the items in our respective carts, even though there were only 2 of these items total available for sale.
  • The product page on my computer and on his computer still listed 2 items in stock.

Does this behavior not seem confusing and problematic? I can imagine that it might generate quite a few customer complaints. As an ecommerce store operator, I would rather not be required to deal with such complaints.

This problem happens whether the product is a variable product or a simple product, and whether a person is using their own customized theme or the unaltered, uncustomized WooCommerce StoreFront theme.

@bluelotusworks
Copy link

This has been an interesting read as we face a problem similar to others in this thread. We're in the middle of developing a site for exhibitor space rentals where exhibitors will be able to choose their own exhibit space (think trade shows, festivals, horse shows, dog shows, etc). That means we'll be using variable products with potentially hundreds of variations, but all variations will have quantities of one. We run a very significant risk of angering a large number of customers clambering for "choice" spots at the time space rentals open because products aren't removed from inventory when added to a cart. As another example, most everyone can relate to, think reserved seating for concerts. After seats are selected and put into a cart, they are typically taken out of inventory for a brief period to give the customer time to complete the purchase and put back into inventory if the purchase is not completed.

While we generally use WooCommerce for our eCommerce projects, we've struggled with this stock management issue and came upon this issue thread. For this project, and as noted above, WP eCommerce handles stock in a way that meets our requirements with no modification. Unless WooCommerce has an option to handle stock management in a similar manner by the end of this month, we'll have to change gears and do this project with WP eCommerce. A shame because we've identified several commercial extensions we need for this project. If WooThemes or one of its extension development partners can develop something quickly, we would really appreciate it so we don't have to move to WP eCommerce. We would even consider providing a reasonable level of sponsorship in exchange for a lifetime license. WisdmLabs is working on an extension (http://wisdmlabs.com/empty-cart-timer-woocommerce-plugin/) that appears to meet our needs, but they've missed their release date at least twice.

@jamesgol
Copy link
Contributor

After reading about this issue it sounded like a fun project to tackle so I threw this code together into a free plugin.

https://github.com/jamesgol/woocommerce-cart-stock-reducer

Send me any feedback direct or via github.

@stevednm
Copy link

@jamesgol -- Thank you so much for doing this, James. I can't test your extension right now because I injured my left shoulder a few days ago and closed my ecommerce site until it heals. It's painful even to type this little bit of text. I will certainly test it when I reopen my website though, and I hope that others will test it and comment on it in the meantime.

Would you mind describing how your extension works, and how it interacts with WooCommerce's current default sale-based (rather than cart-based) stock management? I would very much like to know how the extension works even though I can't test it right now. Thank you very much.

@jamesgol
Copy link
Contributor

@stevednm Hope your shoulder heals up soon!

I only have a few minutes right now, but basically my plugin doesn't actually adjust the inventory count in the database at all. It hooks into a few places and makes the code think the inventory count is adjusted based on a count of items in all of the carts for items that are set as managed stock.

There are currently 2 configurable settings from the admin interface:

  • Minimum Stock to Skip Check: If there are greater than this many items in inventory then it doesn't go searching the carts to update the quantity
  • Pending Order Text: Text to be displayed instead of 'Out of Stock' when there are items in inventory but locked in someones cart

Still need to get variable products working and I've got a cool cart item expiration in progress, but everything else is very functional now. Would love some more testers, feedback, and suggestions.

It's also available from wordpress.org now: https://wordpress.org/plugins/woocommerce-cart-stock-reducer/

@bluelotusworks
Copy link

@stevednm get well soon. This is an inspired solution! Adding the settings to the WooCommerce settings integration tab is a smart touch. We tested on the project that drove our interest in this issue last night. It's rock solid on simple product pages with no conflicts on a project with 30+ custom functions and 60+ plugins (yes they're all needed but we'll be converting small ones to custom functions). We need to test Add to Cart on category pages tonight. As @jamesgol said its not ready for variable products because this is what happens:

If you go to a product page and any variable is pending in another cart, you get the pending order text message and purchase is blocked for all variables. And, if its initially available, but its added to another cart first, you get the pending order text message and the product is still added to the cart, so it becomes a race to the checkout line...if inventory is only one it can still only be purchased once. After checkout, all variables with inventory are available again since the cart session is cleared.

Also, we tested with W3 Total Cache page caching off (we don't use database caching, no need with an SSD). We need to test further, but we think product page and category exclusions are probably a best practice for affected products if page and/or database caching are used.

@dafro2
Copy link

dafro2 commented Feb 20, 2015

once this is ready for variable products it is exactly what we all needed!
Hope you can finish it soon, i will implement it then directly!

@stevednm
Copy link

@jamesgol -- James, because almost all of my products are variable products (I run an exotic plants nursery in which each plant is sold in 4 different sizes or maturity levels), I won't be able to adequately test the plugin right now, but am eager to test it when/if you are able to get it working with variable products, and will be happy to help sponsor (donate money toward) this development. Thank you so much for working on this issue.

@stevednm
Copy link

@aj-adl - Alex wrote: "I can understand the valid use case for this, but (in my personal, relatively worthless opinion) I don't think this should be in core. A lot of edge cases ..."


Alex, I'm not sure I understand. If you don't mind, could you describe one of those edge cases in which sale-based stock management (as woocommerce currently defaults to) is preferable rather than cart based management (or a combination of the two, such as James's plugin)?

Thank you.

@jamesgol
Copy link
Contributor

@stevednm / @dafro2: The variable product code is in and also cart expiration. I pushed out version 0.5 to github and wordpress.org yesterday. There are a couple of minor issues that @bluelotusworks helped uncover that I'll be fixing up today.

@dafro2
Copy link

dafro2 commented Feb 20, 2015

the only argument against this function would be that once 2 People are trying to buy the same last Piece in stock and one of These 2 potential buyers blocks the last Piece with adding it to his/her cart the other potential buyer thinks it is sold out and will leave the shop. But if you actually manage to sell out that amount and have a few last pieces in stock + have 2 customers fighting over one piece you should not worry about the last piece because others will come and buy the returning product again. If we would imagine that 10 potential customers block 10 last pieces in qty and do not buy it in the end,it is a different matter but even then one could think about a cart timer which is very common on lots of pages and also myshopify works the same way. I would prefer a cart timer of 5 minutes. Awesome would be if this cart timer is refreshing everytime the one having the Piece in cart loads a new page from the same shop. If he leaves or has >5min the product in his cart without refreshing the page or going to a subpage of the shop it should time out, and the item should return to stock again.

i dont know why one could complain about this function if it would be optional???
be happy that someone took the time to put down a code and help us out with this matter.

@bluelotusworks
Copy link

Version 0.5 on the WordPress repository is pretty rock solid, including the cart expiration. Last night, I identified four UX issues with pending order text behavior that are outlined at jamesgol/woocommerce-cart-stock-reducer#5. Those issues may be edge cases for some web sites, but they're part of "normal" expected user behavior for others. For now, I addressed the issue by changing the default pending order text to "This item is no longer available for purchase at this time due to pending orders. Pending orders include items added to your cart."

For everyone's benefit, I've added a few screenshots to this comment: the integration settings, a product page after an item is added to a cart, a product page when stock isn't available due to a pending order and an expired cart message. I've got to take time off testing until Sunday, but will be back at it then, including checking out the new cart timer commit made to the repository.

@jamesgol you're welcome to use these to cover the screenshot to do. Once again, many thanks for your efforts!

wc-csr-integration
wc-csr-add-to-cart
wc-csr-no-inventory-pending-orders
wc-csr-expired-cart

@mikejolley
Copy link
Member

@BFTrick what are you thoughts on this item now, given there is a plugin outside of core? I will move out of the milestone until decided.

@mikejolley mikejolley removed this from the 2.4 (name undecided) milestone Mar 24, 2015
@BFTrick
Copy link
Contributor

BFTrick commented Mar 24, 2015

Well first I'm super happy @jamesgol wrote this plugin. Super helpful for people who need this functionality.

I think this is an edge case to start with. We'd had a support nightmare having to deal with two different inventory systems and all of the store owners who wouldn't understand the differences / finer points.

Luckily this plugin solves the issue so I don't think we need to do anything in core. I vote close.

@bluelotusworks
Copy link

I think this is much less of an edge case (i.e., a much bigger deal) than you think and a brilliant solution that doesn't affect WooCommerce core functionality as it currently exists. IMHO, it has applicability for any WooCommerce site that deals with limited quantity products and it isn't hard to use. As much as I'd like to see you give @jamesgol some kudos by integrating this into core, we all have our priorities. Since this functionality was important enough to include in a milestone, perhaps you could assign someone to help James with code maintenance, maybe even include it in the WooCommerce extensions listed at WooThemes.

FYI, I just gave it a thorough stress test in production with the launch of holdmyshowspace.com yesterday and it works flawlessly. Based on testing and user input, I've got a couple of simple UX changes to suggest as soon as I get a few spare moments...hopefully tonight.

@jamesgol, assuming you're following, thanks again!

@michaelmcmillan
Copy link
Author

Not implementing this in core is just lazy.

tir. 24. mar. 2015, 23.10 skrev BlueLotusWorks (Bob De Young, CEO) <
notifications@github.com>:

I think this is much less of an edge case (i.e., a much bigger deal) than
you think and a brilliant solution that doesn't affect WooCommerce core
functionality as it currently exists. IMHO, it has applicability for any
WooCommerce site that deals with limited quantity products and it isn't
hard to use. As much as I'd like to see you give @jamesgol
https://github.com/jamesgol some kudos by integrating this into core,
we all have our priorities. Since this functionality was important enough
to include in a milestone, perhaps you could assign someone to help James
with code maintenance, maybe even include it in the WooCommerce extensions
listed at WooThemes.

FYI, I just gave it a thorough stress test in production with the launch
of holdmyshowspace.com yesterday and it works flawlessly. Based on
testing and user input, I've got a couple of simple UX changes to suggest
as soon as I get a few spare moments...hopefully tonight.

@jamesgol https://github.com/jamesgol, assuming you're following,
thanks again!


Reply to this email directly or view it on GitHub
#5966 (comment)
.

@BFTrick
Copy link
Contributor

BFTrick commented Mar 24, 2015

I just processed a survey from 1,700+ users (including store owners, freelancers, and developers from larger firms) last week and not a single one mentioned this as a problem. Based on that data alone I can say that it is an edge case.

In fact only 10 of them even mentioned the word inventory and it wasn't related to this issue. I'd say our inventory system is pretty solid for right now.

The vocal minority does not outweigh the voice of 1,700+ users. When our users start complaining about this we'll be happy to reinvestigate.

@BFTrick BFTrick closed this as completed Mar 24, 2015
@bluelotusworks
Copy link

Patrick, please don't view this as challenging the research per se. However, I know I didn't get asked to participate. And, if you didn't ask a pointed question regarding the value of a cart timer or alternate inventory reduction method, you can't rely on the survey to justify that it's not an issue. Users generally accept what's in the box until you show them what's outside of it.

@woocommerce woocommerce locked and limited conversation to collaborators Mar 25, 2015
@mikejolley
Copy link
Member

Even though this is out of the milestone, I will place it on our roadmap board to keep a record and to get votes. We can revisit in the future if needed. https://trello.com/c/VGIXzv5s/65-cart-stock-reducer

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
needs: author feedback The issue/PR needs a response from any of the parties involved in the issue.
Projects
None yet
Development

No branches or pull requests