Weiter zum Inhalt
Konto erstellen
oder
anmelden
Das Logo der Stripe-Dokumentation
/
KI fragen
Konto erstellen
Anmelden
Jetzt starten
Zahlungen
Finanzautomatisierung
Plattformen und Marktplätze
Geldmanagement
Entwickler-Tools
Jetzt starten
Zahlungen
Finanzautomatisierung
Jetzt starten
Zahlungen
Finanzautomatisierung
Plattformen und Marktplätze
Geldmanagement

OAuth mit Standard-Konten verwenden

Verwenden Sie den OAuth-Verbindungsvorgang, um einem/einer Stripe-Nutzer/in zu erlauben, sich mit Ihrer Plattform zu verbinden.

Für neue Connect-Plattformen wird OAuth nicht empfohlen. Wir empfehlen stattdessen, Connect-Onboarding für Standard-Konten zu verwenden.

Ab Juni 2021 werden Plattformen, die OAuth mit read_write verwenden, keine Verbindung zu Standard-Konten mehr herstellen können, die von einer anderen Plattform gesteuert werden.

Für Erweiterungen wird es keine Änderungen hinsichtlich des Verhaltens von OAuth geben. Erfahren Sie hier mehr zu OAuth-Änderungen für über Plattformen gesteuerte Standard-Plattformen.

Der OAuth-Verbindungsvorgang

Ein/e Nutzer/in verbindet sich mithilfe des OAuth-Verbindungsvorgangs mit Ihrer Plattform:

  1. Von einer Seite auf Ihrer Website aus klickt der/die Nutzer/in einen Link an, der ihn/sie an Stripe weiterleitet und dabei wird die client_id Ihrer Plattform weitergegeben.
  2. Auf der Website von Stripe stellt der/die Nutzer/in die Informationen bereit, die erforderlich sind, um sich mit Ihrer Plattform zu verbinden.
  3. Der/die Nutzer/in wird zusammen mit einem Autorisierungscode auf Ihre Seite umgeleitet.
  4. Ihre Seite führt dann eine Anfrage an den OAuth-Token-Endpoint von Stripe aus, um die Verbindung abzuschließen und die Konto-ID des Nutzers/der Nutzerin abzurufen.

Notiz

Denken Sie daran, dass die Daten, die Sie als Plattform für ein Konto erstellen (z. B. Zahlungen, Kundinnen/Kunden, Rechnungen usw.) in den Stripe-Konten sichtbar sind. Wenn diese sich mit anderen Plattformen verbinden, können diese Plattformen ebenfalls auf diese Daten zugreifen.

Erstellen Sie den OAuth-Link

Erstellen eines verbundenen Kontos ohne Code

In diesem Leitfaden erfahren Sie, wie Sie Coding zum Erstellen eines verbundenen Kontos verwenden. Wenn Sie noch nicht bereit für die Integration sind, können Sie zunächst ein verbundenes Konto über das Dashboard erstellen.

Gehen Sie zu Ihren Connect OAuth-Onboarding-Optionen, um Ihre Integration zu starten und:

  • Ermöglichen Sie das Onboarding von Konten mit OAuth in den OAuth-Einstellungen.
  • Kopieren Sie Ihre client_id, eine eindeutige Kennung für Ihre Plattform, die von Stripe generiert wird.
  • Legen Sie Ihren redirect_uri fest, die URL, auf die Ihr/e Nutzer/in umgeleitet wird, nachdem er/sie sein/ihr Konto verbunden hat. Sie müssen alle Weiterleitungs-URLs in Ihren Plattformeinstellungen angeben. Wenn Sie den Parameter redirect_uri nicht in Ihre Anfrage aufnehmen, verwendet Stripe standardmäßig die erste Adresse, die Sie in Ihren Plattformeinstellungen konfiguriert haben.

Stripe bietet auch eine client_id, um beim Testen zu helfen. Jede client_id ist entweder eine Live- oder eine Test-ID. Verwenden Sie eine Sandbox-client_id, um eine Verbindung zu einem Sandbox-Konto herzustellen.

Mit diesen Informationen können Sie nun den OAuth-Link erstellen. Wir empfehlen, die Schaltfläche Mit Stripe verbinden anzuzeigen, die Nutzer/innen an den authorize_url-Endpoint sendet:

https://connect.stripe.com/oauth/authorize?response_type=code&client_id=ca_FkyHCg7X8mlvCUdMDao4mMxagUfhIwXb&scope=read_write

Der Stripe-Endpoint sollte mindestens diese drei Parameter empfangen:

  1. response_type, mit einem Wert von code
  2. Ihre client_id
  3. scope mit einem Wert von read_write

Der Parameter scope bestimmt, was Ihre Plattform im Auftrag des verbundenen Kontos tun kann, wobei standardmäßig read_only eingestellt ist.

Um CSRF-Angriffe zu verhindern, fügen Sie den Parameter state hinzu und übergeben Sie ein einmaliges Token als Wert. Wir nehmen diesen state-Wert auf und senden den/die Nutzer/in zurück auf Ihre Seite. Ihre Seite sollte dann bestätigen, dass der state-Parameter nicht geändert wurde.

So können Sie Ihrem/Ihrer Nutzer/in die Beispiel-URL zusammen mit unserer Verbinden mit Stripe-Schaltfläche präsentieren, um den Verbindungsaufbau zu starten:

Verbinden mit

Onboarding mithilfe von OAuth-Parametern anpassen

Sie können das Verhalten des Onboarding-Vorgangs ändern, indem Sie zusätzliche URL-Parameter in Ihrem OAuth-Link einfügen. Eine vollständige Liste verfügbarer Parameter finden Sie in der OAuth-Referenz.

Nutzer/in erstellt sein/ihr Konto

