We are using latest version of Magento 2.3.4.
Whenever a customer is creating an order a salable quantity for product (child of configurable product) is decreased - which is a correct behavior. The problem is that, a bought size is still available until order is shipped.
The customer can see size - while trying to add (just sold) size to bucket, he gets information that requested QTY is not available.
I would like to disable (grey out or cross out) unavailable size.
Can I achieve this using magento settings ? Or do I have to write a custom plugin ?
few thing for that
1) Are you using MSI?
2) are you using varnish? yes then have you configure properly
3) try to open with url?v=11 and check it
Magento doing cache flush on order place if qty becomes zero or out of stock
so make sure your cron is ruing if you are using on schedule indexer mode.
try to open with url?v=11 and check it : if works then cache flush issue, so you need to check varnish setting
1) Yes I am using MSI, but I am not sure if I have to. I have only one warehouse and we are not planning to create new in near future
2) I am not using varnish, mngento is setup with apache + nginx + redis
3) When I open example.com/my-product#size=32 - it is opening my product with size correctly seletcted in swatches
My issue is that swatch size is still available when salable_quantity==0. I would like to hide that size or at least cross it with some red line.
Swatch size is disappearing only when quantity is set to 0.
When MSI enabled then it will deduct qty when you generate shipment.
So if you are not using MSI then disable MSI .
Try on thing
place order, generate shipment and check product does that size showing with qty 0 if yes then do flush cache and check again or open with ?v=1111
if still not working check product level manage stock yes
I think disabling MSI will resolve my issues, beacuse whenever an order is placed - quantity will be decreased. Salable quantity will have no affect.
I've tried what you are saying, my store behaved correctly. I have placed an order - in admin it showed quantity 1, and salable quantity 0. Frontend still showed sold size, but I was unable to add item to cart. Which is a correct behavior. But I want to hide size which is no longer available.