Pricing
Quantaprice is built around a single central problem: every customer should see the right price for every product, automatically, without manual maintenance at scale. That means a wholesale segment gets its discount applied across your entire catalog when a base price changes. A specific account gets its negotiated overrides preserved without anyone touching them. A new product added to the catalog inherits the correct pricing for every segment immediately. The pricing model — hierarchy, rules, bundles, scheduling, and history — is the mechanism that makes this work.
Pricelist hierarchy
Pricelists are organized as a parent-to-child tree. A base pricelist holds your catalog prices. Segment pricelists (wholesale, distributor, retail-EU) inherit from the base and apply rules — for example, 15% below catalog across all SKUs. Customer account pricelists inherit from a segment, apply their own rules on top of the segment's price, and can carry their own prices on individual SKUs. When you update a price at the base, every pricelist that inherits it follows automatically. A price set on a pricelist itself is never overwritten by inheritance.
Price rules
Rules turn price fields into the sales price. Each rule belongs to a pricelist, is optionally filtered to a subset of products (by category, brand, or any article attribute), and expresses a calculation — for example, take cost and apply a 40% margin, or take the catalog price and discount by 15%. The first matching rule wins, so you can express tiered logic without conflicts.
Bundle pricing
Bundles are articles whose price is derived from component SKUs. In sum-of-parts mode, each component resolves at the customer's own pricelist — if a customer has negotiated discounts on two components, those discounts flow through to the bundle price automatically. In fixed mode, the bundle carries a single price that overrides the component sum. Both modes can coexist in the same catalog, and a bundle price is queried exactly like any other price.
Scheduled pricing
Any price change can carry a future effective_from timestamp. The engine activates it at precisely the right moment — no manual intervention, no nightly jobs, no race conditions around midnight. A Q1 price increase, a weekend campaign, a flash sale starting Friday at midnight: all configured in advance and applied on schedule. Scheduled changes sit alongside current prices in the same model and are visible before they activate.
Price history
Every price is stored with its start date, and a new price never overwrites the previous one. Query any past timestamp to retrieve the exact prices that were live at that moment — reconstruct the pricing behind any historical order, audit a change after the fact, or trace when a price shifted. History is kept unless you turn on retention, where your plan allows it; see Historical Pricing.
Markets — currencies, VAT, and rounding — are covered in the next section. They form the calculation pipeline that wraps the pricing model: once a net price resolves, Markets handles currency conversion, tax application, and the rounding rules that produce the number a customer actually sees.