In B2B, the same product can have a dozen valid prices, depending on who is buying, how much, and under which contract. Hard-coding that quickly becomes unmaintainable.
What the pricing engine covers
- Pricelists per customer group: wholesale, key accounts, distributors.
- Individual discounts and contracts: negotiated terms per customer.
- Volume / tiered pricing: the price drops as quantity rises.
- Overlapping rules with priorities: predictable resolution when several rules match.
- Quote-only assortment: some items are available only through a quote request, never shown with a public price.
An example: a key account has an individual 8% discount on a whole category, while a volume price also applies from 50 units. The higher-priority rule, the customer’s contract, wins, so the sales rep sees one predictable final price instead of working out by hand which discount applies.
Since version 0.108.0, prices are kept in price books edited like a spreadsheet, and the price explainer shows which price book won and why. I cover it in more detail in the 0.108.0 release post. Prices that need negotiation still flow into the quote request process.