Reserved Stock Pro for WooCommerce

Our Reserved Stock Pro plugin for WooCommerce allows your store to reduce the stock quantity of products when they’re added to the cart. Stock controlled products will automatically be removed from the cart after a set amount of time and the stock will be restored to the product.
Screenshot of stock redcuded in the WooCommerce cart

This plugin is for those WooCommerce stores that operate with small amounts of stock and high demand.

Why do I need Reserved Stock Pro

Reducing product stock when a product is added to the cart will ensure that customers don’t end up disappointed. By default, WooCommerce will only reduce stock once an order is created. The problem is that multiple customers could have the same product in their cart. Customers won’t be able to purchase the product if it goes out of stock while they’re browsing the store or finishing the checkout process. Learn more about how WooCommerce handles stock reservations.

Show customers how popular your products are! When customers can see how many of your products are currently reserved, they know they better get theirs quickly so they don’t miss out!

Let customers know when popular products may be coming back into stock: If one product’s stock is completely reserved in other carts, customers might want to hang around to try to reserve one as soon as it expires or is removed from another customer’s cart.

Our Solution

Introduction to RSP

Our solution is controlling the stock quantity from the cart. Once a customer adds a product with stock to their cart, the available product quantity will decrease and be marked as reserved. We’ve also included product expiry times, notifications, and made sure stock levels update to match product quantity changes in cart.

The features of Reserved Stock Pro include:

  • Stock decreases when products are added to the cart.
  • Stock increases when products are removed from the cart.
  • Stock levels update to match cart changes.
  • Set product expiry time.
  • Updated expiry times when product quantity is changed in the cart.
  • Stock is removed from the cart after your set time, whether customers are on the site or not.
  • Customizable add to cart notice on the product page.
  • Customizable automatically removed from cart notification.
  • A customizable countdown for reservations.

Features in More Detail

Stock decreases when products are added to cart:

WooCommerce Stock recuded in cart
Stock is reduced when product is added to cart.

When a customer adds a product to their cart, the stock numbers are decreased on the product page and instead marked as reserved.

Example: Product A has 10 in stock. A customer adds 4 x Product A to their cart. The stock levels on Product A will now show 6 in stock.

Stock increases when products are removed from cart:

Stock is restored when product is removed from cart
Stock is restored when product is removed from cart.

When a customer removes a product from their cart, its stock numbers are increased on the product page.

Example: You have 6 Product A in stock and 4 Product A held in a customer’s cart. The customer removes the 4 Product As from their cart. The stock levels of Product A will now show 10 in stock.

Stock levels update to match cart changes:

When a customer updates the product quantity in their cart, the stock quantity is also updated on the product page.

Example: Product A has 6 in stock and 4 are in a customer’s cart. The customer decides to add 4 more of Product A to their cart. Now the customer has 8 x Product A in their cart. Product A shows 2 left in stock.

Set product expiry time:

Set the amount of time you will allow customers to reserve the product in their cart. After this time, the product will be removed from their cart and released back into stock for other customers.

Screenshot of product expiry date in cart.

Example: You want customers to only hold products in cart for 60 minutes. A customer adds 5 x Product A into their cart. Five product As will be reserved for 60 minutes (you can change this amount of time to whatever you like). At the end of 60 minutes, the 5 Product As will be removed from the customer’s cart and Product A’s stock numbers will increase by 5.

If the customer goes through checkout and finishes their order before 60 minutes, then the product quantity stays the same. The product stock has already been decreased by 5 when they added it to the cart.

Updated expiry times when product quantity is changed in cart:

If customers decide to add more of a certain product from their cart, the expiry time will also refresh in their cart. The expiry time does not reset when customers decrease the quantity of a product in their cart.

It’s important to give customers extra time when shopping on your site. Let them add as many products as they like without time pressure.

Stock expires from the cart whether customers are on the site or not:

