Magento Configurable Products are Out-of-Stock at the Front-End
Do you have problems with Magento configurable products, always saying ‘out of stock’ on the frontend, even though you are 100% sure that it shouldn't be happening and they have to be available for purchase? Why there is no “Add to cart” button?
This could be for a number of reasons, but we have prepared the list of the most common ones for you to check:
No Associated Products
If you thought everything looked ok, you might want to double check that you remembered to associate simple products with the main configurable product. You say that it could not happen? You might have forgotten to hit “Save” button after linking child products or have added not unique combinations of associated simple items. In any case, no correct variations - no possibility to buy entity from the client’s side.
Simple Products with Quantity 0 and Disabled Status
By default, Manage stock is turned off for a configurable product, because the inventory is managed through each associated product. Basically, quantity of main product is dependent on quantities of each variation belonging to it. When all the child products stock goes to 0 then the main configurable product stock is turned into "Out of stock". If at least one of variations have quantity more than 0, main configurable product should be in stock.
The same concerns product status. If all linked to main configurable products have disabled status, they will not be available at the front-end. Thus, you will have ‘bare’ main item without ability to buy it.
Website Products Belong To (in case of multi store)
If you are using a multi store website please make sure that all related simple products are associated with the same store/website as Magento configurable product itself. Otherwise, you might have troubles with visibility of configurable options. Remember that all simple products must have assigned the same website/store as parent item.
Inventory of Main Configurable Product Itself
As was mentioned above, generally, stock of main configurable product is not tracked, but is taken on the basis of quantities of associated simple products. However, at times it may be necessary to apply inventory settings to a configurable product as a whole, such as to set quantity increments and change the stock availability. If this is the case, then you need to check Inventory tab of your main parent product and stock availability should be enabled there.
Cache and Catalog Index
Finally, after the changes are made and you still do not see changes, do not forget to flush Magento cache and rebuild catalog index. These operations are always necessary to see the latest actual data.
In case you have found out that some of inventory and visibility values should be changed and you need to do it massively, Store Manager for Magento can ease the task for you. With its built-in Multi-Editor tool, the changes of selected products can be implemented massively without the necessity to do it for each product independently.