User Tools

Site Tools



Guide for Advanced MSI for Magento 2

Distribute your inventory among numerous warehouses. Level up your stock management and reduce shipping costs with a smart source selection algorithm.

  • Add an unlimited number of sources
  • Optimize shipping costs with a smart algorithm
  • Manage stock right from the product grid
  • Configure custom shipping methods and rates
  • Keep your store managers timely notified
Explore our internal Knowledge Base to gain even more valuable insights and uncover answers to popular questions about the configuration and features of the Magento 2 Advanced MSI extension.


The extension settings page can be found in Stores → Configuration → Amasty Extensions → Advanced MSI.

General Settings

Enable Module - set to Yes to apply the extension.

Notice, that the extension works on Magento 2.3 version and higher. Contact us, if your Magento version is 2.2 or lower.

Minimal Delivery Cost Algorithm Settings

The extension allows you to customize the algorithm of a warehouse selection. Here you can define the automatic source selection algorithm that will be used when one product is assigned to multiple sources.

Default Source Selection Algorithm - the extension offers you 4 Source Selection Algorithms:

  • ‘Source priority’ algorithm – chooses an optimal warehouse according to its priority in the stock assignment settings block.
  • ‘Product Stock Availability by Amasty’ algorithm – selects an optimal store by the availability of goods. The algorithm chooses the source that has all order items in stock. This helps avoid breaking the order into several shipments from different sources, which makes shipment faster and less pricey.
  • ‘Product Stock Distance by Amasty’ algorithm – a native-like algorithm, that picks the nearest warehouse from a customer and helps you save up on transportation costs.
  • ‘Combined Source Selection Algorithm’ – it is a custom algorithm, that uses 3 criteria above one by one until the ‘perfect match’ is found.
The selected algorithm will be immediately applied to the ordered items on the shipment creation page.

Criteria Prioritization for Combined Algorithm - set the priority of each criterion for ‘Combined Source Selection Algorithm’ via drag and drop.

How it works:

The algorithm will apply the upper criteria first. If the result consists of several sources that fit the condition of the first criteria, the list of these several warehouses will be transferred to the next lower criteria for processing. The sources that don't fit the first criteria will not be processed by the second one. But they will be available on the shipment creation page with lower priority.

Distance to warehouse round off, km - set the distance value that will be used in the Amasty ‘Combined Source Selection Algorithm’. If the distance between the closest and other warehouses is less than the value, the warehouses are considered to be equally distant from the customer.

Automatic Source Selection & Shipping Cost Calculating

Enable Automatic Source Selection - set to Yes to activate the chosen algorithm as soon as a customer places an order. The necessary source for shipment will be selected automatically and displayed to a customer with a shipping cost information. This option allows using shipping services (like UPS, USPS, FedEx, DHL) with Multi-Source Inventory. The origin sources will be chosen during order creation, and a customer will be charged for the shipping costs immediately on the checkout page. Shipping costs will be calculated for each source (warehouse) depending on its address and then summarized.

Please note, that Shipping(s) for an order will be created immediately after a click on 'Ship' button on the order details page in the admin area.
If this option is enabled, you won’t be able to change items’ quantity in the admin panel. But you will see all the information about the order and its shipment in the Order View section.

Manage Sources

Note that sources are your warehouses. To let the extension work you need to create at least 2 sources.

Sources are the physical locations where product inventory is managed and shipped for order fulfillment. These locations can include warehouses, brick-and-mortar stores, distribution centers, and drop shippers.

To find the list of all sources, click Manage Sources menu tab in the admin panel. You can easily track your sources by code, name, and status. The extension allows you to Edit already existing sources and Add a new source right from the admin panel.

Mind that sources can’t be deleted to prevent order data loss. You can only disable sources and change the related info, including location and contacts. The code of the source can’t be changed.

Add New Source

To create a source, press the ‘Add New Source’ button and fill in general information about a warehouse.

Pay attention to the source code field. If you create a source with the code that already exists, the Magento will override the old source with a new one. It happens as it is impossible to delete sources from Magento. Find out more about the default algorithm here.

Get email notifications when an item should be shipped from a particular warehouse and on an item low stock situation. All you need to do is to specify an appropriate email in the fields Low Stock Notification and Shipment Email Notification.

For admin convenience, Source name and Source Address will be displayed in the header of Low Stock Email notification.

Then fill in warehouse contact information and address data.

Now you can assign products to a source (warehouse) and adjust quantity. Click Add Products to Source button to add new products. Edit product quantity right from the grid. You may choose multiple products and change their status in bulk. Use filters to quickly pick out the needed items. Here you can also specify the low stock quantity: you'll automatically get a notification when the product quantity riches this number.

Adjust shipping methods settings for the source. You may fill in a fixed amount, or set to use Shipping Provider Rate.

Note, that if you use the fixed cost for the shipping method, all predefined shipping calculations for this source will be overridden with this fixed amount.

Save the source.

Assign Sources to Stocks

Stocks enable store owners to unite several sources and then link them to sales channels and salable quantities. Technically, stocks represent a virtual, aggregated inventory of products available for sale to your sales channels (currently these are websites). Each stock maps your sales channels with sources for available inventories and salable quantities. Depending on your site configuration, the stock may be assigned to one or more sales channels and sources. Through the stock, you can modify the prioritization of sources used when shipping orders and by the Source Selection Algorithm.

