Skip to main content

Historical Pricing

Historical pricing allows Quantaprice to reconstruct the exact price of any SKU under any pricelist at any point in time.
This is essential for auditing, debugging, customer dispute resolution, and any workflow that depends on accurate "price as of" data.

Quantaprice stores historical versions of price structures, bundle definitions, and relevant pricelist fields with timestamped validity.
Retention is configurable per customer cluster.


What Historical Pricing Tracks

Historical data can be stored for:

  • Base price fields
  • Quantity breaks
  • VAT class (if tied to the price structure)
  • Metadata
  • Bundle definitions
  • Scheduled update activations
  • Pricelist overrides

Each historical entry represents a complete version of the price structure at the moment it changed.


How "As Of" Evaluation Works

When evaluating a price at a past moment, Quantaprice:

  1. Locates the correct historical version of the price structure
  2. Locates the correct historical version of the pricelist
  3. Applies scheduled updates that should have been active at that moment
  4. Applies inheritance (child overrides → parent → further ancestors)
  5. Resolves bundles using the corresponding historical prices
  6. Applies VAT
  7. Applies rounding

The result is exactly what the price would have been at that time.


Interaction With Scheduled Updates

Scheduled updates become part of historical pricing as soon as they activate.

Example:

  • A scheduled update is set for 2024‑04‑01
  • Before that timestamp, the old version is valid
  • After the timestamp, the scheduled version becomes the historical version for all future “as of” queries

No manual cleanup or special handling is needed.


Retention Configuration

Historical retention is configurable per cluster.

Options include:

  • Keeping a fixed number of versions
  • Keeping entries for a fixed duration (e.g., 6 months)
  • Keeping all history indefinitely

Retention affects disk usage and should be set based on operational, regulatory, or auditing needs.


Performance Considerations

Quantaprice handles history efficiently:

  • Only changed fields are rewritten
  • Lookups use binary search in time-ordered structures
  • Inheritance paths remain fast
  • Bundle resolution uses historical component versions
  • "As of" queries perform predictably even with many versions

Historical features do not affect the performance of normal (current-time) price queries.


Use Cases

Historical pricing supports:

  • Customer invoice verification
  • Dispute resolution
  • Regulatory compliance
  • Pricing audits
  • Debugging incorrect historical results
  • Reconstructing prices for long-running orders or quotes
  • Comparing price evolution over time

Summary

Historical pricing allows Quantaprice to evaluate prices exactly as they were at any moment in the past.
It integrates seamlessly with inheritance, bundles, scheduling, VAT, and rounding, providing a reliable foundation for auditing, analysis, and support workflows.