Firstly, I feel like I can't be the first person to encounter an issue like this, so if anyone knows of another similar thread with a resolution please do point me at it for reference. Thanks!
So this is a simple rundown of what I have and how I'd like it to work for me:
Item A that I sell in set quantities of 5, 25 & 50
These variants (quantities) are all exactly the same product just in different set amounts. I would like to have one product with a tracked inventory and each variant takes it stock from one figure. More or less like a composite product system.
On top of that I have 2 other products that work in the same way:
Item B - quantities of 10, 50 & 100
Item C - quantities of 20, 100 & 200
Also there is one 'bundle' product that incorporates items A, B & C into one. This also has 3 variants that are set quantities:
Bundle variant 1 contains - 5 x item A, 10 x item B & 20 x item C
Bundle variant 2 contains - 25 x item A, 50 x item B & 100 x item C
Bundle variant 3 contains - 50 x item A, 100 x item B & 200 x item C
Currently I have been testing out Connected Inventory and it seems to do more or less what I need. To use it I have created and extra 'control' product for each item and made it so they are unavailable on the store front. This then acts like the composite to ensure stock control. The biggest issue I have encountered with it though is that it doesn't stop people from purchasing the bundle or items when they become out of stock. Obviously this is an issue as I will have major delays when fulfilling orders.
I have thought about price breaks but this won't allow me to sell the items in set quantities. Also most bundle apps will add every individual product to the cart separately. I thought this wouldn't be an issue if I find a way to change the code to only display the bundle on the front end. I did achieve this and it worked flawlessly on paper. However, when I tested it was still filling the products in the background. So that meant for the biggest bundle it was trying to generate 350 items in the cart and checkout. Needless to say that this got super slow!
Phew! After all that waffling I hope that it makes sense and that someone has some advice that could help!
You would bundle up each variant based on the component and its quantity so this would maintain correct inventory.
We built a bundling app for this reason as a lot of our clients wanted to track these kind of scenarios and maintain accurate stock in the live listing as well as when order comes in for these products.