How to Disable MSI in Magento 2?

Multi-Source Inventory (MSI) is a great long-awaited feature that was implemented in Magento 2.3.0. It helps merchants to operate multiple inventory sources, keep proper track of the items in each stock, assign products to sources etc.

Yet, Magento 2 multi-source inventory has its own flaws. For instance, it may cause some inconsistencies with the backorders. Besides, if you run a small business and have only one inventory source, MSI may confuse you. 

Thus, you might need to know how to disable MSI in Magento 2. And this is exactly what you'll learn today.

So, to disable multi-source inventory in Magento 2:

1. Create your Magento 2 database dump.

2. Install Magefan MSI Disabler. This module has some useful CLI commands and PHP class rewrites to prevent errors when MSI is disabled.  For that run the following commands:

composer require magefan/module-msi-disabler
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy

3. Once the extension is installed, run the command to disable MSI:

bin/magento magefan:msi:disable

It will mark all Magento_Inventory* modules as disabled in app/etc/config.php.

4. Redeploy Magento, using these commands:

bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy

Note: if you don't want your website to be down during deployment, try these zero downtime deployment commands for Magento 2.

5. Check the storefront, admin panel, and logs to see if MSI has been disabled with no complications.

Just a few minutes of your time now to ensure a more convenient store management in the future. No need to burden yourself with all the stocks and sources if these are not what your store is aimed at.