Skip to content

Subscribe Flow

Multi-Tenant SaaS für API-First Subscription Management

Subscribe Flow ist eine Multi-Tenant-SaaS-Plattform für granulares E-Mail-Preference-Management. Als Wrapper über Resend bietet sie Self-Service Preference Management mit DSGVO/DSG-nativer Transparenz. Jede Organisation verwaltet ihre Subscriber, Tags und Domains isoliert.

Highlights

  • API-First Design


    RESTful API with OpenAPI documentation. Perfect for headless integrations and custom frontends.

  • Granular Tags


    Subscribers can actively add new interests, not just unsubscribe from predefined options.

  • GDPR/DSG-Ready


    Native support for transparency, data export, and deletion. Compliance by design.

  • Resend Integration


    Seamless synchronization with Resend for reliable email delivery.

  • Multi-Organization Support


    Full tenant isolation with org-scoped API keys, subscribers, tags, and custom email domains.

  • Stripe Billing


    Integrated subscription billing with Starter and Professional plans via Stripe.

  • Magic Link Auth


    Passwordless authentication for the Admin Dashboard via Magic Links.

  • Custom Email Domains


    Organizations can configure their own sending domains for branded email delivery.

Architecture Overview

graph TB
    subgraph Clients
        PC[Preference Center UI]
        AD[Admin Dashboard]
        SDK[SDK / API Client]
    end

    subgraph API Gateway
        FA[FastAPI]
        AUTH[Auth Middleware]
        RL[Rate Limiting]
    end

    subgraph Business Logic
        SS[Subscriber Service]
        TS[Tag Service]
        OS[Organization Service]
        RS[Resend Sync Service]
        WH[Webhook Handler]
        BS[Billing Service]
    end

    subgraph Background
        CW[Celery Worker]
        RDQ[(Redis Queue)]
    end

    subgraph Data Layer
        PG[(PostgreSQL)]
        RD[(Redis Cache)]
    end

    subgraph External
        RESEND[Resend API]
        STRIPE[Stripe API]
    end

    PC --> FA
    AD --> FA
    SDK --> FA

    FA --> AUTH
    AUTH --> RL
    RL --> SS
    RL --> TS
    RL --> OS

    SS --> PG
    TS --> PG
    OS --> PG
    SS --> RD

    RS --> RESEND
    WH --> RESEND
    BS --> STRIPE

    SS --> RS
    TS --> RS

    CW --> RDQ
    SS --> RDQ
    BS --> RDQ

Quick Start

Bash
1
2
3
4
5
6
7
8
9
# Clone the repository
git clone https://github.com/talent-factory/subscribe-flow.git
cd subscribe-flow

# Komplettes Setup (Docker, Dependencies, DB, Bootstrap-API-Key)
make setup

# Entwicklungsumgebung starten (Backend + Frontend + Celery Worker)
make dev
Bash
# Clone the repository
git clone https://github.com/talent-factory/subscribe-flow.git
cd subscribe-flow

# Start services
docker compose up -d

# Install dependencies
uv sync --all-extras

# Run migrations
uv run alembic upgrade head

# Start the server
uv run uvicorn subscribeflow.main:app --reload

# Test the API
curl http://localhost:8000/health

Features

Feature Description
Multi-Organization Support Tenant-isolierte Verwaltung mit org-scoped API Keys
Subscriber Management CRUD operations for subscribers with email validation
Tag System Hierarchical tags with categories and descriptions
Preference Center Embeddable UI for self-service preference management
Magic Link Auth Passwordless login für das Admin Dashboard
Stripe Billing Integrierte Abrechnung mit Starter/Professional Plans
Custom Email Domains Eigene Versand-Domains pro Organisation
Webhooks Incoming (from Resend) and outgoing (to your systems)
Audit Log Complete history of all preference changes