Puri.io Team working by the pool

How to prevent negative stock in WooCommerce

WooCommerce has a track record of leaving store owners with negative inventory for their products. Negative stock can happen when multiple people try to purchase the same product at the exact same time (also known as race conditions). I’ll go over a few ways to help fix and prevent negative stock numbers in WooCommerce.

Firstly turn off backorders.

The backorder feature allows your product to be purchased when it’s out of stock. Make sure the backorder setting on the individual product is set to “do not allow”.

Allow products to be reserved per customer.

We’ve been developing our Reserved Stock Pro plugin to allow customers to reserve products for a limited time in their cart. Once all the product stock is reserved, no other customers can add the same product to their cart.

How does it prevent negative stock?

Inventory levels in WooCommerce are only reduced when an order is marked as processing, on-hold, or completed. Therefore, customers could have a false hope of being able to purchase a product. 100 people could be trying to checkout at the same time while there are only 5 items in stock. Under certain circumstances, more than 5 orders could be made at the same time. The rest of the customers will be left disappointed with an error message on the checkout.

Our plugin gives visual feedback to customers and validates every cart action to make sure there’s enough stock for the customer that’s trying to add the product cart. Once a customer has added the product to their cart, they can freely checkout within a limited amount of time. They don’t have to rush because the product stock has been reserved just for them.

This means that only the customers that have reserved the product are able to checkout. This prevents an overload of people going through the checkout when there’s not enough stock.

Limit product quantity per customer order

This problem is similar to the above with one difference. Maybe you don’t have a huge amount of customers rushing to the checkout. Instead, you have scenarios where customers tend to buy the bulk of your product at the same time. In that case, I’d also recommend our Reserved Stock Pro plugin.

However, if you are just looking to limit the number of product quantities per order, then that could also be a solution. You can use our Minimum and Maximum Quantities plugin, it’s fully compatible with Reserved Stock Pro as well.

Try it out

We do offer a 14-day refund guarantee on our plugins. Give them a go and we know if they don’t solve your negative stock issues!

Default image
I write the code and make everything work. Got a question? Write it below 😊
Articles: 17