Description
I'm not sure if you consider this expected behaviour but it's a bit confusing for shop onwers and customers so I'll just document my experience here.
Preconditions (*)
- Magento 2.3.4
Steps to reproduce (*)
- Set shop to hide out of stock products from Stores -> Configuration -> Catalog -> Inventory
- Create a product with qty 1
- Order the product once
- Do not handle the order
- The product status is:
- stock: status in stock
- qty: 1
- salable qty: 0
Expected result (*)
The product does not show in the frontend of the store because it's not salable (the same as out of stock effectively)
Actual result (*)
The product shows up in the frontend without an add-to-cart button because the product is in stock but not salable.
If the shop owner cancels the order the product reappears as salable.
If the shop owner processes the order the product hides from the catalog as it becomes out of stock.
So the product is hanging on an intermediate state which is not expected by the shop owner
It's a bit confusing for the shop owners. Otherwise there needs to be a second setting in catalog to hide products that are not salable. The customer is also confused because he sees the product but cannot order it.