I have a Magento 2.3.1 shop with external software managing my stock levels. I have disabled the Decrease Stock When Order is Placed setting but with the new Magento MSI in Magento 2.3, the stock is still checked and decreased when creating a shipment. Is there a way to disable this behaviour?

  • 1
    Did you ever got this working. I have exactly the same issue using exact Oct 9, 2019 at 16:28

3 Answers 3


~Update ~ Crim is correct. The solution is to disable Magento MSI completely. This is what I ended up doing in my case and works.

You're not the only retailer with this issue. After spending some considerable time I've come across quick a few different threads with many others dealing with this issue in some way or another. What we really need is to revert back to a behavior like Magento 2.2 where stock qty is also the saleable qty.

There are two issues at play here for stores using an outside source of truth for stock number management.

  1. The MSI stock reservation system can go out of sync with the true source
  2. You are unable to ship items that are 0 stock from a source when marking an item as shipped.

I've found this long thread here that covers both issue at times but mainly focuses on the stock reservation system issue.


There are two module that developers have kindly shared that MAYBE of assistance to you.

The No Reservations Magento 2 Module stops any reservations being persisted to the database and changes when Magento deducts inventory from sources to when an order is invoiced rather than when it is shipped.


AmpersandHQ Disable Stock Reservation does as it's named. It disables MSI reservations. Read more about this below.


I hope these links help as I spent many hours searching trying to workout a solution to this issue.


The solution was to disable Magento MSI completely. https://www.mexbs.com/magento-blog/disabling-the-magento-msi/


Unfortunately what we are experiencing with the AmersandHQ module is that it renders almost any other extensions that touch MSI broken, for us first it was a gift card module, ruled out adding an RMA module, etc.,

Our other issue is that syncing between the POT ERP and Magento does not happen in real time. Between inventory updates, we do need to keep track of available quantity so items do not oversell. Any ideas?

There are so many of us trying to find an elegant solution to this.

All I have for now is the thought of adding an event listener for a stock source import that truncates the inventory_reservation table (or updates all qty to 0), overwritting the core functionality of checking stock before sending shipments, and overwriting the core functionality of writing back to the inventory_reservations table upon shipment/order completion. What do you folks think about this approach? What am I not seeing about how it will break other core functionalities?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.