01 — Kurzüberblick & Architektur

Aktualisiert am 1. Juni 2026

01 — Kurzüberblick & Architektur

Was ist PartnerDesk?

PartnerDesk ist eine Multi-Tenant-SaaS-Lösung für die Verwaltung von Affiliate- und Partnerprogrammen mit MLM-Unterstützung. Sie betreiben damit:

  • Affiliate-Programme mit beliebiger Anzahl Partner.
  • Provisionsmodelle mit Prozent-, Fix- oder Hybrid-Tarifen, optional gestaffelt nach Umsatz.
  • MLM-Strukturen bis zu 10 Ebenen tief (Downline-Provisionen, Cycle-Detection).
  • Automatische Provisionsberechnung aus Payment-Provider-Webhooks (Stripe, Digistore24, CopeCart, Ablefy, easybill, lexoffice, Custom).
  • Rechtskonforme Auszahlungen mit Gutschriften nach §14 UStG, SEPA-Export, Kleinunternehmer-Handling (§19 UStG).
  • Externe Buchhaltungs-Integration für easybill und lexoffice.

Für wen ist die Software gemacht?

  • Tenant-Admins: Unternehmer, die ein eigenes Affiliate- oder Partnerprogramm betreiben wollen, ohne selbst eine Lösung programmieren zu müssen.
  • Partner: Affiliates, die Sales generieren und Provisionen verdienen — sie bekommen ein eigenes Portal mit Live-Statistik.
  • Plattform-Admins: 4leads/PartnerDesk-Mitarbeiter, die das System für alle Tenants betreuen (Onboarding, Support, Compliance).

Drei Personenkreis-Ebenen

Ebene Wer Sichtbarkeit
Plattform-Admin PartnerDesk-Mitarbeiter Alle Tenants, alle Daten, Audit-Log, Failed-Messages
Tenant-Admin Inhaber/Mitarbeiter eines Affiliate-Programms Nur eigener Tenant: Partner, Kampagnen, Transaktionen, Auszahlungen
Partner Affiliate, der Provisionen verdient Nur eigene Daten + eigene Downline

Zusätzlich gibt es den Hub-Account — ein zentraler Account, der mehrere Partner-Identitäten über verschiedene Tenants hinweg bündelt.

Technische Architektur (Übersicht)

┌─────────────────┐    ┌──────────────────┐    ┌──────────────────┐
│ Marketing-Site  │    │ Admin-Portal     │    │ Partner-Portal   │
│ (Apex-Domain)   │    │ (app.partnerd-   │    │ (<slug>.partner- │
│ partnerdesk.io  │    │ desk.io)         │    │ desk.io)         │
└─────────┬───────┘    └────────┬─────────┘    └─────────┬────────┘
          │                     │                        │
          └──────────┬──────────┴────────────────────────┘
                     │
              ┌──────▼──────┐         ┌────────────────────┐
              │ Symfony 7   │◄───────►│ Webhook-Provider   │
              │ + PHP 8.3   │         │ Stripe / Digistore │
              │             │         │ CopeCart / Ablefy  │
              │             │         │ easybill/lexoffice │
              └──────┬──────┘         └────────────────────┘
                     │
        ┌────────────┼────────────┐
        │            │            │
   ┌────▼─────┐ ┌────▼────┐ ┌────▼─────┐
   │PostgreSQL│ │ Redis   │ │Flysystem │
   │   16     │ │   7     │ │(Local/   │
   │          │ │         │ │ GCS/S3)  │
   └──────────┘ └─────────┘ └──────────┘

Wichtigste Module

Modul Verantwortlichkeit
TenantResolver Erkennt aus URL/Subdomain den aktiven Mandanten.
PartnerResolver 5-stufige Zuordnung Sale → Partner (Customer-Lock > Explicit > Cookie > Fingerprint > Unassigned).
CommissionCalculator MLM-Traversal bis zu 10 Ebenen, Tier-Auflösung, Volumen-Staffel.
WebhookProcessor Eintrittspunkt für alle Provider-Webhooks; Signaturprüfung, Replay-Fähigkeit.
PayoutService Sammlung approved-TX zu Payouts, Approval-Flow, PDF + SEPA.
MailService Tenant-aware Versand, drei-stufig (Custom-SMTP > From-Address > System-Default).
NotificationService Multi-Channel-Benachrichtigungen (in-App + Email), Template-getriggert.

Subdomains-Schema

URL Funktion
partnerdesk.io Marketing-Site, Self-Service-Signup
app.partnerdesk.io Tenant-Admin-Portal
admin.partnerdesk.io Plattform-Admin (Superadmin)
<slug>.partnerdesk.io Tenant-Subdomain für Partner + Tracking + Landing-Pages
Tenant-Custom-Domain B2B-Großkunden mit eigener Domain

Verwandte Kapitel


Technische Tiefen-Doku: ../001-initial-setup.md