Skip to navigation

Prices

A price for a product — one-off or recurring.

Status: contracted_test. In the machine-checked test-mode contract (openapi.subset.json) and the API Reference: create, retrieve, list and update. Served by the fluveo-billing sidecar (ADR 0019); create/retrieve/list promoted 2026-07-13, update 2026-09-15. The Stripe-Version header is optional. See API coverage.

A Price sets how much a product costs and how often it bills — a one-time amount or a recurring interval (day, week, month, year, with an interval_count). A subscription is created against a recurring price; a subscription’s items expand their price inline on reads.

Served operations: create, retrieve, list, and update, all contracted in test mode. Update accepts active, nickname, lookup_key, tax_behavior and transfer_lookup_key; amount, currency and product are immutable, as they are in Stripe. Stripe has no delete for prices, and neither does Fluveo. Search is not served.

A lookup_key names at most one price, so a checkout can name a price indirectly. Claiming a key another price holds is refused; transfer_lookup_key=true moves it and clears the previous holder.

Lists honor limit (1–100, default 10), starting_after, ending_before, active, created, product, currency, type, recurring[interval] and lookup_keys[], ordered newest-first. metadata is returned on every read. interval_count is capped so the billing period never exceeds three years.

Tiered, package, customer-chosen, per-currency and metered pricing are unsupported and are rejected explicitly rather than silently ignored, as is any unknown parameter. The remaining parity gap is tracked internally.