All changes

Multi-currency billing and failed payments

Plans priced in several currencies, a currency locked per workspace, and dunning when a payment fails.

Added
4
  • BillingPlan versions can be priced in several currencies, with the plans a workspace sees filtered to its own.
  • BillingA workspace locks to one billing currency when it first subscribes, so pricing cannot change underneath an existing subscription.
  • BillingHandling for Stripe invoice.payment_failed — the local subscription status is updated, the event is processed idempotently, and a notification is queued when the customer needs to act.
  • BillingOverage billing with a configurable unit size, so metered usage can be charged in blocks rather than per unit.
Fixed
2
  • BillingQuota resets now run correctly at the start of a billing period.
  • BillingCancelling a subscription in Stripe is reflected locally instead of leaving a stale record.

Start building

Everything above ships in the same SDK.