update for multiple products, cleanup