14 October 2016
With the release of Magento 2.3, Magento 2 Multi Source Inventory (MSI) was introduced as a core solution for inventory management.
MSI is designed to help merchants improve their operational workflows by working with inventory across multiple sources using Magento's admin.
Merchants using Multi-Source Inventory can now:
Until the release of Magento 2.3, it was a tough task to manage multi-source inventory from a single website. But now Magento 2.3 can manage inventory with multi channels. A Magento website selling items in multiple countries can have a certain inventory of specific products in different sources or locations. Inventory management helps you expand your website allowing you to update quantities of stock from various sources.
Let’s take a look at the core concepts of Magento 2's Multi Source Inventory and highlight some new terms and features introduced with the improvement.
1. Sources
Sources are the physical locations where product inventory is managed and shipped for order fulfillment, or where services are available. These locations can include warehouses, bricks-and-mortar stores, distribution centres, and drop shippers. Magento leverages the quantities and saleable quantities of stock and manages inventory amounts automatically for managed products and orders. If you have one source, you are considered in Single Source mode. If you have multiple sources, you are considered in Multi Source mode.
2. Stocks
Stocks represent a virtual, aggregated inventory of products available for sale on your sales channels (currently these are websites). Each stock maps your sales channels with sources for available inventories and saleable quantities. Depending on your site configuration, the stock may be assigned to one or more sales channels and sources.
Sales Channels represent entities selling your inventory, including websites, store views, and so on. Sales Channels can only be associated to one stock. Each sales channel can only have a single stock assigned to it, and a single stock can be assigned to multiple websites.
You start with a Default Stock assigned with the Default Source and your website, best used by Single Source merchants. Only the Default Source can be assigned to this stock.
Multi Source merchants create custom stocks for custom sources and websites as needed.
3. Product Quantities
Quantity is the number of products in your active inventory available for purchase. The quantity of products increases and decreases when you complete shipments or adjust inventory. Adding products to a cart will not affect this amount. The Saleable Quantity tracks the availability of the product for a sales channel and also uses this value for determining available stock for purchase. Depending on the number of sources set up, you'll see and manage product quantity for one of the following:
4. Source Selection Algorithm
Whilst the Magento 2 Multi Source Inventory module changes saleable quantity when a new order is placed and paid, the whole deal runs during the stage of a shipment creation. At this moment, the Magento 2 MSI module uses the source selection algorithm.
The search selection algorithm uses data about customers, products, addresses, stock, sources, and order’s delivery location to help the merchant determine which source an order can be shipped most efficiently from, with the highest product margin.
For instance, if two suppliers offer the same product, the algorithm selects one that offers the highest product margin. As well as this, a customer’s location can be used to determine the nearest physical location of the selected product. Where the ordered quantity is larger than the actual stock in a specified warehouse – then another warehouse can be used.
Note that where an order requires stock for an item from multiple sources in order for it to be fulfilled, if the quantity required from the multiple sources can't be achieved, the shipment is not created.
5. Inventory Configurations
Every product, source, and stock includes a number of options to configure for your store at the global, source, stock, and product level. The following are important options to understand for Inventory Management:
Inventory Management supports partial and full invoicing, payments, shipping, and cancellations per order. As you manage an order through processing, invoicing, shipment, and potentially refunds, Magento automatically enters or changes reservations to update the saleable quantity for a stock (or sales channel) and the on-hand inventory quantity per source. You do not have to actively access or enter reservations. Completing actions to fulfil, cancel, or refund an order does it for you.
Magento 2 Multi Source Inventory is a great improvement along with Magento 2.3 extensions to manage your inventory across multiple locations.