I have some ideas. I think the problem would be solved if contact form 7 had, like you said, an if/then logic for relating two fields to each other in a complex manner -- however in the dashboard console of the Contact Form 7, i didn't see any options for that -- rather, it seems like each form field isn't tied to any of the others in a reactive, cause-and-effect way.
If the feature's just not there and one wants to still keep using Contact Foorm 7, maybe it would help to consider the problem from both ends?
-What I mean is on one extreme end, the free style, one could just expose a single textbox to the user and instruct them to please use that box only to type in a consise list the name(s) of the product(s) and the number of boxes of the product(s).
The benefit is as long as the person filling out the form understands what they need to type there(the name(s) and quantit(y)(ies), then one will have the result of an easy-to-read order form with no extra fields having been submitted.
-And on the other extreme end, the rigid style, one could expose a single drop-down box in which the user can only choose one choice (and furthermore make it a required field so they are forced to choose one), and their options could be like this:
---(no choice chosen)
1 Box of Product 1
2 Boxes of Product 1
3 Boxes of Product 1
4 Boxes of Product 1
1 Box of Product 2
2 Boxes of Product 2
3 Boxes of Product 2
4 Boxes of product 2
1 Box of Product 3
The benefit is that they only have one dropdown list to choose from, and in order to submit the form they have to pick one choice from it. So there's no possible way they'll be able to enter garbage in the field -- they just need to scroll down to the exact choice (quantity + Product) that they desire.
So my ideas, summarized, are to either:
-Use 1 free-form text field and instruct the user to type the product(s) + quantit(y)(ies)
-Use 1 dropdown box that is a required field so that the user can't enter garbage and has to choose the one choice that they desire.