← Back to product·Simulmedia Switchboard Docs · v1 draft·Concepts / The price-clearance invariant
Concepts

The price-clearance invariant

Price and availability are independent axes, validated independently per unit. Every order carries rate_version; every line carries locked_rate_id, the exact rate row priced at order time. The invariant is indifferent to how the price was disclosed: the card may be open, scoped to your agreement, or a quote minted for your campaign. The rule applies after disclosure, whenever disclosure happens.

  • With a version-current card, rate match passes by construction. The only legitimate rejection is availability.
  • A stale card returns STALE_RATE_CARD with a per-line rate_drift diff (your cost vs current cost): refresh and resubmit, no silent failures.
  • An expired quote is a stale card by construction: same STALE_RATE_CARD, which converts to "re-request a quote," never a silent business rejection.
  • A rate mismatch when versions agree is a platform defect and is alarmed as one, never surfaced as a business rejection.
"error": { "error_code": "STALE_RATE_CARD", "recoverable": true },
"rate_drift": [ { "package_id": "acme-prime", "week": "2026-W41",
    "your_cost": 405.00, "current_cost": 418.00 } ]

The failure surfaces on the order as a failed status with the error attached; error shapes are catalogued in Errors.

Price-at-order-time lock

An accepted price travels with the unit, even across mutually approved week moves. Later card changes never invalidate an accepted order.