Billing
Robost includes a fully functional billing system powered by Stripe. Subscription management is handled directly inside the app — no external Stripe dashboard login is required for day-to-day tasks.
Where to find billing
Section titled “Where to find billing”Click Billing in the bottom section of the left sidebar (path: /settings/billing). The sidebar entry is labelled “Billing” and uses a credit card icon. Any authenticated user can view the Billing page, but only users with the super_admin or security_admin role can take billing actions (subscribe, change plan, open the Customer Portal, adjust seats). Non-admins see a notice that reads “Contact a workspace admin to change your plan or update billing.”
What you can see
Section titled “What you can see”The Billing page displays a plan card showing:
- Plan tier — Trial, Starter, Growth, Enterprise, or Enterprise+
- Subscription status — one of Active, Trial, Past Due, Canceled, Unpaid, or Incomplete. These labels are human-readable mappings of Stripe subscription states (for example Stripe’s
trialingis shown as “Trial”). - Monitored seats — current seat count and your plan’s seat limit
- Events per seat/month — the event quota included with your plan
- Billing email — the email address on file with Stripe
If you are on a trial, the remaining days are shown on the plan card.
Subscribing or changing your plan
Section titled “Subscribing or changing your plan”If your account is on a trial or has been canceled, an Subscribe Now or Change Plan button appears (admin roles only). Clicking it opens Stripe’s embedded checkout flow at /settings/billing/checkout. Checkout runs in embedded_page mode — payment is handled entirely by Stripe’s hosted UI inside the Robost app and no card details ever touch Robost servers.
Self-service checkout is available for the Starter, Growth, and Enterprise tiers. The Trial and Enterprise+ tiers cannot be purchased via self-service checkout.
Managing an active subscription
Section titled “Managing an active subscription”When your subscription is active, a Manage Billing button is shown. Clicking it opens Stripe’s Customer Portal in a new tab, where you can:
- Update your payment method
- View and download past invoices
- Cancel or change your subscription
The Customer Portal is provided and hosted entirely by Stripe. Robost opens it by creating a portal session server-side and redirecting your browser.
Adjusting seat count
Section titled “Adjusting seat count”Seat count can be updated via the billing API (PATCH /api/billing/seats). The change is applied to your Stripe subscription immediately with prorated billing.
Enterprise+ (more than 1,000 seats)
Section titled “Enterprise+ (more than 1,000 seats)”If you are on the Enterprise plan and need more than 1,000 seats, a Contact sales link is displayed on the Billing page. Enterprise+ offers custom pricing, dedicated support, custom SLM fine-tuning, and tailored SLAs.
How billing state stays in sync
Section titled “How billing state stays in sync”Robost listens to Stripe webhook events at a backend endpoint. When Stripe fires an event (such as a subscription update, invoice payment, or payment failure), Robost verifies the webhook signature, resolves the event to your organisation, and updates your subscription state in the database. This means your plan tier, seat count, and subscription status in the app always reflect the current state in Stripe — including changes made via the Customer Portal.
The following Stripe events are handled: checkout.session.completed, customer.subscription.created, customer.subscription.updated, customer.subscription.deleted, invoice.paid, and invoice.payment_failed.
If you have questions about your invoice or encounter a billing issue not resolved by the Customer Portal, contact support.