Nowadays, most retailers have at least one brick-and-mortar store and an eCommerce website. These are two popular sales channels. The challenge here is creating a better inventory integration between these channels.
Benefits of Inventory Allocation using Magento MSI
What is Magento MSI and how does it benefit retailers?
Magento MSI (Multi-Source Inventory) is a new inventory management solution that provides two different layers of stock:
- Source stock, the stock that is physically in a source.
- Aggregate stock, the virtual stock of what can be sold in a sales channel.
Basically, merchants can set up a new source and new stock which is linked to both their eCommerce store and physical store. That means all inventory on hand will be allocated to the online and in-store channels. So when there is a new sales order on a channel, the inventory will be updated and synced to others. We recommend using POS software integrated into Magento. It’s better if that is a Magento native solution like Magestore Inventory system.
Shared-inventory for both online & in-store channels
Limit inventory for online sales channel
In some cases, merchants want to limit the inventory that will be allocated for online sales channels because they prefer in-store sales. The benefit here is that allows to save inventory for the higher priority channel from which most of the sales are generated from. Therefore, merchants don’t need to stock too many items in the warehouse. It really helps them to reduce inventory costs.
How inventory allocation works in Magento MSI
For example, there are 30 items of Neck Cotton T-shirts in Location A.
- 30 in stock
- 10 will be allocated for both online channel & in-store
- 20 will be allocated only for in-store
That means, you can not sell more than 10 items of the T-shirt via the website, and able to sell up to 30 items to in-store customers. Let’s see some situations happen below.
”Case 1: Customers bought 3 items through the website. The inventory will be updated.
27 in stock
7 for both of online channel & in-store
20 for in-store only
”Case 2: Customers bought 5 items at the physical store.
22 in stock
7 for both of online channel & in-store
15 for in-store only
”Case 3: Customers bought 7 items on the website.
15 in stock
No available item in the website (out-of-stock)
15 for in-store only
How to implement this solution with Magento MSI & Magestore POS
Based on the requirements of merchants and the power of Magento MSI, we suggest setting up sources and stocks as below:
- Source A1 contains 20 items, links to stock POS-A
- Source A2 contains 10 items, links to both stock Web-A & POS-A
- Stock POS-A will be used for in-store (POS A)
- Stock Web-A used for the online channel
Divide inventory of a location into two different sources.
Sold 3 items through the website.
Sold 22 items to in-store customers
To complete this setup, you can follow the easy steps below:
Step 1. Create Source A1 and Source A2 in Magento Backend.
Magento sources in the backend
Step 2. Setup Stock Web-A which links to Source A2 and Magento website.
Stock Web-A links to the website
Step 3. Setup Stock POS-A which link to both of sources A1 & A2.
Stock POS-A links to both of Source A1 & A2
Step 4. Link POS A to stock POS-A.
POS A links to Stock POS-A
Book a live demo for this solution
If you would like to explore more detail on the solution for omnichannel inventory allocation in the brick-n-mortar store, we are more than happy to provide a free live demo.
Join the discussion 4 Comments
This is a great article. However, I have a question you may be able to help me with. In your example with Sources A1 and A2 where where A2 is linked to both POS-A and WEB-A stocks, what happens when there is one last item of product P in A2 and an order is placed online for it? This is reserved in WEB-A stock, but is it still available in stock POS-A? So can both POS_A and WEB-A reserve the last item of P or does magento somehow handle this?
Hi Michael, Magento has 2 ways to calculate how much stock you have: Quantity, and Salable Qty. Quantity is the physical stock you actually have in your source, while Salable qty is the quantity you can sell on your website and POS.
Once the order is placed on the website, the last item of product P will be deducted from the Salable quantity of Source A2. The item will be displayed as out-of-stock on POS-A because it’s been reserved to fulfill the website order. In-store staff won’t be able to sell it.
After that, once the item has been shipped for the website order, the Quantity of Source A2 will decrease as well.
Hope that answers your question!
Thank you very much for your reply. If reservations are on the source level rather than then stock level as you suggest then you are correct – no issue in this example.
However, I am not sure how magento can know which source a reservation is for when someone orders an item that is available in 2 sources. So if STOCK A has 2 sources (SOURCE A1 and SOURCE A2) and our product P1 is available in both A1 and A2, which salable quantity is reduced when an order is placed? Is there somewhere we can setup the order of sources so that magento starts reserving from one source and once that is out of stock it starts reserving from the second?
I really appreciate your time. I am new to magento advanced inventory and all the documentation I can find online is not detailed enough for me to figure out the best way to setup everything.
Hi Michael, Magento currently doesn’t allow reservation on the Source level. When the customer completes an order online, the system will only deduct from the virtual salable quantity of Stock A, which is the aggregated quantity of Source A1 and A2. Quantity from Source A1 will only decrease when you create shipment and choose to ship from Source A1. The salable quantity of stock is there to ensure you won’t oversell, but it doesn’t handle reservation of physical items in your inventory.
I hope that answers your question!