Billing & Subscription
The Billing section of the Console lets you manage your Auris subscription plan, initiate or change a subscription, view past invoices, and access the Stripe Customer Portal for payment method and invoice management.
Access it from the sidebar: Settings → Billing.
This page covers the subscription that governs your Auris tenant — the plan you pay for to use Auris itself. It is entirely separate from the Licensing module, which lets you issue and manage license keys for your own products. See Licensing Console for that.
Overview
Every Auris tenant is on a subscription plan. The plan determines which features are available in your tenant and how many resources (users, applications, organizations, SSO connections) you can create.
When you first create a tenant, you are automatically placed on the Free plan. No payment information is required to get started. You can upgrade to a paid plan at any time from the Billing page.
Plans are billed monthly or yearly. The Console defaults to showing prices in EUR; use the currency selector on the Billing page to view equivalent amounts in USD, GBP, or CHF. Prices displayed in non-EUR currencies are indicative conversions — your Stripe invoice is always denominated in the currency selected at checkout.
Available Plans
The following plans are available. Limits marked Unlimited have no enforced cap.
| Feature / Limit | Free | Starter | Pro | Business | Enterprise |
|---|---|---|---|---|---|
| Monthly Active Users (MAU) | 1,000 | 5,000 | 25,000 | 100,000 | Unlimited |
| Applications | 3 | 10 | 50 | Unlimited | Unlimited |
| Organizations | — | 5 | 25 | Unlimited | Unlimited |
| SSO Connections | — | — | 3 | 20 | Unlimited |
| Social Login | Yes | Yes | Yes | Yes | Yes |
| Magic Links | Yes | Yes | Yes | Yes | Yes |
| Custom Branding | — | Yes | Yes | Yes | Yes |
| Audit Trail | — | — | Yes | Yes | Yes |
| Webhooks | — | — | Yes | Yes | Yes |
| Actions Engine | — | — | Yes | Yes | Yes |
| Fine-Grained Auth (FGA) | — | — | Yes | Yes | Yes |
| SCIM Provisioning | — | — | — | Yes | Yes |
| Advanced OAuth2 | — | — | — | Yes | Yes |
| Log Streaming | — | — | — | Yes | Yes |
| Attack Protection | — | — | — | Yes | Yes |
Feature availability is enforced in real time by the Auris feature gate. Attempting to use a feature not included in your current plan returns HTTP 403 with a reason identifying the required plan.
Resource limits (MAU, organizations, SSO connections) are enforced when creating new records. Existing records are never automatically deleted when you downgrade — you will need to reduce counts manually before the new lower limit becomes the active ceiling.
For the Enterprise plan or custom volume pricing, use the Contact Sales button on the Billing page.
Subscribing
If your tenant is on the Free plan, the Billing page shows a plan selector. To subscribe to a paid plan:
Choose a plan
On the Settings → Billing page, locate the plan you want under the Plans tab. Review the feature list and price.
Click Subscribe
Click the Subscribe button on the chosen plan card. Auris calls the Checkout API and redirects your browser to a hosted Stripe Checkout page.
Complete payment on Stripe
Enter your payment details on the Stripe Checkout page. Stripe handles card validation and 3-D Secure where required.
Return to the Console
After a successful payment you are redirected back to the Billing success page. Your subscription is activated immediately — the Console refreshes your plan and all newly unlocked features are available straight away.
If your plan includes a trial period, your card is not charged until the trial ends. The Stripe Checkout page will clearly indicate how many trial days are included and when the first charge will occur.
Changing Plans
Upgrades and downgrades are applied immediately with prorated adjustments.
Open the Plans tab
Go to Settings → Billing and click the Plans tab.
Select the new plan
Click Switch to this plan on the target plan card. If your tenant already has an active Stripe subscription, Auris applies the change directly via the Stripe subscription API — no Checkout redirect occurs.
Confirm
The Console sends a POST /api/billing/change-plan request. Stripe computes a proration credit or charge for the remaining days in the current billing period and applies it to your next invoice.
Proration behavior
| Direction | Effect on next invoice |
|---|---|
| Upgrade (higher plan) | Prorated charge added for the remainder of the current period |
| Downgrade (lower plan) | Prorated credit applied against the next period’s charge |
Feature access changes immediately on plan change. The in-memory feature cache for your tenant is invalidated as soon as the change is recorded, so limits and feature flags reflect the new plan within seconds.
When downgrading, verify that your current resource counts (organizations, SSO connections, MAU) are within the new plan’s limits before switching. The downgrade succeeds regardless, but any resources that now exceed the lower plan’s limit cannot be created again until you upgrade or reduce counts.
Cancellation
Cancellation schedules your subscription to end at the close of the current billing period. You retain full access to your plan’s features until the period ends.
Open the current plan card
Go to Settings → Billing. The Current Plan card shows your active plan and subscription details.
Click Cancel Subscription
Click the Cancel Subscription button. A confirmation dialog appears.
Confirm cancellation
Confirm in the dialog. Auris sets cancel_at_period_end: true on your Stripe subscription and records the change in the database. The Console immediately reflects the scheduled cancellation with the period-end date.
What happens at period end
When the billing period closes:
- Your Stripe subscription is deleted.
- Auris downgrades your tenant to the Free plan automatically.
- Features and limits revert to the Free tier immediately.
- All data is retained — users, applications, organizations, and audit logs are not deleted.
Cancellation does not delete any tenant data. If you re-subscribe later, all previously created resources are still in place.
Resuming a Cancelled Subscription
If you have scheduled a cancellation but the billing period has not yet ended, you can reverse the cancellation and keep your current plan.
Locate the cancellation notice
Go to Settings → Billing. The Current Plan card displays a banner indicating the scheduled cancellation date.
Click Resume Subscription
Click the Resume Subscription button. Auris removes the cancel_at_period_end flag from your Stripe subscription and clears the cancellation record in the database.
Your subscription continues as normal from that point forward. No new charge is issued — you simply continue on the existing billing cycle.
Billing History
The History tab on the Billing page lists your past invoices sourced directly from Stripe.
| Column | Description |
|---|---|
| Date | Invoice date |
| Description | Plan or line item label from Stripe |
| Amount | Invoice total |
| Status | paid, open, or void |
| Download | Link to the hosted Stripe invoice PDF |
Up to 100 invoices are shown (default: 20). Use the Load More button if available to fetch additional records.
If your tenant has not yet had a paid subscription, the History tab shows an empty state.
Stripe Customer Portal
For payment method changes, invoice history with full PDF downloads, and address or tax ID management, use the Stripe Customer Portal.
Open the portal
Go to Settings → Billing and click Manage Billing (or Open Customer Portal). Auris creates a Stripe Customer Portal session and redirects your browser to the hosted portal.
Make changes in the portal
In the Stripe portal you can:
- Add, update, or remove payment methods
- Download PDF invoices
- Update billing address and tax information
- View the full subscription history
Return to the Console
When done, click the return link in the Stripe portal. You are redirected back to the Billing page.
The Stripe Customer Portal session is single-use and expires after a short period. If you navigate away and the link no longer works, click Manage Billing again to generate a new session.
Permissions
The Billing page is restricted to users with the appropriate permissions on the tenant.
| Permission | Grants access to |
|---|---|
view:billing | View current plan, subscription details, and billing history |
manage:subscriptions | Subscribe, change plan, cancel, resume, and open the Stripe Customer Portal |
Assign these permissions via Settings → Users & Roles. See Users & Roles for details.
The public plan list (GET /api/billing/plans) requires no authentication and can be fetched by unauthenticated callers, for example to display pricing information on a public page.
Webhook Processing
Auris receives payment lifecycle events from Stripe via a webhook endpoint. This is handled automatically — no configuration is required from the Console. The following events update your subscription state:
| Stripe Event | Effect in Auris |
|---|---|
checkout.session.completed | Subscription activated; plan linked to tenant |
customer.subscription.updated | Status, period dates, and plan synced |
customer.subscription.deleted | Tenant downgraded to Free plan |
invoice.payment_failed | Subscription status set to Past Due |
If your subscription shows as Past Due, update your payment method in the Stripe Customer Portal to resolve the outstanding invoice. Auris will re-activate the subscription once Stripe confirms payment.
Feature Gate and Limit Errors
When your code or Console action hits a plan limit, the API returns a structured error response.
Feature not available on plan (HTTP 403)
{
"ok": false,
"error": {
"code": "FEATURE_NOT_ALLOWED",
"message": "Feature 'sso' is not available on your current plan.",
"upgradePlan": "pro"
}
}Resource limit exceeded (HTTP 402)
{
"ok": false,
"error": {
"code": "LIMIT_EXCEEDED_ORGANIZATIONS",
"message": "Organization limit reached for your current plan.",
"current": 5,
"limit": 5,
"upgradePlan": "business"
}
}The upgradePlan field in both responses identifies the lowest plan that would allow the action. Use this to present a targeted upgrade prompt in your application UI.
Related
- Licensing Console — Issue and manage license keys for your own products (separate from your Auris subscription)
- Users & Roles — Assign
view:billingandmanage:subscriptionspermissions - Organizations — Organizations are a plan-gated feature; see limits by plan above
- Enterprise SSO — SSO connections are gated by plan