Updated to handle multiple products with multiple quantities