It can be quite confusing when you first edit prices in Episerver Commerce. To your surprises, some of the prices you imported or edited might disappear, or change, without your consent! What happened?
To answer that question, it’s essential to know there are two pricing system in Commerce: IPriceService
and IPriceDetailService
.
They have some different characteristics, and one of them is very important: the default implementation of IPriceDetailService
saves prices as-is, while the default implementation of IPriceService
does not: it optimizes prices before saving. Prices which are best for customers will be favored over the “less good” ones.