# Migrieren von Konten zu Stripe Beginnen Sie mit der Verarbeitung von Konten auf Stripe, ohne Zahlungen zu unterbrechen. Sie können ein bestehendes Unternehmen für Mehrparteien-Zahlungen zu Stripe migrieren, einschließlich historischer Zahlungen und Kundinnen und Kunden. Je nach Art Ihres Unternehmens können Sie einen *Marktplatz* oder eine *SaaS-Plattform* (A Software as a Service (SaaS) Connect platform that provides Stripe products and services to its connected accounts) einrichten. Um zu einer Connect-Integration zu migrieren und *verbundene Konten* für Ihre Client-Unternehmen zu konfigurieren, gehen Sie wie folgt vor: 1. Migrationsplan und Zeitplan erstellen 1. Integration für verbundene Konten aktualisieren 1. Erstellung und Onboarding von Konten 1. Umgang mit ausstehenden und laufenden Anforderungen 1. Zahlungs- und Kundendaten zu Stripe übertragen ## Migrationsplan erstellen Für eine erfolgreich Migration zu Stripe sind ein Migrationsplan, einen Zeitplan und KYC-Informationen für verbundene Konten sowie Zahlungs- und Kundendaten erforderlich. Verbundene Konten müssen das Onboarding bei Stripe durchlaufen, was die Übermittlung von KYC-Daten (Know Your Customer) erfordert. Stripe benötigt deshalb manchmal zusätzliche Informationen von Ihren Konten. Führen Sie eine Analyse durch, um zu ermitteln, welche Daten Ihr bisheriger Anbieter erfasst hat und welche Daten Stripe benötigt. Stripe verifiziert die KYC-Daten, bevor verbundene Konten aktiviert werden. Den Verifizierungsstatus des Kontos können Sie über das Ereignis [account.updated](https://docs.stripe.com/api/events/types.md#event_types-account.updated) oder die [Retrieve Account](https://docs.stripe.com/api/account/retrieve.md) API überwachen. Für Konten, die nicht verifiziert werden können, sind vor der Aktivierung weitere Maßnahmen erforderlich. Fügen Sie ein festes Umstellungsdatum für die Zahlungsdaten ein, nachdem Sie die Konten zu Stripe übertragen haben. Für die Zahlungs- und Kundendaten ist im Rahmen der Umstellung [ein PAN-Import](https://docs.stripe.com/get-started/data-migrations/pan-import.md) erforderlich. Wir empfehlen, die Konten in Batches zu importieren. ## Ihre Integration aktualisieren An Ihrer Anwendung sind im Rahmen der Integrationsaktualisierungen möglicherweise Änderungen erforderlich für die Migration zu Stripe. Sie müssen dabei beispielsweise auch an Änderungen an der Nutzung Ihrer Plattform durch Ihre verbundenen Konten, wie z. B. Preisaktualisierungen denken. Stripe empfiehlt, Ihren Konten alle Änderungen im Voraus mitzuteilen. ### Allgemeine Geschäftsbedingungen von Stripe Ihre verbundenen Konten müssen den allgemeinen Geschäftsbedingungen von Stripe zustimmen, bevor sie aktiviert werden können. Bei Konten, bei denen Stripe dafür verantwortlich ist, aktualisierte Informationen zu erfassen, wenn Anforderungen fällig sind oder sich ändern (einschließlich Standard- und Express-Konten), akzeptiert das Konto die allgemeinen Geschäftsbedingungen von Stripe als Teil des Onboarding-Ablaufs. Wenn Ihre Plattform bei Änderungen der Anforderungen dafür verantwortlich ist, von einem verbundenen Konto (einschließlich Custom-Konten) [aktualisierte Informationen zu erfassen](https://docs.stripe.com/connect/required-verification-information.md)können Sie die [Allgemeinen Geschäftsbedingungen von Stripe in Ihre eigenen Nutzungsbedingungen integrieren](https://docs.stripe.com/connect/updating-service-agreements.md#adding-stripes-service-agreement-to-your-terms-of-service). Wir empfehlen, die Zustimmung zu den Bedingungen am Ende Ihres Onboarding-Ablaufs zu platzieren. Wenn es für Ihr Unternehmen sinnvoller ist, können Sie diese jedoch auch an den Anfang stellen. Wenn Sie verbundene Konten erstellen oder aktualisieren, zeichnen Sie die Zustimmung zu den [aktualisierten AGB-Informationen](https://docs.stripe.com/api/accounts/update.md#update_account-tos_acceptance) auf und senden diese an Stripe. Teilen Sie dies den Konten unbedingt vorab mit. ### Verbundene Konten zum Onboarding bei Stripe einladen Stripe bietet Ihren verbundenen Konten Onboarding-Support auf unterschiedlichem Niveau. Erstellen Sie mit einer der folgenden Methoden einen Onboarding-Ablauf für Ihre verbundenen Konten: | Methode | Vorteile | Nachteile | | ----------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [Von Stripe gehostetes Onboarding](https://docs.stripe.com/connect/custom/onboarding.md#stripe-hosted-onboarding) | - Integration mit geringstem Aufwand | - Stripe-Branding mit eingeschränktem Plattform-Branding - Eingeschränkte Kontrolle über die Ablauflogik - Verbundene Konten werden zu Stripe weitergeleitet, anstatt den Vorgang abzuschließen, ohne Ihre Website zu verlassen | | [Eingebettetes Onboarding](https://docs.stripe.com/connect/custom/onboarding.md#embedded-onboarding) | - [Kann an Ihr Branding angepasst werden](https://docs.stripe.com/connect/customize-connect-embedded-components.md) - Eingeschränktes oder kein Stripe-Branding - Verbundene Konten verbleiben auf Ihrer Website - Integration mit geringem Aufwand | - Eingeschränkte Kontrolle über die Ablauflogik | | [API-basiertes Onboarding](https://docs.stripe.com/connect/custom/onboarding.md#api-based-onboarding) | - Vollständige Kontrolle über Ihre eigene Nutzeroberfläche | - Kostspielige und zeitaufwändige Entwicklung - Anhaltend hoher Wartungsaufwand, insbesondere um den sich ändernden globalen Anforderungen zu entsprechen - Stripe-Risikoprüfungen können nicht gelöst werden | ## Erstellung und Onboarding von Konten Der Vorgang läuft so ab: (See full diagram at https://docs.stripe.com/connect/migrate-to-stripe) ### Kontoanforderungen festlegen Die folgenden Faktoren wirken sich auf die [Onboarding-Anforderungen](https://docs.stripe.com/connect/required-verification-information.md) für Ihre verbundenen Konten aus: - Das Ursprungsland der verbundenen Konten - [Art des Rahmenvertrags](https://docs.stripe.com/connect/service-agreement-types.md), der für die verbundenen Konten gilt - Für die verbundenen Konten angeforderte [Funktionen](https://docs.stripe.com/connect/account-capabilities.md) - Der [business_type](https://docs.stripe.com/api/accounts/object.md#account_object-business_type) (zum Beispiel Einzelperson oder Unternehmen) und die [company.structure](https://docs.stripe.com/api/accounts/object.md#account_object-company-structure) (zum Beispiel `public_corporation` oder `private_partnership`) Verwenden Sie das Tool für [erforderliche Verifizierungsinformationen](https://docs.stripe.com/connect/required-verification-information.md), um zu sehen, wie sich Änderungen an diesen Faktoren auf die Onboarding-Anforderungen für Ihre verbundenen Konten auswirken. ### Verbundenes Konto erstellen Erstellen Sie für jedes Konto, das zu Stripe übertragen werden soll, ein zugehöriges Konto. Erstellen Sie ein verbundenes Konto, in dem Sie alle gewünschten Kontoeinstellungen festlegen können. Sie können alle Informationen vorab ausfüllen, müssen jedoch die `controller` properties angeben. Das Land des Kontos ist standardmäßig dasselbe Land wie das Ihrer Plattform und das Konto bestätigt die Auswahl während der Onboarding-Phase. > Dieses Beispiel enthält nur einige der Eigenschaften, die Sie beim Erstellen eines Kontos festlegen können. Eine vollständige Liste der Eigenschaften, die Sie festlegen können, wie etwa Adress- und URL-Informationen, finden Sie unter [Konto erstellen ](https://docs.stripe.com/api/v2/core/accounts/create.md)[Konto erstellen](https://docs.stripe.com/api/accounts/create.md). ```curl curl https://api.stripe.com/v1/accounts \ -u "<>:" \ -d "controller[fees][payer]=account" \ -d "controller[losses][payments]=stripe" \ -d "controller[stripe_dashboard][type]=none" \ -d "controller[requirement_collection]=stripe" \ -d country=US \ -d "capabilities[card_payments][requested]=true" \ -d "capabilities[transfers][requested]=true" ``` Falls Sie bereits Informationen für Ihre verbundenen Konten erfasst haben, können Sie diese im `Account`-Objekt vorab angeben. Sie können alle Kontoinformationen vorab ausfüllen, einschließlich persönlicher und geschäftlicher Informationen, externer Kontoinformationen usw. Nachdem Sie das `Account` erstellt haben, erstellen Sie eine [Person](https://docs.stripe.com/api/persons/create.md), die die für die Kontoeröffnung verantwortliche Person repräsentiert, wobei Sie `relationship.representative` auf „true“ setzen und alle Kontoinformationen, die Sie vorab ausfüllen möchten (z. B. Vor- und Nachname), eingeben. ```curl curl https://api.stripe.com/v1/accounts/{{ACCOUNT_ID}}/persons \ -u "<>:" \ -d first_name=Jenny \ -d last_name=Rosen \ -d "relationship[representative]=true" ``` Connect Onboarding fragt keine vorab ausgefüllten Informationen ab. Kontoinhaber/innen müssen vorausgefüllte Informationen jedoch bestätigen, bevor sie den [Connect-Rahmenvertrag](https://docs.stripe.com/connect/service-agreement-types.md) akzeptieren können. Füllen Sie beim Testen Ihrer Integration die Kontoinformationen vorab mit [Testdaten](https://docs.stripe.com/connect/testing.md) aus. Speichern Sie die ID des erstellten `Account`, damit Sie später darauf zurückgreifen können. Nachdem Sie alle bei Stripe vorhandenen Daten aktualisiert haben, suchen Sie nach ausstehenden Anforderungen. Alle ausstehenden Anforderungen werden im Array `currently_due` angezeigt. Alle `currently_due`-Anforderungen müssen vom Konto erfasst werden, bevor Stripe das Konto verifizieren und die Funktionen aktivieren kann. ```json { ... "requirements": { "alternatives": [], "current_deadline": null"currently_due": [ "business_profile.url", "external_account", "individual.first_name", "individual.last_name", "tos_acceptance.date", "tos_acceptance.ip" ], "disabled_reason": "requirements.past_due", "errors": [], "eventually_due": [ "business_profile.url", "external_account", "individual.first_name", "individual.last_name", "individual.id_number", "tos_acceptance.date", "tos_acceptance.ip" ], "past_due": [ "business_profile.url", "external_account", "individual.first_name", "individual.last_name", "tos_acceptance.date", "tos_acceptance.ip" ], "pending_verification": [] }, ... } ``` Nachdem Sie alle vorhandenen Daten für das Konto angegeben haben, leiten Sie dieses zu einer Nutzeroberfläche von Stripe weiter. Dort richtet das Konto die Stripe-Anmeldedaten ein, bestätigt seine Informationen und stimmt den allgemeinen Geschäftsbedingungen von Stripe zu. ### Onboarding für neue Konten durchführen Zusätzlich zur Migration bestehender Konten zu Stripe müssen Sie auch einen Ablauf für das Onboarding neuer Konten einrichten. In diesem Vorgang können Sie außerdem fehlende Daten für Konten erfassen, bei denen die Migration noch aussteht. Überprüfen Sie die [Onboarding-Optionen](https://docs.stripe.com/connect/onboarding.md), um Ihren Onboarding-Ablauf zu erstellen. Speichern Sie die ID des erstellten `Account`, damit Sie später darauf zurückgreifen können. ## Umgang mit ausstehenden und laufenden Anforderungen Nachdem die Daten des verbundenen Kontos übermittelt wurden, verifiziert Stripe diese. Dieser Vorgang kann je nach Art der Verifizierung Minuten oder Stunden dauern. Während der Ausführung dieses Vorgangs befinden sich die angeforderten Funktionen im `status` `pending`. ### Status prüfen Sie können den Status der Funktionen Ihres verbundenen Kontos wie folgt abrufen: - Der [Funktions](https://docs.stripe.com/api/accounts/object.md#account_object-capabilities)-Hash des Account-Objekts wird auf die relevante Funktion hin geprüft. - Funktionen werden direkt von der [Capabilities API](https://docs.stripe.com/api/capabilities/retrieve.md) angefordert und der Status der relevanten Funktion wird überprüft. - [Ereignisse](https://docs.stripe.com/api/events/types.md#event_types-account.updated) des Typs `account.updated` werden in Ihrem [Webhook](https://docs.stripe.com/connect/webhooks.md)-Endpoint überwacht und der Hash `capabilities` wird auf die entsprechende Funktion überprüft. Nachdem die Verifizierungen abgeschlossen sind, wird eine Funktion `active` und steht dem verbundenen Konto zur Verfügung. Kontoverifizierungen werden kontinuierlich durchgeführt, und wenn eine zukünftige Verifizierung fehlschlägt, kann eine Funktion aus dem Status `active` heraus wechseln. Überwachen Sie `account.updated`-Ereignisse, um Änderungen am Funktionsstatus zu erkennen. Bestätigen Sie, dass Ihre Connect-Integration konform und betriebsbereit ist, indem Sie überprüfen, ob `charges_enabled` und `payouts_enabled` für das Konto beide „true“ sind. Sie können die API verwenden oder Ereignisse des Typs `account.updated` überwachen. Details zu anderen relevanten Feldern finden Sie im Hash [Anforderungen](https://docs.stripe.com/api/accounts/object.md#account_object-requirements) des Kontos. Sie können die Integration nicht anhand eines einzelnen Werts bestätigen, da die Status je nach Anwendung und verwandten Richtlinien variieren können. - [charges_enabled](https://docs.stripe.com/api/accounts/object.md#account_object-charges_enabled) bestätigt, dass Ihr vollständiger Zahlungspfad, einschließlich Zahlung und Überweisung, korrekt funktioniert, und prüft, ob die Funktionen `card_payments` oder `transfers` aktiv sind. - [payouts_enabled](https://docs.stripe.com/api/accounts/object.md#account_object-payouts_enabled) gibt Auskunft darüber, ob Ihr verbundenes Konto Auszahlungen an ein externes Konto vornehmen kann. Je nach Ihren Risikorichtlinien können Sie zulassen, dass Ihr verbundenes Konto Transaktionen ausführt, auch wenn es noch keine Auszahlungen aktiviert hat. Sie müssen die [Auszahlungen jedoch zu einem späteren Zeitpunkt aktivieren](https://docs.stripe.com/connect/manage-payout-schedule.md), um Gelder an Ihre verbundenen Konten auszahlen. Sie können die folgende Logik als Ausgangspunkt für die Definition einer Statusübersicht verwenden, die Ihrem verbundenen Konto angezeigt wird. #### Ruby ```ruby # Don't put any keys in code. See https://docs.stripe.com/keys-best-practices. # Find your keys at https://dashboard.stripe.com/apikeys. Stripe.api_key = '<>' def account_state(account) reqs = account.requirements if reqs.disabled_reason && reqs.disabled_reason.include?("rejected") "rejected" elsif account.payouts_enabled && account.charges_enabled if reqs.pending_verification "pending enablement" elsif !reqs.disabled_reason && !reqs.currently_due if !reqs.eventually_due "complete" else "enabled" end else "restricted" end elsif !account.payouts_enabled && account.charges_enabled "restricted (payouts disabled)" elsif !account.charges_enabled && account.payouts_enabled "restricted (charges disabled)" elsif reqs.past_due "restricted (past due)" elsif reqs.pending_verification "pending (disabled)" else "restricted" end end accounts = Stripe::Account.list(limit: 10) accounts.each do |account| puts "#{account.id} has state: #{account_state(account)}" end ``` ### Umgang mit Verifizierungsfehlern Gehen Sie je nach Onboarding-Prozess unterschiedlich mit fehlgeschlagenen Verifizierungen um. > Sie können die API nicht verwenden, um auf Stripe-Risikoprüfungen zu antworten. Sie können Ihre verbundenen Konten aktivieren, damit diese über eingebettete Komponenten, von Stripe gehostetes Onboarding oder Sanierungslinks reagieren können. Außerdem können Sie im Auftrag Ihrer verbundenen Konten über das Dashboard auf Risikoprüfungen antworten. #### API Überwachen Sie das Ereignis [account.updated](https://docs.stripe.com/api/events/types.md#event_types-account.updated). Wenn das Konto zum Zeitpunkt der `current_deadline` Felder mit der Bezeichnung `currently_due` enthält, wird die entsprechende Funktion deaktiviert und diese Felder werden zu `past_due` hinzugefügt. [Erstellen Sie ein Formular](https://docs.stripe.com/connect/migrate-to-stripe.md#create-forms-to-collect-information) mit klaren Anweisungen, die das Konto verwenden kann, um die Angaben zu korrigieren. Benachrichtigen Sie das Konto und [übermitteln Sie die korrigierten Angaben](https://docs.stripe.com/connect/migrate-to-stripe.md#update-the-connected-account) mithilfe der Accounts API. (See full diagram at https://docs.stripe.com/connect/migrate-to-stripe) Wenn Sie alle Ihre Verifizierungsfehler mit benutzerdefinierten Abläufen beheben möchten: - Überprüfen Sie die Details zu allen möglichen [Verifizierungsfehlern und deren Handhabung](https://docs.stripe.com/connect/handling-api-verification.md). - [Verifizierungsstatus testen](https://docs.stripe.com/connect/testing-verification.md) #### Eingebettet Überwachen Sie das Ereignis [account.updated](https://docs.stripe.com/api/events/types.md#event_types-account.updated). Wenn das Konto zum Zeitpunkt der `current_deadline` Felder mit der Bezeichnung `currently_due` enthält, wird die entsprechende Funktion deaktiviert und diese Felder werden zu `past_due` hinzugefügt. Lassen Sie Ihre Konten die Verifizierungsanforderungen regeln, indem Sie sie an die [Komponente für Konto-Onboarding](https://docs.stripe.com/connect/supported-embedded-components/account-onboarding.md) leiten. (See full diagram at https://docs.stripe.com/connect/migrate-to-stripe) ### Stripe-Nutzerauthentifizierung deaktivieren Bei Verwendung des eingebetteten Onboarding ist die [Nutzerauthentifizierung durch Stripe](https://docs.stripe.com/connect/get-started-connect-embedded-components.md#user-authentication-in-connect-embedded-components) standardmäßig aktiviert. Dieses Verhalten können Sie mithilfe von [`disable_stripe_user_authentication`](https://docs.stripe.com/api/account_sessions/create.md#create_account_session-components-account_onboarding-features-disable_stripe_user_authentication) aufheben. Wir empfehlen den Einsatz der Zwei-Faktor-Authentifizierung oder gleichwertiger Sicherheitsmaßnahmen als [Best Practice](https://docs.stripe.com/connect/risk-management/best-practices.md#prevent-account-take-overs). Bei Kontokonfigurationen, die diese Funktion unterstützen, wie z. B. Custom, übernehmen Sie die Haftung für verbundene Konten, wenn diese [Negativsalden](https://docs.stripe.com/connect/risk-management/best-practices.md#decide-your-approach-to-negative-balance-liability) nicht zurückzahlen können. #### Gehostet Überwachen Sie das Ereignis [account.updated](https://docs.stripe.com/api/events/types.md#event_types-account.updated). Wenn das Konto zum Zeitpunkt der `current_deadline` Felder mit der Bezeichnung `currently_due` enthält, wird die entsprechende Funktion deaktiviert und diese Felder werden zu `past_due` hinzugefügt. Lassen Sie Ihre Konten die Verifizierungsanforderungen regeln, indem Sie sie an das von Stripe gehostete Onboarding-Formular leiten. (See full diagram at https://docs.stripe.com/connect/migrate-to-stripe) ## Zahlungs- und Kundendaten zu Stripe übertragen Nachdem Sie Ihre verbundenen Konten auf Stripe erstellt haben, [beantragen Sie einen PAN-Datenimport](https://docs.stripe.com/get-started/data-migrations/pan-import.md), der Ihre Zahlungs- und Kundendaten auf diese Konten migriert. ## See also - [Onboarding-Konfiguration auswählen](https://docs.stripe.com/connect/onboarding.md) - [Abwicklung der Identitätsprüfung mit der API](https://docs.stripe.com/connect/handling-api-verification.md) - [Identitätsprüfung von Konten testen](https://docs.stripe.com/connect/testing-verification.md)