Nachdem der/die Nutzer/in den Link auf Ihrer Seite anklickt, wird er/sie zur Website von Stripe geleitet. Dort wird er/sie aufgefordert, die Verbindung zu Ihrer Plattform zu genehmigen oder abzulehnen.

Die Erstellung eines Stripe-Kontos ist in unseren Autorisierungsprozess integriert. Sie müssen sich keine Gedanken darüber machen, ob Ihre Nutzer/innen bereits Konten haben oder nicht.

Der/die Nutzer/in ist angemeldet und kann ein Konto auswählen, das direkt mit Ihrer Plattform verbunden wird.

Der/die Nutzer/in muss ein Konto erstellen.

Nutzer/in wird auf Ihre Seite zurückgeleitet

Nachdem ein/e Nutzer/in sein/ihr neu erstelltes Konto mit Ihrer Plattform verbunden hat, wird er/sie zu Ihrer Website zurückgeleitet, und zwar zu der als redirect_uri Ihrer Plattform eingerichteten URL.

Bei erfolgreicher Verbindung werden folgende Werte in der URL übergeben:

  • Der zugestandene scope
  • Der Wert state, falls angegeben
  • Ein Autorisierungs-Code. Der Autorisierungs-Code gilt nur kurze Zeit und kann in der im nächsten Schritt beschriebenen POST-Anfrage nur einmalig verwendet werden.
https://connect.stripe.com/connect/default/oauth/test?scope=read_write&code={AUTHORIZATION_CODE}

Wenn der/die Nutzer/in die Autorisierung verweigert hat, wird er/sie trotzdem auf Ihre Website zurückgeleitet, aber die URL enthält statt des Autorisierungscodes einen Fehler.

https://connect.stripe.com/connect/default/oauth/test?error=access_denied&error_description=The%20user%20denied%20your%20request

Die Plattform schließt die Verbindung des Kontos ab

Fügen Sie den angegebenen Autorisierungs-code in einer POST-Anfrage an den Token-Endpoint von Stripe ein, um die Verbindung abzuschließen und die Konto-ID des Nutzers/der Nutzerin abzurufen:

Command Line
curl
curl https://connect.stripe.com/oauth/token \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "code"="ac_123456789" \ -d "grant_type"="authorization_code"

Beachten Sie, dass Sie diese Anfrage mit Ihrem geheimen Live- oder Test-API-Schlüssel stellen, je nachdem, ob Sie einen Live- oder Test-Zugriffs-Token zurückerhalten möchten.

Stripe gibt eine Antwort zurück, die die Konto-ID (stripe_user_id) für den/die Nutzer/in enthält.

{ "token_type": "bearer", "scope": "read_write", "livemode": false, "stripe_user_id":
"{{CONNECTED_ACCOUNT_ID}}"
, }

Falls ein Problem auftritt, wird stattdessen eine Fehlermeldung zurückgegeben:

{ "error": "invalid_grant", "error_description": "Authorization code does not exist: {AUTHORIZATION_CODE}" }

Fertig! Der/die Nutzer/in ist jetzt mit Ihrer Plattform verbunden. Speichern Sie die stripe_user_id in Ihrer Datenbank. Dies ist die Stripe-Konto-ID für das neue Konto. Verwenden Sie diesen Wert für die Authentifizierung als das verbundene Konto, indem Sie ihn an die Anfragen im Stripe-Account-Header übergeben.

Sie sollten erwägen, in Ihrem Anmeldeformular eine spezielle OAuth-Client-Bibliothek zu verwenden, um diese Schritte zu vereinfachen. Eine OAuth-Bibliothek für Ihre Sprache oder Ihr Framework finden Sie in der Liste der Client-Bibliotheken auf der OAuth-Website.

Mit dem refresh_token können Sie Test-Zugriffs-Token für eine client_id in Produktion erstellen oder Ihren Zugriffs-Token zu rollieren. Auch diesen Wert sollten Sie beibehalten, da Sie ihn erst nach dieser ersten POST-Anfrage abrufen können.

Notiz

Speichern Sie die erhaltene Konto-ID. Plattformen benötigen diese Informationen, um Anfragen im Auftrag des Nutzers/der Nutzerin durchzuführen.

Widerruf und Entzug des Zugriffs

Das Ereignis account.application.deauthorized tritt auf, wenn ein/e Nutzer/in Ihre Plattform von seinem/ihrem Konto trennt. Durch Beobachten dieses Ereignisses über Webhooks können Sie alle erforderlichen Cleanups Ihrer Server durchführen.

Um die Verbindung eines Kontos mit Zugriff auf das Stripe-Dashboard von Ihrer Plattform zu trennen, übergeben Sie Ihre client_id und die ID des verbundenen Kontos per POST an connect.stripe.com/oauth/deauthorize:

Command Line
curl
curl https://connect.stripe.com/oauth/deauthorize \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d client_id="ca_FkyHCg7X8mlvCUdMDao4mMxagUfhIwXb" \ -d stripe_user_id=acct_ON3nXtRQkhmUIQ

Sie können die API im Auftrag Ihres Nutzers/Ihrer Nutzerin verwenden, um Zahlungen anzunehmen, eine wiederkehrende Abrechnung einzurichten, Kontodaten abzurufen usw.

Siehe auch

  • Authentifizierung
  • Referenz für OAuth
  • Vollständige API-Dokumentation
War diese Seite hilfreich?
JaNein
Benötigen Sie Hilfe? Kontaktieren Sie den Kundensupport.
Nehmen Sie an unserem Programm für frühzeitigen Zugriff teil.
Schauen Sie sich unser Änderungsprotokoll an.
Fragen? Sales-Team kontaktieren.
LLM? Lesen Sie llms.txt.
Unterstützt von Markdoc