Integrieren Sie das Kundenportal mit der API
Erfahren Sie, wie Sie das Kundenportal mit der Stripe-API integrieren.
Jetzt starten
Mit dem Kundenportal bieten Sie Ihren Kund/innen Verwaltung von Abonnements, Abrechungs- und Rechnungsdetails, ohne sie selbst entwickeln zu müssen. Nachdem Sie das Portal konfiguriert und integriert haben, werden Kund/innen zu einem Dashboard mit Co-Branding weitergeleitet. Dort können sie ihr Konto verwalten und Funktionen nutzen, die Sie vorher konfiguriert haben.
So integrieren Sie Ihre Anwendung in das Kundenportal:
- Konfigurieren Sie die Funktionen und die Nutzeroberfläche (UI) des Portals. Dies können Sie im Dashboard tun.
- Implementieren Sie eine Weiterleitung, um das Portal in Ihre Anwendung zu integrieren.
- Überwachen Sie Webhooks, um bei Änderungen an Kundenabonnements und Zahlungsmethoden informiert zu werden.
- Gehen Sie live, um das Portal in Ihrer Produktionsumgebung zu verwenden.
Oder klonen Sie eines unserer Beispielprojekte:
Sie können Portalsitzungen optional so anpassen, dass unterschiedliche Funktionen je nach Kundin/Kunde zur Verfügung stehen.
Konfigurieren Sie das Portal
Zunächst benötigen Sie ein Stripe Konto. Jetzt registrieren.
Bevor Sie das Kundenportal integrieren, konfigurieren Sie dessen Funktionalität und Branding im Dashboard , um zu definieren, was Ihre Nutzer/innen mit dem Portal tun können. Die Funktionen hängen von Ihrem Produkt- und Preiskatalog ab, daher gibt es unterschiedliche Einstellungen für den Live- und den Test-Modus.
Häufiger Fehler
Wenn Sie das Kundenportal in Verbindung mit Stripe Connect nutzen, müssen Sie darauf achten, dass Sie das Kundenportal für die Plattform und nicht für ein verbundenes Konto konfigurieren.
Wenn Sie mehrere Portalkonfigurationen für verschiedene Kundengruppen erstellen möchten oder wenn Sie eine Connect-Plattform haben und die Konfigurationen für Ihre verbundenen Konten verwalten möchten, können Sie dafür die API nutzen.
Produktkatalog einrichten
Wenn Sie Kundinnen und Kunden gestatten, Upgrades oder Downgrades durchzuführen oder die Mengen ihrer Abonnements zu ändern, müssen Sie auch einen Produktkatalog einrichten. Dieser umfasst die Produkte und Preise, auf die Ihre Kundinnen und Kunden ein Upgrade oder Downgrade durchführen können, sowie die Abonnements, für die sie Mengen ändern können. Weitere Informationen zum Erstellen von Produkten und Preisen finden Sie im Leitfaden. Wenn Sie das Kundenportal nur für die Rechnungsstellung verwenden, müssen Sie keinen Produktkatalog einrichten.
Das Portal zeigt die folgenden Attribute Ihres Produktkatalogs an:
- Name und Beschreibung des Produkts: Diese Attribute sind im Dashboard und über die API bearbeitbar.
- Mengenbeschränkungen pro Produkt: Diese Attribute sind im Dashboard bearbeitbar.
- Preis, Währung und Abrechnungsintervall – Diese Attribute sind unveränderbar und werden nur einmal bei der Erstellung im Dashboard und in der API festgelegt.
Erfassung von Steuer-IDs aktivieren
Wenn Sie Stripe Tax verwenden, um automatisch Steuern für Abonnements oder Rechnungen einzuziehen, können Sie Kund/innen erlauben, ihre Steuer-IDs im Kundenportal festzulegen und zu aktualisieren. Stripe Billing fügt die Steuer-IDs zu den Rechnungen des/der Kund/in hinzu. Aktivieren Sie dies in den Kundenportaleinstellungen und schalten Sie Steuer-ID ein. Weitere Informationen finden Sie unter „So funktionieren Steuer-IDs mit Abonnements und Rechnungen.
Hier erfahren Sie, wie Sie Stripe Tax einrichten, Steuern für wiederkehrende Zahlungen erheben, Steuern in Ihren nutzerdefinierten Zahlungsabläufen einziehen und Steuersätze für Posten und Rechnungen festlegen.
Vorschau und Test
Während Sie Ihre Einstellungen konfigurieren, können Sie eine Vorschau des Portals sehen, indem Sie auf Vorschau klicken. Dadurch wird eine schreibgeschützte Version des Portals geöffnet, die das Verwalten von Abonnements und Rechnungsdaten aus Kundensicht zeigt.
Nachdem Sie Ihre Einstellungen gespeichert haben, können Sie das Portal starten und im Test-Modus mit einer Kundin/einem Kunden ausprobieren. Navigieren Sie im Dashboard zu einer Kundin/einem Kunden, klicken Sie auf die Schaltfläche Aktionen und wählen Sie anschließend Kundenportal öffnen.
Die Vorschau des Portals als schreibgeschützte Version ist nur verfügbar, wenn Ihr Dashboard im Test-Modus ist. Wenn Sie im Dashboard keine Vorschau des Portals ansehen und testen können, überprüfen Sie Ihre Einstellungen, um sicherzustellen, dass Ihre Konfiguration im Test-Modus gespeichert ist. Damit die Vorschau und das Testen funktionieren, müssen Sie auch über Bearbeitungsberechtigungen im Dashboard verfügen.
Weiterleitung auf Ihrer Seite implementierenClientseitigServerseitig
Eine Portalsitzung dient als Einstiegspunkt in das Kundenportal. Sie liefert einen eindeutigen, temporären Link zum Portal. Wenn Kund/innen ihre Rechnungen oder Abrechnung verwalten möchten, können Sie eine neue Portalsitzung erstellen und die Kund/innen zur url
der Sitzung weiterleiten.
Fügen Sie auf Ihrer Website eine Schaltfläche hinzu, über die die Kund/innen das Portal aufrufen können. Verwenden Sie eine POST-Anfrage, um eine Portalsitzung zu erstellen:
<form method="POST" action="/create-customer-portal-session"> <button type="submit">Manage billing</button> </form>
Fügen Sie als Nächstes einen Endpoint hinzu, über den eine Portalsitzung erstellt wird und Ihre Kund/innen weitergeleitet werden. Authentifizieren Sie Kund/innen auf Ihrer Website, bevor Sie Sitzungen für sie erstellen. Zum Erstellen einer Sitzung benötigen Sie die ID der Kundin/des Kunden und eine return_
, die erforderlich ist, falls in der Dashboard-Konfiguration keine Standard-Rückgabe-URL festgelegt ist.
Wenn Sie eine Portalsitzung erstellen, gibt Stripe das portal session object
zurück, das die kurzlebige URL der Sitzung enthält, die Ihre Kund/innen für den Zugriff auf das Kundenportal verwenden.
Webhooks abhörenServerseitig
Wenn der Abonnementumfang geändert oder Abonnements gekündigt werden, müssen Sie sicherstellen, dass die Kund/innen danach nur Zugriff auf die Produkte oder Dienste haben, die sie tatsächlich abonniert haben. Über Webhooks benachrichtigt Stripe Ihre Integration über diese Änderungen. Sehen Sie sich im Event
-Objekt die ID für das Abonnement oder die Kundin/den Kunden an, um herauszufinden, für welche Kundin/welchen Kunden das Ereignis gilt.
Stripe benachrichtigt Ihre Integration auch über Webhooks, wenn eine Rechnung bezahlt wird. Sehen Sie sich im Event
-Objekt die ID für die Rechnung oder die Kundin/den Kunden an, um herauszufinden, für welche Kundin/welchen Kunden das Ereignis gilt.
Wenn Sie noch keinen Webhook-Endpoint für Stripe eingerichtet haben, können Sie die Dokumentation zu Webhooks von Stripe lesen, um loszulegen und über die beschriebenen Ereignisse informiert zu werden.
Ereignis | Beschreibung |
---|---|
Beobachten Sie dies, um Abonnement-Upgrades und -Downgrades zu überwachen. Überprüfen Sie für Upgrades die Eigenschaft Wenn eine Kundin/ein Kunde den Preisplan für ein Abonnement innerhalb eines Testabonnements ändert, endet das Testabonnement sofort beim Wechsel zum neuen Preis. | |
customer.subscription.updated | Beobachten Sie dies, um Änderungen an der Abonnementmenge zu überwachen. Wenn Sie dieses Ereignis erhalten, prüfen Sie das Attribut subscription. , um die Abonnementmenge der Kundin/des Kunden herauszufinden. Gewähren Sie dann Zugriff auf die neue Menge. |
Beobachten Sie dies, um Abonnementkündigungen zu überwachen. Wenn Sie dieses Ereignis erhalten, entziehen Sie dem/der Kund/in den Zugriff auf das Produkt. Falls das Portal so konfiguriert ist, dass Abonnements zum Ende eines Abrechnungszeitraums gekündigt werden, überwachen Sie auf das Ereignis customer.subscription.updated, um rechtzeitig über Kündigungen informiert zu werden. Wenn Falls die Kund/innen ihre Meinung ändern, können sie ihre Abonnements vor Ende des Abrechnungszeitraums reaktivieren. In diesem Fall wird das Ereignis customer.subscription.updated übermittelt. Wenn | |
payment_method.attached | Tritt auf, wenn ein/e Kund/in eine Zahlungsmethode hinzufügt. |
payment_method.detached | Tritt auf, wenn ein/e Kund/in eine Zahlungsmethode entfernt. |
customer.updated | Überprüfen Sie die Eigenschaft invoice_ , um die Zahlungsmethode zu finden, die ein/e Kund/in als neue Standardzahlungsmethode ausgewählt hat. Wenn Sie Abonnements haben, die die Standardzahlungsmethode auf Kundenebene außer Kraft setzen, können Kund/innen diese Außerkraftsetzung entfernen. Überprüfen Sie das Attribut default_ des Abonnements, wenn Sie dieses Ereignis erhalten, um festzustellen, ob die Außerkraftsetzung entfernt wurde. Verwenden Sie diesen Webhook, um alle relevanten Informationen in Ihrer Datenbank zu aktualisieren. Alle Aktualisierungen dürfen nur als Änderungen der Rechnungsinformationen behandelt werden. Verwenden Sie die Rechnungs-E-Mail-Adresse des/der Kund/in nicht als Anmeldedaten. |
customer.tax_id.created | Tritt auf, wenn Kund/innen ihre Steuer-IDs verwalten. Stripe kann einige Arten von Steuer-IDs validieren. Weitere Informationen finden Sie im Leitfaden zu Steuer-IDs. |
customer.tax_id.deleted | Tritt auf, wenn Kund/innen ihre Steuer-IDs verwalten. Stripe kann einige Arten von Steuer-IDs validieren. Weitere Informationen finden Sie im Leitfaden zu Steuer-IDs. |
customer.tax_id.updated | Beobachten Sie dies, um Validierungs-Updates zu Steuer-IDs von Kund/innen zu erhalten. Weitere Informationen finden Sie im Leitfaden zu Steuer-IDs. |
billing_portal.configuration.created | Tritt auf, wenn eine Konfiguration erstellt wird. |
billing_portal.configuration.updated | Tritt auf, wenn eine Konfiguration aktualisiert wird. |
billing_portal.session.created | Tritt auf, wenn eine Portalsitzung erstellt wird. |
Live gehen
Testen Sie das Portal, bevor Sie es in den Produktionsbetrieb integrieren. Führen Sie folgende Schritte aus, wenn Sie bereit für das Go-Live sind:
Wenn Sie eine Portalsitzung erstellen, gibt Stripe das portal session
-Objekt zurück, das die kurzlebige URL der Sitzung enthält, die Ihre Kundinnen/Kunden für den Zugriff auf das Kundenportal verwenden müssen. Sie können auch einen gemeinsam nutzbaren Link für jede Konfiguration des Portals mit dem Parameter login_page erstellen.
- Deaktivieren Sie Testdaten anzeigen im Dashboard.
- Konfigurieren Sie das Portal im Live-Modus.
- Fügen Sie die Webhooks im Live-Modus hinzu.
Bei Stripe gibt es zwei verschiedene Arten von Portalkonfigurationen: eine für den Live-Modus und eine für den Test-Modus. Damit Sie die Integration problemlos testen können, wirken sich Änderungen in einem Modus nicht auf die Konfiguration im anderen Modus aus.