# Hosted billing boundary

> Status: intended, not chargeable today.

The hosted beta is free. It requests no card, has no deployed Stripe checkout,
and has no server webhook path. Nothing is charged before the founder confirms.

## Intended price

| Plan | Price | Includes |
|---|---:|---|
| Lycato | **£39/month** | One company, five Rooms, the Operator, Log, Ledger, inventory, and Handback |
| Self-hosted | **£0** | The open local product; infrastructure and model costs remain yours |

There is no public feature ladder in the master brand. The price is expressed
in GBP, in whole pounds in marketing and with two decimals in-product.

## Confirmation rule

Before billing can launch, the product must show the exact price, billing
period, included company, and effective date, and require an explicit founder
confirmation. A beta signup, verification, or company setup action is not
payment consent.

## Future server boundary

- Checkout and webhooks must be idempotent and server-side.
- Entitlements must be enforced server-side, never inferred from browser state.
- Failed payment may make hosted writes read-only but must not block inventory
  or Handback.
- Export and signed inventory remain available before hosted deletion.
- Taxes and invoices must use the founder's billing jurisdiction.

There is no billing implementation in the repo. The isolated prototype that once
sat at `hosted/unshipped/billing.js` was never imported by the hosted product,
and was deleted in the 2026-08-23 `apps/` move (commit `65ee343`).
