Glozr docs

Platform admin

Plans & Stripe sync

Pricing plans live in /admin/plans. Paid plans synchronize to Stripe automatically — you never have to babysit two systems in parallel.

The plans table

The index shows every plan with its name, monthly price, the number of workspaces currently on it, and its Stripe sync status. Toggling a row's active flag controls whether new signups can pick it; existing subscribers are unaffected.

Creating a plan

When you create a plan you specify:

  • Display name and slug (the slug is a unique, immutable identifier).
  • The monthly conversation quota and an optional message cap.
  • Monthly price (stored in cents).
  • Feature toggles — most commonly remove Glozr branding.
  • Active flag.

Resource limits

Plans can enforce per-workspace caps on:

  • Agents, knowledge sources and workflows.
  • Team members and integrations.
  • API access (on or off).

Leaving a value blank means unlimited. Setting it to 0 means a hard block. Soft-deleted items still count against the cap, and pending invitations count against the member cap.

Stripe synchronization

Any plan with a price greater than zero is pushed to Stripe automatically — both a Stripe Product and a Stripe Price are created. Free or custom-priced plans stay local-only. A Sync button on each row lets you force a manual reconciliation when needed (e.g. after a Stripe outage).

Modifying a plan

Editing the monthly price creates a new Stripe Price and archives the previous one. Existing subscribers are grandfathered onto the old price unless you migrate them explicitly. Slugs are immutable after creation — they're referenced from invoice metadata and active subscription state, so renaming would break referential integrity.

Soft deletion

Plans are never hard-deleted. The destructive button on a plan flips it to inactive, hides it from signup, and preserves all historical invoice and subscription references intact.

Currency configuration

Currency is a platform-wide environment setting — set CASHIER_CURRENCY in your .env file. The default is USD. Changing the currency after Stripe Prices have been created is not retroactive; existing prices remain in their original currency.

Note. If Stripe sync fails (bad API key, network error), the plan still saves locally with a not synced badge. Fix the underlying issue, then click Sync on the row to retry without recreating the plan.