DocumentationPlans & BillingBilling & Subscriptions

Billing & Subscriptions

Billing is per team, managed by users with Manage Billing (Owner/Admin by default).

Billing profile

Stored on the team for tax and invoicing:

  • Customer type: Individual or Business
  • Country / tax jurisdiction (ISO country)
  • Company legal name (required for business)
  • VAT / tax ID (optional)

Edit from:

  • Team Settings → Billing → Edit billing details (modal)
  • Change Plan (if not yet saved)
  • Create Team flow for first-time paid checkout

Used for EU VAT estimates, quote PDFs, and Stripe Tax at checkout.

Subscribe or change plan

Route: /teams/:teamId/_change-plan/

  1. Review current plan and seats
  2. Pick Monthly or Annual (−20%)
  3. Select target plan card
  4. Adjust seats slider (Pro/Business)
  5. Confirm billing profile if missing
  6. Confirm & Update Plan → Stripe payment when upgrading to paid
  7. End Subscription to return to Free (with warning)

If billing profile is already complete, Change Plan skips the form and uses stored details.

Stripe customer portal

Team Settings → Billing → Manage Subscription opens Stripe’s portal to:

  • Update payment methods
  • Cancel subscription (alternative path to downgrade)

Invoices

Listed under Team Settings → Billing:

  • View Invoice — hosted invoice page
  • Download PDF
  • Status badges: Paid, Open, Void, etc.

Webhooks & sync

Successful payment updates team plan and seat count automatically. Cancellation reverts team to Free with 3 seats.

Tax behaviour

  • Individuals: quotes may show Bulgarian VAT estimate (20%); Stripe finalises at checkout.
  • Businesses: tax depends on country and VAT ID; Stripe Tax calculates at payment.