PayPal als Zahlungsanbieter einrichten
PayPal ist einer der unterstützten Payment Service Provider in FSC. Damit Online-Zahlungen über PayPal entgegengenommen werden können, muss eine PayPal-Developer-App angelegt und ein Webhook konfiguriert werden. Diese Anleitung führt Schritt für Schritt durch den kompletten Prozess.
Voraussetzung: Das Modul Zahlungen ist gebucht und ein PayPal-Business-Konto liegt vor.
Wo zu finden
In FSC unter Einstellungen → Zahlungsanbieter → PayPal.
Übersicht: benötigte Daten aus PayPal
Aus dem PayPal-Konto werden drei Werte gebraucht, die in FSC hinterlegt werden:
- Client ID (aus der PayPal-App)
- Secret (aus der PayPal-App)
- Webhook ID (aus dem angelegten Webhook, Format
WH-...)
Schritt 1: PayPal-App anlegen
- Auf https://developer.paypal.com/dashboard/ mit dem PayPal-Business-Konto einloggen.
- Oben zwischen Sandbox (Testumgebung) und Live (Produktion) umschalten. Für den produktiven Betrieb ist Live erforderlich.
- Menüpunkt Apps & Credentials öffnen.
- Auf Create App klicken, einen aussagekräftigen Namen vergeben (z.B. FSC Buchungsportal) und Merchant als App-Typ auswählen.
- Nach dem Anlegen werden Client ID und Secret angezeigt. Das Secret muss über Show eingeblendet werden.
Schritt 2: Zugangsdaten in FSC eintragen
- In FSC zu Einstellungen → Zahlungsanbieter → PayPal wechseln.
- Client ID und Secret aus PayPal in die entsprechenden Felder eintragen.
- Testmodus deaktivieren, sofern die Live-Zugangsdaten verwendet werden. Für Sandbox-Tests bleibt der Testmodus aktiv und optional wird der Name des Sandbox-Kontos hinterlegt.
- Speichern.
Schritt 3: Webhook in PayPal einrichten
Der Webhook sorgt dafür, dass PayPal Zahlungsereignisse an FSC meldet, damit Buchungen korrekt als bezahlt markiert werden.
- Im PayPal-Developer-Dashboard die zuvor angelegte App öffnen.
- Nach unten scrollen bis zum Abschnitt Webhooks und auf Add Webhook klicken.
- Als Webhook URL die FSC-Adresse eintragen, mit der eigenen Portal-Domain:
https://<eure-fsc-domain>/de/portal/paypal_payment_intents/webhook
Beispiel:https://fussballschule.arminia.de/de/portal/paypal_payment_intents/webhook - Folgende Event types müssen aktiviert werden:
CHECKOUT.ORDER.APPROVED(löst die Zahlungserfassung aus)CHECKOUT.ORDER.COMPLETED(Bestätigung des Checkouts)PAYMENT.CAPTURE.COMPLETED(schaltet die Buchung final als bezahlt frei)PAYMENT.CAPTURE.REFUNDED(für Rückerstattungen)PAYMENT.CAPTURE.DENIED(für abgelehnte Zahlungen)PAYMENT.CAPTURE.REVERSED(für zurückgezogene Zahlungen)
- Webhook speichern. PayPal zeigt nun die Webhook ID im Format
WH-...an.
Schritt 4: Webhook ID in FSC hinterlegen
- Die Webhook ID aus PayPal kopieren.
- In FSC unter Einstellungen → Zahlungsanbieter → PayPal in das Feld Webhook ID einfügen.
- Speichern.
Ohne hinterlegte Webhook ID schlägt die Signatur-Verifikation der eingehenden Webhooks fehl. Zahlungen kommen dann zwar durch, werden in FSC aber nicht automatisch als bezahlt markiert.
Schritt 5: Testbuchung durchführen
Zum Abschluss eine kleine Testbuchung im Buchungsportal durchführen und den PayPal-Button verwenden. Nach erfolgreicher Zahlung sollte die Zahlungserwartung im Backend automatisch als bezahlt erscheinen.
Optionale Einstellungen
Bestimmte Zahlungsmethoden ausblenden
Im Feld Disallowed Methods lassen sich einzelne PayPal-Zahlungsmethoden deaktivieren. Kommagetrennte Werte, z.B.:
CARDum Kredit- und Debitkarten über PayPal auszublendenCREDITum die PayPal-Ratenzahlung auszublenden
Mehrere Werte kombinieren: CARD,CREDIT. Leer lassen, wenn alle Methoden angeboten werden sollen.
Sandbox-Test
Für Testläufe kann im PayPal-Developer-Dashboard oben auf Sandbox umgeschaltet und dort eine separate App plus Webhook angelegt werden. In FSC dann den Testmodus aktivieren und die Sandbox-Zugangsdaten eintragen. Der Sandbox-Kontoname ist optional und dient der eigenen Übersicht.
Hinweise
- Client ID und Secret werden in FSC verschlüsselt gespeichert und nach dem Speichern nicht wieder im Klartext angezeigt.
- Sandbox- und Live-Zugangsdaten sind bei PayPal getrennt. Ein Umschalten von Testmodus auf Live erfordert neue Zugangsdaten und einen neuen Webhook.
- Änderungen am Webhook (z.B. neue Events) erzeugen keine neue Webhook ID, ein Löschen und Neuerstellen jedoch schon. In diesem Fall die neue Webhook ID in FSC nachtragen.