It is important to remember that AspDotNetStorefront is an eCommerce platform and is not intended to be an inventory management solution. The software does not handle multiple warehouses, LIFO/FIFO, margins, or restocking.
Instead, AspDotNetStorefront's inventory management is intended for the shopper's benefit. It is designed to allow you, the administrator, to track the inventory on hand and place thoughtful messaging on your product pages, helping the shopper to feel reassured that items are in-stock and ready to ship.
To configure inventory control, choose Inventory Control from the Configuration menu.
This page is designed to act like a 'wizard' and present a collection of settings to you in a question and answer form. Some people prefer to edit configuration settings directly by choosing Settings from the Configuration menu. You should find the same results whether directly changing Settings or the wizard.
The page is divided into three groups. At the top are store-wide behaviors:
Hide products with less than this inventory level? For some businesses, an out of stock product is best 'hidden' until it comes back into stock (or until it is permanently unpublished). Other retailers like to showcase products, regardless of stock levels. Sometimes, the decision is based upon the cost of bringing traffic to the page - it is an unusual business that wants to pay for traffic to an unsaleable item. Notice that the value '-1' means 'always show products, regardless of inventory level. Notice too, the very deliberate wording ... if you set an inventory value of 0 with an intention of 'when I run out, hide the product' then the hiding will only kick in when you have LESS THAN ZERO in stock.
Redirect to 'page not found' if product is hidden? "Hidden" can either mean 'leave the page in place but show an 'out of stock' message' (for this to be true, set the value to NO. Alternatively, you can use this setting (set the value to YES) to replace the product page with a 'page not found' message. Remember that replacing pages with error 'page not found' pages is an SEO killer - only take this option if you don't expect ever to sell the product again.
Limit Cart to quantity on hand? (If you prefer to use settings, rather than this wizard page, the equivalent setting is "Inventory.LimitCartToQuantityOnHand"). This control allows/forbids shoppers to be able to purchase out-of-stock items. There are no 'rights or wrongs' here - it will be up to the administrator of the store to understand the business strategy. AspDotNetStorefront works to give you plenty of flexibility (coupled with strong messages so that the shopper can see what's on offer).
The next section is about labels for your in-stock and out-of-stock goods.
The middle section of the page helps you know which inventory messages will appear on your storefront pages.
Display in-stock/out-of-stock labels - this is the over-riding control. If you aren't accurately tracking stock levels, then you might choose NO. Otherwise, select YES for stock messaging to be turned on, store-wide. All the other choices in this section are controlled by this.
Out-of-stock label display threshold - this allows you to set a stock level beneath which your 'out of stock' messages will appear. For example, you might have chosen (at the top of the page) to hide products when less than 1 unit was left in stock, but you might also choose to put a message saying 'only a few left' when the out-of-stock label display threshold is '5'.
Next, you'll be asked about the wording of the messages on the product detail page (that's the page with the 'buy' button).
Store administrators will see an actual inventory count, shoppers will only see Yes/No in place of stock values.
The first question is just an 'on/off' question, followed by the labels.
Show in-stock / out-of-stock labels - Choose YES to show in-stock/out of stock messages. Choose NO to hide any stock messages.
Label text when product is in stock - The default is "In stock" but you can change it to a message that better suits your business needs.
Label text when product is below inventory threshold - The default is "Out of stock" but you can change it to a message that better suits your business needs.
Next, you'll be asked about the wording of the messages on the product listing pages (those are the pages - like the category pages - that show a grid/list of all the matching products).
The first question is just an 'on/off' question, followed by the labels.
Show in-stock / out-of-stock labels - Choose YES to show in-stock/out of stock messages. Choose NO to hide any stock messages.
Label text when product is in stock - The default is "In stock" but you can change it to a message that better suits your business needs.
Label text when product is below inventory threshold - The default is "Out of stock" but you can change it to a message that better suits your business needs.
Finally, you have some choices regarding stock position on your kit pages:
Many store owners choose NOT to map kit items to variants. Kit items will only be able to track inventory if they are mapped to variants. When this is true, then you can choose whether or not to alert your shoppers to the stock position.
Show 'out-of-stock' labels - Choose YES to show in-stock/out of stock messages. Choose NO to hide any stock messages.
Allow purchase, even when out-of-stock - This control allows/forbids shoppers to be able to purchase out-of-stock items.
'Out of stock but buy it anyway' label text - If you have elected to show the shopper that a kit item is out of stock, but have also selected YES for "allow purchase, even when out of stock", then you will need to choose the message you would like to display.
Inventory Tracking
The software deducts inventory when the order is captured, not when it's initially placed, so it is possible for shoppers to add items to the cart that will be out of stock when the current orders are processed. To keep inventory from going into negatives, the software will make checks at each stage of checkout and notify the shopper if an item has since become out of stock. Shoppers can then start adjust quantities and attempt to checkout again or add other items to the cart and start over. There is a small (milliseconds) window of time where two shoppers could check out at the same time and push an item into negative inventory, but the odds of that happening are very small.
Inventory is restored if an order is voided/refunded.