My salable quantity is greater than my quantity. How has this happened? I recently updated to Magento 2 and have been trying to get my head around the MSI but still can't figure out how salable quantity is more than quantity in the case of this and some other products. With the result that I am overselling on stock.

enter image description here

Ideally I would work only from simple stock quantity but I when I disable the manage stock option, I then oversell on the front end as there is no stock control.


Based on your description the root cause of the problem could be one of those:

  1. You have upgraded to Magento 2.3 from the previous version of Magento where you had some orders placed, but not shipped. As since Magento 2.3 the stock deduction logic has changed drastically and now Magento places reservation at the time of Order placement (negative reservation) and then compensate it at the time of Shipment creation (positive reservation), you face the problem that Magento compensates the reservation which in fact was not created (because an order has been placed on older version of Magento.). You can read more about this here - https://github.com/magento-engcom/msi/wiki/Salable-Quantity-Calculation-and-Mechanism-of-Reservations

  2. another reason for getting this issue is that you had Inventory Configuration Manage Stock = false. With this config option, Magento does not place a reservation at the time of order placement. But then you decided to switch Stock management On, and placing shipment you overcompensated with positive reservation (similar as case 1)

| improve this answer | |
  • Thank you Igor, I think it could be number 2. Do you know of any way to change the salable quantity so it reflects our actual stock? – Alice Apr 14 '19 at 15:25
  • @Alice currently this is not done yet. But this functionality would be released in the upcoming MSI release - 1.1.2 . You can track this GitHub issue - github.com/magento-engcom/msi/issues/2170 and my comment here - github.com/magento-engcom/msi/issues/… – Igor Minyaylo Apr 15 '19 at 19:16
  • Thank you Igor, I take it that its not safe to go into the inventory_reservation via php and edit the quantity where you can see it has been taken out or put into stock for a short term fix? – Alice Apr 16 '19 at 9:37

Please see the following diagram illustrates the relationship between source stocks, aggregate stocks, and sales channels: enter image description here

In your case, maybe your stock is mapping with 2 sources, first one has salable Inventory is 10 and second one has salable Inventory is 7.5, so the salable Quantity in your stock is 17.5. This is similar Bicycle Shop UK stock in diagram with formula: Salable Quantity = 40 (Warehouse Salable Inventory)+ 15 (Flagship Store Salable Inventory) - 5 (only X Left)=50

| improve this answer | |
  • Thank you Bachlee89, but I only have one source = default source..... I do have two sales channels though, website and ebay... – Alice Apr 5 '19 at 20:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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