StateSet Billing
The self-service billing portal, hosted at billing.stateset.com. Customers sign in with their StateSet (WorkOS) account to manage plans, modules, payment methods, and invoices.What customers can do
- Pick a platform plan — Starter, Growth, or Enterprise, on outcome-based pricing.
- Activate modules à la carte: Voice, Chat Widget, Email, and Computer Use.
- Track outcomes processed by StateSet across 10 SKUs.
- Manage payment methods and view invoices without leaving the app.
- Open the Stripe billing portal for tax IDs, addresses, and detailed history.
Shared entitlements
The portal uses thebilling_organizations Hasura table as the single source of truth.
Signing in here means subscriptions show up in ResponseCX, the Computer Use Agent, and the
sandbox — there is no per-product billing state to reconcile.
Module activations and outcome records live in the org_modules and outcomes tables.
Outcome SKUs
Billing is outcome-based rather than seat- or token-based: you are billed for work completed, not capacity provisioned. An outcome is a verified, end-to-end resolution, priced against the BPO labor it replaces. Live:
In development:
Disputes
Customers can flag an outcome within 14 days. Disputes are persisted as Stripe customer balance transactions — a negative amount is a credit on the next invoice — and the Outcome Accounting Dashboard renders the ledger.Plans
Each plan pairs a monthly platform fee with a per-outcome rate — a larger platform fee buys a lower rate per outcome.Every figure on this page is a list price. Per-unit prices are configured in Stripe, not in
the application, and the portal’s displayed price is display-only — the amount billed always
comes from Stripe, with negotiated Enterprise terms overriding list. Check the portal or your
Stripe dashboard before relying on a number.
Modules
Each module carries a base subscription price (monthly or yearly) plus a metered component:Stack
Operational controls
The portal carries a set of financial and security controls beyond the basic subscription flow:- Financial reconciliation between Stripe and the local entitlement state.
- Entitlement resync so a drifted org can be brought back in line.
- Dispute handling.
- Audit trail over billing actions.
- Origin defense and Redis-backed rate limits.
- Alerting and a migration runner.
Local development
Deployment
Production runs on the Hetzner Kubernetes cluster in thestateset-billing namespace, with
images pushed to GHCR. Manifests live in k8s/, mirrored by the Hetzner infra repo.
stateset-billing-app Secret to
already exist.
Related
- NSR Console & Billing — NSR has its own metered billing, separate from this portal