Skip to main content

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.