Zum Hauptinhalt springen

Zahlungs-Gateways (Stripe & PayPal)

FeedbackPulse SaaS unterstützt Stripe und PayPal für die Abonnementabrechnung. Sie können eines oder beide aktivieren.


Wie die Abrechnung funktioniert

  1. Sie erstellen Abonnementpläne unter Admin → Pläne (z. B. Starter 9,99 $/Monat, Pro 29,99 $/Monat)
  2. Jeder Plan hat eine Stripe Price ID und/oder PayPal Plan ID
  3. Wenn ein Mandant abonniert, wird er zu Stripe Checkout oder PayPal weitergeleitet
  4. Nach der Zahlung aktiviert FeedbackPulse sein Abonnement
  5. Webhooks halten alles synchron (Verlängerungen, Kündigungen, Fehlschläge)

Stripe-Einrichtung

Schritt 1: Stripe-Konto erstellen

  1. Registrieren Sie sich auf stripe.com
  2. Identitätsverifizierung abschließen
  3. API-Schlüssel unter Entwickler → API-Schlüssel abrufen

Schritt 2: API-Schlüssel erhalten

SchlüsselWo zu finden.env-Variable
Publishable KeyDashboard → Entwickler → API-SchlüsselSTRIPE_PUBLISHABLE_KEY
Secret KeyDashboard → Entwickler → API-SchlüsselSTRIPE_SECRET_KEY
STRIPE_PUBLISHABLE_KEY=pk_live_xxxxxxxxxxxxxxxx
STRIPE_SECRET_KEY=sk_live_xxxxxxxxxxxxxxxx

🧪 Testen: Verwenden Sie pk_test_- und sk_test_-Schlüssel für den Sandbox-Modus.

Schritt 3: Produkte & Preise in Stripe erstellen

Erstellen Sie für jeden Abonnementplan einen wiederkehrenden Preis in Stripe:

  1. Navigieren Sie zu Produkte → Produkt hinzufügen
  2. Name: „FeedbackPulse Starter" (oder Ihr Planname)
  3. Einen wiederkehrenden Preis hinzufügen: 9,99 $ / Monat
  4. Optional einen Jahrespreis hinzufügen: 99,99 $ / Jahr
  5. Die Price ID kopieren (beginnt mit price_)

Schritt 4: Preise mit Plänen verknüpfen

Navigieren Sie in FeedbackPulse zu Admin → Pläne → Bearbeiten:

PlanfeldStripe-Wert
Stripe Monatlicher Preis-IDprice_xxxxxxxxx (monatliche Preis-ID)
Stripe Jährlicher Preis-IDprice_xxxxxxxxx (jährliche Preis-ID)

Schritt 5: Stripe-Webhooks einrichten

Dies ist entscheidend — Webhooks halten Abonnements synchron.

  1. Navigieren Sie zu Stripe Dashboard → Entwickler → Webhooks
  2. Klicken Sie auf Endpunkt hinzufügen
  3. Endpunkt-URL: https://yourdomain.com/webhooks/stripe
  4. Zu überwachende Ereignisse:
    • checkout.session.completed
    • customer.subscription.created
    • customer.subscription.updated
    • customer.subscription.deleted
    • invoice.payment_failed
  5. Das Signing Secret kopieren (beginnt mit whsec_)
STRIPE_WEBHOOK_SECRET=whsec_xxxxxxxxxxxxxxxx

Schritt 6: Im Admin-Panel aktivieren

Navigieren Sie zu Admin → Einstellungen → Zahlungen:

  • Stripe auf aktiviert umschalten
  • Publishable Key und Secret Key einfügen
  • Speichern

PayPal-Einrichtung

Schritt 1: PayPal-Business-Konto erstellen

  1. Registrieren Sie sich auf paypal.com/business
  2. Navigieren Sie zu developer.paypal.com

Schritt 2: REST API-App erstellen

  1. Navigieren Sie zu Dashboard → Apps & Credentials
  2. Klicken Sie auf App erstellen
  3. Name: „FeedbackPulse"
  4. Client ID und Secret kopieren
PAYPAL_CLIENT_ID=your_client_id
PAYPAL_CLIENT_SECRET=your_client_secret
PAYPAL_MODE=live

🧪 Testen: Verwenden Sie PAYPAL_MODE=sandbox und Sandbox-Anmeldedaten.

Schritt 3: Abonnementpläne in PayPal erstellen

  1. Navigieren Sie zu PayPal Developer Dashboard → Subscriptions → Plans
  2. Zuerst ein Produkt erstellen, dann dafür Pläne erstellen
  3. Jede Plan-ID kopieren (beginnt mit P-)

Schritt 4: Pläne in FeedbackPulse verknüpfen

Unter Admin → Pläne → Bearbeiten:

PlanfeldPayPal-Wert
PayPal Monatlicher Plan-IDP-xxxxxxxxx (monatlicher Plan)
PayPal Jährlicher Plan-IDP-xxxxxxxxx (jährlicher Plan)

Schritt 5: PayPal-Webhooks einrichten

  1. Im PayPal Developer Dashboard → Webhooks
  2. Webhook-URL hinzufügen: https://yourdomain.com/webhooks/paypal
  3. Ereignisse auswählen:
    • BILLING.SUBSCRIPTION.CREATED
    • BILLING.SUBSCRIPTION.ACTIVATED
    • BILLING.SUBSCRIPTION.UPDATED
    • BILLING.SUBSCRIPTION.CANCELLED
    • BILLING.SUBSCRIPTION.SUSPENDED
    • PAYMENT.SALE.COMPLETED
  4. Die Webhook-ID kopieren
PAYPAL_WEBHOOK_ID=your_webhook_id

Schritt 6: Im Admin-Panel aktivieren

Navigieren Sie zu Admin → Einstellungen → Zahlungen:

  • PayPal auf aktiviert umschalten
  • Client ID und Secret einfügen
  • Speichern

Zahlungen testen

Stripe-Testmodus

Testkartennummern verwenden:

  • Erfolgreich: 4242 4242 4242 4242
  • Abgelehnt: 4000 0000 0000 0002
  • 3D Secure: 4000 0025 0000 3155

Ablaufdatum: beliebiges zukünftiges Datum. CVC: beliebige 3 Ziffern.

PayPal-Sandbox

  1. Navigieren Sie zu developer.paypal.com → Sandbox → Accounts
  2. Das generierte Sandbox-Käuferkonto zum Testen von Zahlungen verwenden

Multi-Währungs-Unterstützung

Plänen können verschiedene Währungen zugewiesen werden (z. B. USD, EUR, GBP). Konfigurieren Sie die Liste der unterstützten Währungen unter Admin > Einstellungen > Zahlungen im Feld Unterstützte Währungen.

  • Stripe: Checkout-Sessions übergeben automatisch die Währung des Plans, sodass Kunden in der richtigen Währung belastet werden.
  • PayPal: Abonnementanfragen enthalten Währungsmetadaten, die der konfigurierten Planwährung entsprechen.
  • Währungen werden auf jeder Rechnung für eine genaue Buchführung gespeichert.

Details zur Konfiguration unterstützter Währungen finden Sie unter Plattformeinstellungen.


Sicherheitshinweise

  • API-Schlüssel werden verschlüsselt in der platform_settings-Tabelle gespeichert
  • Webhook-Signaturen werden verifiziert (Stripe HMAC, PayPal-Signaturvalidierung)
  • Zahlungsereignisse werden in der payment_events-Tabelle protokolliert (Admin → Zahlungen)
  • Ereignis-Deduplizierung verhindert Doppelverarbeitung von Webhooks

Nächste Schritte