refactoring for product_params