Final Checkout Stock Check
As we are caching the stock value it is important we do not make a sale based on an out of date stock position. As the user reaches their final checkout step, the Sage stock database is queried one final time to get the exact stock position. If there is insufficient stock to fulfil the order, either:
the user can be redirected to the basket to be notified of the status of the order,
the user can be redirected to the basket, the quantity reduced to match stock available and the customer notified,
or if the product is on backorder, the order will continue to be placed.
Cached Stock Positions
If we had to get 40 or 50 stock positions from your office every time we rendered a single page the website would run very slowly. So we use a cascade of memory and database caches to keep the stock position. By default the cache value expires every 4 hours and the value is also updated when a sale is made through the website.
The cache time-out is configurable. We also provide cache control features so you can void the cache for a single stock code or all product if you need to.
Allow Back Order
You may have items that you can quickly obtain for your customer when you are out of stock or they may be items that you never stock. In this case you can mark the item as ‘Back Order’. This will cause the site to show that product as ‘In Stock’ or show a more accurate message such as ‘Back Order’ or ‘Order for delivery in 3 days’ depending on your requirements.
If yours is the type of business where everything is available on back order then the site can be configured to do this for all products saving you the effort of maintaining the back order status individually.
Bill of Materials
Shopfront supports the Sage system Bill of Materials (BOM). When a stock query is made for a BOM item the stock of the made up item is checked first and then the BOM is used to check how much can be made up from stock. BOMs should be used when this is actually the way you do business. If you need to sell groups of items then you can use Shopfront bundles instead.
Configurable Out and Low Stock Thresholds
The way you display stock on the web site is an important factor in your relationship with your customers. You may want to show ‘out of stock’ messages to prevent disappointment when orders cannot be fulfilled in a timely manner. Likewise you may wish to show ‘low stock’ messages to encourage purchasing of attractive items. You will know how accurate your stock position is in your warehouse so the threshold that ‘out of stock’ and ‘low stock’ can be configured for the site. The default values are 0 for ‘out of stock’ and ‘low stock’ is not used.
It may be that the stock accuracy is wildly different between various categories of product in your warehouse. It may be that you mostly sell expensive electric pumps and the stock position is 100% accurate so zero is the correct threshold. Alongside the pumps you sell nuts and bolts stored in big bins and as they are also used internally the stock position is only correct to the nearest 100. In this case you can set the ‘out of stock’ threshold individually on this product and it will override the site wide setting.
Due in Date from Purchase Orders
If you run an accurate purchase order system and you keep expected delivery dates up to date then when an item is out of stock a due in date can be displayed. This date can by ‘slugged’ by a fixed number of days to allow for late delivery, unpacking and other factors which make the shipping date different from the delivery date.
The due in date can also be done in a bespoke manner such as using supplier lead time where there is no extant purchase order.