refactor product syncs