Stock reservations are tracked in the database using a custom database table. This means that stock will expire correctly whether customers are actively on the site or not. Stock will be restored and available for the next customer automatically.

Customizable add to cart notice on product page:

Screeenshot of Cart Control settings
Screenshot of the settings page

Easily add a notification message that will be shown on each product page telling customers that the product has limited stock and how long they can hold a product in cart before it expires. The notification message is fully customizable via the settings.

Note: This is one message that applies to all products. Developer filters are available for further customization.

Customizable automatically removed from cart notification:

Customers are notified using the WooCommerce notifications when a product under stock control has been automatically removed from their cart. This notification won’t be shown to customers who remove the product themselves. You can customize this message via the settings.

Note: This is one message that applies to all products when expired from cart. Developer filters are available for further customization.

Keep customers informed – Sticky Countdown

Customers need to know what is going on, that way nothing is unexpected and they will continue to have a great shopping experience. This is where the built-in countdown for reservations come in. Your customers will be able to see exactly how long they have to purchase their products. The countdown will automatically display at the bottom of each page while the customer has reserved stock in their cart. There are no unexpected surprises.

The countdown automatically refreshes and reflects any changes to the customer’s cart.

Sticky countdown for the reservation.

Made With Performance in Mind

Reserved Stock Pro uses a custom database table (rsp_reserved_stock.) Using a custom database table allows for the best performance without making any changes to your data or products.

Product reservations are made for each guest customer or signed in customer. A customer visits your store and adds a few products to their cart, then those are products are reserved using their guest session ID (automatically generated by WooCommerce). If the customer logs in to their account, then their “guest” reservations will automatically be transferred to their customer id.

Caching Support

Product pages are normally cached and therefore can show the incorrect stock quantity. Reserved Stock Pro supports a few caching plugins out of the box. The product page cache will automatically be cleared when the reserved stock level changes.

  • LiteSpeed Cache
  • WP Rocket Cache

Requirements

This plugin requires products to have manage stock enabled in the product settings. Reservations are only applied to stock managed products and will not affect non-stock managed products. Customers can have both normal and stock managed products in their cart.

Bookable products using WooCommerce Bookings are not affected. WC Boookings has their own management “in-cart” system. If you would like to change the WooCommerce Bookings “in-cart” expiry time, then have a look at our Clear Cart & Sessions plugin.

FAQs

What products types are supported?

RSP supports reserving stock for the following product types:

  • Simple Products
  • Variation Products

Would you like another product type to supported? Let us know and we’ll add it to the wishlist.

What happens if customers abandon their cart?

The timer starts as soon as a customer adds a product to their cart or changes the quantity in their cart. The product stock will be removed from the cart at your set expiry time, even if the customer leaves your site.

For example: you allow customers to hold products in a cart for 60 minutes. If a customer adds 5 x Product A to cart, they will have 60 minutes to complete the purchase. The customer then abandons the cart 20 minutes later, which means the 5 Product As will be reserved for the remaining 40 minutes. After the set expiry time, the stock levels will increase by 5 on Product A’s page.

How can I customize RSP? Do you have developer hooks?

Yes, we have added documentation with hooks and code snippets to help you get started. See the documentation here https://puri.io/docs/reserved-stock-pro/hooks/

Upgrading from Cart & Stock Control?

Read this upgrade information.

Feature Requests

Got a feature request or an awesome idea? Let us know via support!

Add to Cart

Reviews

  • Highly Recommended.

    Used other plugins for managing stock reduction, but they always caused more problems than the solved. Reserved Stock Pro is the answer we have been looking for. Its doesnt slow down your site, is fully customisable, and is constantly improving. Not to mention the support is outstanding!

  • Incredible plugin & support

    We were using an outdated, poor performing ‘stock reducer’ plugin. This one has been a great replacement. Much better performance and reliability. Their support is very good, they were able to quickly answer all my questions!

  • Write a Review