Entrering again a promocode should update the products

Why did you remove this line? I think that without this the checkout will continue to the next step (because the action is not interrupted by the render in this before_action) even if there are errors... is that the behaviour we want?