Setup & Cloud Functions
Der Setup-Tab ist der erste und wichtigste Schritt bei der Einrichtung der Zahlungsabwicklung. Hier verbindest du deine App mit Firebase und deployest die notwendigen Cloud Functions.
Uebersicht
Section titled “Uebersicht”Der Setup-Tab zeigt dir:
- Service Account Status - Ist dein Firebase-Projekt verbunden?
- Cloud Functions Status - Sind die Zahlungsfunktionen deployed?
- Webhook-URLs - Die URLs fuer Stripe und PayPal Webhooks
- Setup-Checkliste - Dein Fortschritt auf einen Blick
Service Account
Section titled “Service Account”Was ist ein Service Account?
Section titled “Was ist ein Service Account?”Ein Service Account ist ein spezieller Zugang zu deinem Firebase-Projekt. Er ermoeglicht der BLOCQ App, Zahlungsfunktionen in deinem Namen zu deployen und API-Schluessel sicher zu speichern.
Status-Anzeige
Section titled “Status-Anzeige”| Status | Bedeutung | Farbe |
|---|---|---|
| Bereit | Service Account konfiguriert und validiert | Gruen |
| Nicht validiert | Service Account vorhanden, aber nicht geprueft | Orange |
| Fehlt | Kein Service Account eingerichtet | Rot |
Service Account einrichten
Section titled “Service Account einrichten”Falls noch kein Service Account vorhanden ist:
- Tippe auf Service Account einrichten
- Du wirst zu den Firebase-Einstellungen weitergeleitet
- Folge den Anweisungen, um einen Service Account zu erstellen
- Lade die JSON-Datei herunter und importiere sie
- Der Status sollte nun Bereit anzeigen
Cloud Functions
Section titled “Cloud Functions”Was sind Cloud Functions?
Section titled “Was sind Cloud Functions?”Cloud Functions sind kleine Programme, die auf Firebase-Servern laufen. Sie verarbeiten Zahlungen sicher im Hintergrund - deine geheimen API-Schluessel bleiben dabei immer auf dem Server.
Deployed Functions
Section titled “Deployed Functions”Nach erfolgreichem Deployment sind folgende Functions verfuegbar:
| Function | Beschreibung |
|---|---|
createPaymentIntent | Erstellt eine Zahlungsanfrage bei Stripe |
stripeWebhook | Empfaengt Zahlungsbestatigungen von Stripe |
createRefund | Erstattet Zahlungen |
savePaymentSecrets | Speichert API-Schluessel sicher |
createPayPalOrder | Erstellt eine PayPal-Bestellung |
capturePayPalOrder | Bestaetigt eine PayPal-Zahlung |
paypalWebhook | Empfaengt Bestatigungen von PayPal |
Cloud Functions deployen
Section titled “Cloud Functions deployen”- Stelle sicher, dass der Service Account bereit ist
- Tippe auf Functions deployen
- Warte, bis der Deployment-Prozess abgeschlossen ist (ca. 1-2 Minuten)
- Bei Erfolg erscheint eine gruene Bestaetigung
- Die Webhook-URLs werden nun angezeigt
Status-Anzeige
Section titled “Status-Anzeige”| Status | Bedeutung | Aktion |
|---|---|---|
| Cloud Functions aktiv | Alles bereit, Zahlungen moeglich | - |
| Nicht deployed | Functions muessen deployed werden | Tippe auf “Functions deployen” |
| Deployment laeuft | Wird gerade installiert | Warten |
Webhook-URLs
Section titled “Webhook-URLs”Was sind Webhooks?
Section titled “Was sind Webhooks?”Webhooks sind Benachrichtigungen, die Stripe und PayPal an deine App senden, wenn eine Zahlung erfolgreich war (oder fehlgeschlagen ist). Ohne Webhooks weiss deine App nicht, ob eine Zahlung durchgegangen ist.
URLs nach Deployment
Section titled “URLs nach Deployment”Nach dem Deployment werden dir zwei URLs angezeigt:
| Webhook | URL-Format |
|---|---|
| Stripe | https://europe-west1-{projektId}.cloudfunctions.net/stripeWebhook |
| PayPal | https://europe-west1-{projektId}.cloudfunctions.net/paypalWebhook |
Webhook bei Stripe einrichten
Section titled “Webhook bei Stripe einrichten”- Kopiere die Stripe Webhook URL (Kopiersymbol)
- Oeffne das Stripe Dashboard
- Klicke auf Endpoint hinzuefuegen
- Fuege die kopierte URL ein
- Waehle die Events aus:
payment_intent.succeededpayment_intent.payment_failedcharge.refunded
- Klicke auf Endpoint hinzufuegen
- Kopiere das Webhook Secret (whsec_…)
- Gib es im Stripe-Tab des Editors ein
Webhook bei PayPal einrichten
Section titled “Webhook bei PayPal einrichten”- Kopiere die PayPal Webhook URL
- Oeffne das PayPal Developer Dashboard
- Waehle deine App aus
- Gehe zu Webhooks und klicke auf Add Webhook
- Fuege die kopierte URL ein
- Waehle die Events aus:
PAYMENT.CAPTURE.COMPLETEDPAYMENT.CAPTURE.DENIEDPAYMENT.CAPTURE.REFUNDED
- Klicke auf Save
Setup-Checkliste
Section titled “Setup-Checkliste”Am Ende des Setup-Tabs findest du eine Checkliste, die deinen Fortschritt zeigt:
| Punkt | Beschreibung |
|---|---|
| Service Account konfiguriert | Service Account ist eingerichtet und validiert |
| Cloud Functions deployed | Alle Payment Functions sind installiert |
| Zahlungsanbieter aktiviert | Mindestens Stripe oder PayPal ist aktiv |
| API Keys konfiguriert | Die geheimen Schluessel sind gespeichert |
Wenn alle Punkte abgehakt sind, erscheint die Meldung Zahlungen sind bereit!
Haeufige Probleme
Section titled “Haeufige Probleme””Service Account nicht validiert”
Section titled “”Service Account nicht validiert””Loesung: Gehe zu den Firebase-Einstellungen und validiere deinen Service Account erneut. Pruefe, ob die JSON-Datei korrekt importiert wurde.
”Deployment fehlgeschlagen”
Section titled “”Deployment fehlgeschlagen””Moegliche Ursachen:
- Service Account ist nicht korrekt konfiguriert
- Keine Internetverbindung
- Firebase-Projekt hat nicht genuegend Berechtigungen
Loesung: Pruefe den Service Account und versuche es erneut.
”Webhook-URLs werden nicht angezeigt”
Section titled “”Webhook-URLs werden nicht angezeigt””Loesung: Die URLs erscheinen erst nach erfolgreichem Deployment der Cloud Functions. Deploye zuerst die Functions.
Naechste Schritte
Section titled “Naechste Schritte”Nach erfolgreichem Setup:
- Gehe zum Anbieter-Tab und aktiviere Stripe und/oder PayPal
- Konfiguriere die API-Schluessel im Stripe- oder PayPal-Tab
- Richte die Webhooks bei Stripe/PayPal ein (siehe oben)
- Teste eine Zahlung im Testmodus