Payment 12. Januar 2025 10–12 Min. Lesezeit

Payment-Gateway Integration: Stripe vs. PayPal vs. lokale Anbieter

Die richtige Zahlungsart entscheidet über Conversion und Kosten. Wir vergleichen fundiert und zeigen Best Practices für eine reibungslose Integration.

Entscheidungsmatrix

Kriterium Stripe PayPal Lokaler PSP
Gebührenmodell Transparent, volumenabhängig Weit verbreitet, tendenziell höher Verhandelbar, branchenabhängig
Checkout-UX Sehr gut (1-Click, Wallets) Externes Overlay/Weiterleitung Variabel (API/Plugins abhängig)
Funktionen Abo/Billing, Radar, Invoices Weit verbreitet, Käufervertrauen Spezialfälle (Lokale Zahlarten)
SCA/PSD2 Breite 3DS-Unterstützung SCA je nach Flow EU-Fokus, stark lokalisiert
DSGVO/Hosting Gut abbildbar Flow-abhängig EU-Hosting/Acquiring möglich

Integrationstipps

  • Serverseitige Webhooks für Zustandsübergänge (Payment succeeded/failed, Refunds); Client-Events nie als Quelle der Wahrheit nutzen.
  • Idempotency Keys bei API-Calls, um doppelte Belastungen zu vermeiden.
  • Payment-Intents/Orders früh anlegen, Reservierungen/Stock bei Abbruch sauber auflösen.
  • SCA/3DS UX: Frictionless bevorzugen, Retry-Flows anbieten, klare Fehlermeldungen ausspielen.
  • Fallback-Zahlarten für Conversion-Spitzen (Wallets, Rechnung/BNPL, SEPA Lastschrift).
  • Reconciliation: Payout-Reports & Gebühren sauber in die Buchhaltung exportieren.

Praxis: Sichere Webhooks & Status-Handling

// Beispiel: Signaturprüfung (Pseudo/Node-ähnlich)
                            const signature = req.headers["stripe-signature"]; // bzw. X-Webhook-Signature
                            const payload = rawBody; // unverändert (kein JSON.parse vor Prüfung)
                            const event = verifySignature(payload, signature, process.env.WEBHOOK_SECRET);
                            if (!event) return res.status(400).end(); // invalid
                            switch (event.type) {
                            case "payment_intent.succeeded":
                                // Bestellung finalisieren, E-Mail versenden
                                break;
                            case "payment_intent.payment_failed":
                                // Warenkorb freigeben, Kunde informieren
                                break;
                            }

Häufige Fehler vermeiden

  • Webhook ohne Signaturprüfung: führt zu Spoofing-Risiken.
  • Status nur clientseitig speichern: Race-Conditions & Datenverlust bei Abbrüchen.
  • Keine Idempotency: doppelte Abbuchungen bei Retries/Timeouts.
  • Unklare Fehlermeldungen: Nutzer brechen ab statt zu wiederholen.

Schnellstart-Checkliste

  • Wallets aktivieren (Apple Pay/Google Pay) + lokale Zahlarten testen
  • SCA-Flows (3DS) reibungslos gestalten, klare Retry-Optionen
  • Webhook-Signaturprüfung & Idempotency Keys implementieren
  • Abbruch-Handling: Reservierungen/Stock & Session-Timeouts
  • Buchhaltung: Export/Abgleich (Payouts, Fees) automatisieren

Sie möchten das optimale Payment-Setup für Ihre Zielgruppe? → Kostenlose Erstberatung anfragen.

Passendes Payment-Setup finden

Wir implementieren PSPs inkl. Checkout-Optimierung, Accounting-Export und Fraud-Prevention – sicher & konversionsstark.

Häufige Fragen (FAQ)

Welche Zahlungsarten sind für den DACH-Markt Pflicht?
Karten, PayPal, Apple Pay/Google Pay, SEPA Lastschrift – oft ergänzt um Rechnung/BNPL. Testen Sie Varianten je nach Zielgruppe.
Wie erfülle ich SCA/PSD2 ohne Conversion-Verlust?
Frictionless bevorzugen, 3DS nur wenn nötig; Status serverseitig & idempotent verarbeiten; klare UX für Fehler/Retry anbieten.
Wie integriere ich Webhooks sicher?
Signatur prüfen, nur Raw-Body validieren, Idempotency nutzen, Retries einplanen und Events auditierbar loggen.
Wann lohnen lokale PSPs statt Stripe/PayPal?
Bei speziellen Branchenanforderungen, lokalen Zahlarten, besserem Support oder verhandelbaren Konditionen.