Keep in mind, that when you create a new stock, it can be saved without the assigned source, and the page will be redirected to the “New Stock” page with empty form. Find out more how the default Magento algorithm works here.

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. You can easily do it with the help of our Magento 2 MSI extension.

To assign sources to stocks, please go to Manage Stocks menu.

Then choose a necessary stock and press the Edit button.

Name - specify the name for your stock.

Sales Channels - specify the sales channel. Sales channels represent entities selling your inventory, including websites and store views. Each sales channel can be assigned only to a single stock, and a single stock can be assigned to multiple websites. After you specify the Sales Channel, any previous assignation would be removed for each selected Sales Channel. Use Ctrl+Click to check several values or uncheck value. All unassigned sales channels will be assigned to the Default Stock.

In the settings block find ‘Sources’ tab and assign sources to the stock. You can change sources priority via drag and drop. The priority is used by ‘Source priority’ algorithm.

Assign Sources to Products

It is also possible to assign items to a source (warehouse) and manage the stock from the product grid. To do this, please go to Catalog → Products.

Click Edit to adjust the stock quantity for each source in the product settings.

Hit the button Edit Stock on the grid to quickly adjust the product stock for each warehouse in a convenient pop-up window.

You can also easily edit products in bulk right from the grid. Just select the products and specify the Action you need: Delete, Change Status, Assign Inventory Source, Unassign Inventory Source, Transfer Inventory To Source.

Create Shipments in One Click

Let’s imagine you’ve already configured the extension and got the first order. It’s time to ship it. Go to Sales → Orders. Then choose a necessary order and hit the View button.

Now, please click the Ship button to open a shipment creation page.

The module automatically chooses the default source selection algorithm, determines the optimal source and the number of products to be shipped.

If the automatic shipping cost calculation is enabled, the module will choose the necessary source while a customer creates an order. If this functionality is disabled, you can change the source selection algorithm right from this page and change the quantity to deduct from each source.

Press ‘Proceed to Shipment’ button and ship the order.

Import Data

With the extension, you can fill product quantities in a sample file and quickly import stocks for each source.

To do this go to System → Import. In the Entity Type choose ‘Stock Sources’, then download and fill in a sample file.

Decide whether you want to update, replace or delete data by configuring ‘Import Behavior’.

Set import configuration to stop import on any number of errors to prevent loading broken data or skip error entries.

Then choose a file to import (already filled in sample file) and press the ‘Check Data’ button.

Correct the mistakes and press the ‘Import’ button to import stock data.

Moreover you can export the distribution of goods in warehouses from Amasty Multi Warehouse Inventory and import it in MSI with no efforts.

Make sure that you don’t change a sample file structure and that a file isn’t more than 2M.

Export Data

To export needed stock data, please navigate to the System → Export tab.

Entity Type - choose Stock Sources.

Export File Format - CSV format is needed.

You may also exclude particular attribute values from the exporting if needed. In the Entity Attributes table tick the attribute columns you want to exclude and hit the Continue button.

On Nov 18, 2019, we've significantly updated the Multi Warehouse Inventory extension. You can easily migrate your data from the old version of MWI to the Advanced MSI extension or Updated MWI. Please follow the instructions below.

Export From Old MWI and Import to Magento Inventory Management / Updated MWI

Before to start the data migration, please make sure, that all-important fields in the MWI (warehouse info) are filled in correctly: Warehouse Name, Warehouse Code, Country, Postcode. The data export from the Multi Warehouse Inventory can be performed only via conventional export System → Export.

If you exported or imported only a part of warehouses and need to Export/Import the rest, please note, that source_codes may not match. In this case, the CSV file will not update your database but will add data to it.

To migrate all the data correctly, you'll need to take two steps:

  • Transfer the sources (warehouses)
  • Transfer the filling of the sources with products

Step 1: Transfer the sources

Please go to System → Export. Choose the entity type Amasty Warehouses (Sources) Export to export the sources.

  • Click the button Continue and get the CSV file with the data.
  • Go to System → Import and choose Amasty Warehouses (Sources) Import.

  • Add the downloaded file.
  • Click Check Data
  • Click Import

You may go to Stores → Sources and see the migrated sources, yet not linked to products.

Step 2: Transfer the filling of the sources with products

Please go to System → Export. Choose the entity type Amasty Items per Warehouses (Sources) Export to export the products and sources link data.

  • Click the button Continue and get the CSV file with the data.
  • Add the downloaded file.
  • Go to System → Import

  • Click Check Data
  • Click Import

If you go to the page of one of the products that were previously linked to the MWI warehouse, you'll see, that now it is linked to the MSI source, the name of which completely coincides with the name of the former one.

After the data migration is complete, please turn off your MWI to avoid the fatal error on the product grid. Also, please perform php bin/magento index:reindex.


* What’s the difference between the Advanced MSI and Multi Warehouse Inventory modules?

* Why is my Multi Warehouse Inventory module different from the one I see on the product page?

* How is the shipping rate calculated for orders involving several sources?

* Show more articles →

Find out how to install the Advanced MSI extension via Composer.
Rate the user guide
 stars  from 3 votes (Details)
magento_2/advanced_msi.txt · Last modified: 2023/05/18 13:17 by kkondrateva