Refactor custom product data saving