Pricing (view + guide)
View an organization's active prices from the rule engine, joined so each row reads as what-it-prices / value / since-when. Money is a NUMERIC(18,6) string; currency renders via MoneyDisplay, other rule values show their unit. A plain-language guide (/pricing/guide) teaches the real engine — rule types, values, versions, the planner, and kept-forever history — so a person or an AI can follow the same model. Setting/adjusting prices, the planner, history/trends, and CSV/AI import are later phases (SP-PRICING-MANAGEMENT-V1); the save path waits on a backend response-envelope fix so no button false-errors.
If you are building a front end
Your front end calls this over the same-origin `/api/v1` proxy — no backend code to write, no schema to design. Endpoints: GET /api/v1/rules/snapshot, GET /api/v1/rules/values, GET /api/v1/rules/types, GET /api/v1/rules/audit.
Bring any front end — hand-written, or generated with Lovable, v0, Bolt, Claude, or Cursor. You get auth, a multi-tenant database, payments through your own Stripe, and email/SMS without writing or hosting a backend.
- How to turn it on
- On by default in the operator app; toggle/reorder via site.config.ts modules (key 'pricing').
- Who can use it
- permission: rule.rules.read (view). Writes will use rule.rules.write / rules.simulate once wired.
- The API behind it
GET /api/v1/rules/snapshot, GET /api/v1/rules/values, GET /api/v1/rules/types, GET /api/v1/rules/audit- Where it lives
- /pricing/pricing/guide
See it in context
Quoting, invoicing & payments — the full walkthrough, step by step: Estimate → quote → invoice → money in YOUR Stripe. We never hold your funds.
Machine-readable
This page is generated from our published capability catalog. Point your AI assistant at /features.json (or /llms.txt) and it can read every feature, how to enable it, and the endpoints behind it — then build against them.