BillStack Docs

Welcome to BillStack

Multi-tenant billing management built on Stripe. One Stripe account, multiple SaaS products, complete isolation.

What is BillStack?

BillStack is a multi-tenant billing management layer built on top of Stripe. It lets you manage billing for multiple SaaS products using a single Stripe account — solving webhook chaos, customer isolation, and duplicated billing code.

Think of it as a self-hosted Chargebee alternative that sits between your SaaS apps and Stripe.

Problems BillStack Solves

If you're using Stripe directly for multiple SaaS products under one account, you've likely encountered:

  • Webhook chaos — SaaS-2 receives webhook events intended for SaaS-1
  • No customer isolation — customers are global, not scoped to individual products
  • No project-level dashboard — one Stripe dashboard for everything
  • Duplicated billing code — each SaaS rebuilds checkout, portals, and subscription management

BillStack acts as a project-aware billing layer that routes everything to the right place.

Key Features

FeatureDescription
Multi-tenant isolationCustomers, products, prices, and subscriptions are scoped per-project
REST API with API keysExternal SaaS apps integrate via Authorization: Bearer bs_...
Self-hosted customer portalSubscription management, invoices, payment methods at /portal/[token]
Webhook routingPer-team webhook URLs that route events to the correct project
Referral systemPer-project referral codes with automatic conversion tracking
AnalyticsMRR, customer growth, subscription breakdown, churn rate
Encrypted credentialsAES-256-GCM encrypted Stripe keys stored in the database

How It Works

Your SaaS App  ──►  BillStack API  ──►  Stripe
                    (project-scoped)


                   BillStack DB
                  (isolated data)
  1. You connect your Stripe account to a team in BillStack
  2. You create projects (one per SaaS product)
  3. Your SaaS apps call BillStack APIs using API keys
  4. BillStack handles Stripe operations and routes webhooks to the correct project
  5. Customers see a self-hosted portal for managing their subscriptions

Documentation Structure

Quick Start

Already have BillStack running? Here's the fastest path:

  1. Connect Stripe in your team settings dashboard
  2. Create a project for your SaaS product
  3. Generate an API key in the team settings
  4. Start calling APIs — see the Migration Guide for code examples

On this page