Skip to main content
← All capabilities
Available now

Platform capability · Billing & Subscriptions

Run subscriptions, invoices and metered billing

Plans, prices, invoices and metered usage

A billing engine for plans, prices, bundles of apps, subscriptions, trials, checkout, invoices, proration, failed-payment recovery, refunds and metered usage. Sell through Stripe, Paddle or manual bank transfer, several at once, or invoice offline. Existing subscriptions keep the provider they were sold through.

Built in

What you get

  • Plans made of features, with access set for each app
  • Several apps bundled into one plan
  • Prices: monthly, annual, one-off or metered
  • Subscriptions with trials, proration and renewal
  • Sell through Stripe, Paddle or manual bank transfer, several at once, or invoice offline
  • Stripe: customers, subscriptions, invoices and payment events
  • Paddle: checkout, plan changes, cancellations and refunds
  • Customers add or update their card in the portal
  • Invoices name the workspace they bill, in the list, the PDF and exports
  • In-house billing: invoices generated without an external provider
  • Any app can report metered usage through the SDK
  • Plan overrides for one organization, and features for single members
  • Custom plans for one organization, with their own features, limits and prices
  • Manual control of a subscription: enable, disable, extend, give free of charge or cancel
  • Plans can include dedicated resources, such as a dedicated database or stack, and can mix shared and dedicated resources
  • Checkout that hands over to the provider’s hosted payment page
  • Failed-payment recovery, with payment-failed notices and a grace period
  • Apps are told when a subscription starts, changes or ends
Under the hood

How it works

Several payment providers, one billing model

Sell through Stripe, Paddle or manual bank transfer, several at once, or invoice offline. Existing subscriptions keep the provider they were sold through. Calls to providers are kept apart from the platform’s own plans, subscriptions and invoices, so feature checks work the same whichever provider bills.

A plan decides which features are on

A plan is a set of features and limits. Apps ask through the SDK whether a feature is on and how much of a limit is left. Downgrades, upgrades and overrides for one organization go through the same check. Your product code asks one question, and the platform gives a consistent answer.

Plans and overrides for one customer

Operators can override a plan for one organization, create a custom plan, or extend, disable and re-enable a subscription in the operator console. Plans can include shared or dedicated databases, compute and other supported components. Product code keeps asking the same question about access.

Sell infrastructure upgrades through the subscription

A plan can start a customer on shared resources and offer dedicated database, compute, cache, event-stream or monitoring components as an upgrade. The platform queues eligible moves from shared to dedicated and reports each component as shared, queued, migrating, dedicated or failed. A fully isolated stack can be chosen when the whole customer needs a separate boundary.

Report metered usage and let billing price it

Apps report usage to the platform through the SDK. Billing adds it up for each period, applies the rates of the plan and generates invoices. Your engineers report "one billable API call". They do not work out what that call costs on a given plan and regional price list. That calculation is in one place.

Want a deeper walkthrough of Billing & Subscriptions?

A solution architect will demo the live service against your domain model.

Get a deployment assessment