SaaS-Gebühren für Ihre verbundenen Konten berechnenÖffentliche Vorschau
Verwenden Sie Billing, um Ihren verbundenen Konten SaaS-Gebührenabonnements direkt in Rechnung zu stellen.
In diesem Leitfaden wird erläutert, wie Sie Accounts v2 verwenden, um Billing und Connect in Ihre SaaS-Plattform zu integrieren, sodass Sie Abonnementgebühren direkt von Ihren verbundenen Konten abbuchen können.
Sie können Accounts v2 für Ihre Connect-Plattform von Ihrem Dashboard aus aktivieren.
Testumgebung
Um diese Integration auszuprobieren, müssen Sie eine Sandbox verwenden. Im Test-Modus ist dies nicht möglich.
Onboarding Ihrer Plattform bei Connect
Richten Sie Ihr Stripe-Konto als Connect-Plattform ein, indem Sie dem Onboarding-Ablauf in Ihrem Dashboard folgen.
Im Leitfaden für die Connect-Integration werden die Konfigurationsoptionen der Plattform erläutert.
Wenn Sie über eine bestehende Plattform verfügen, unterstützt diese Integration Ihre verbundenen Konten, die Accounts v1 verwenden, nicht. Wenn Sie sie aufnehmen möchten, müssen Sie sie wie hier erläutert neu erstellen und dann ihre alten Konten entfernen.
Erstellen Sie Ihre verbundenen Konten mit der Accounts v2 API
Notiz
Diese Integration verwendet nur Accounts, Events, EventDestinations und Persons aus API v2. Alle anderen Objekte gehören zur API v1.
Verwenden Sie für jedes verbundene Konto die Accounts v2 API, um ein Account
-Objekt mit den Konfigurationen customer
und merchant
zu erstellen.
- Gemäß der
customer
-Konfiguration kann dasAccount
Ihrer Plattform eine Abonnementgebühr mit einer Zahlungsmethode zahlen, die Sie an dasAccount
anhängen. - Durch die
merchant
-Konfiguration wird aus demAccount
ein verbundenes Konto, das Kartenzahlungen von seinen eigenen Kundinnen/Kunden annehmen kann. Wenn Sie diemerchant
-Konfiguration zuweisen, definieren Sie auch andere Aspekte des verbundenen Kontos, wie z. B.:- Fordern Sie die Möglichkeit an, Kartenzahlungen zu akzeptieren, indem Sie configuration.merchant.capabilities.card_payments.requested auf „true“ festlegen.
- Geben Sie den Zugriff auf ein Stripe-Dashboard an, indem Sie das Dashboard einrichten. Im folgenden Beispiel legen wir
dashboard
auffull
fest, was bedeutet, dass dasAccount
Zugriff auf das vollständige Stripe-Dashboard hat. - Geben Sie die Verantwortung für den Einzug von Gebühren vom
Account
an, indem Sie defaults.responsibilities.fees_collector aufstripe
oderapplication
festlegen. - Geben Sie die Verantwortung für negative Salden auf dem
Account
an, indem Sie defaults.responsibilities.losses_collector aufstripe
oderapplication
festlegen.
Verwenden Sie „Einschließen“, um Objekte in der Antwort auszufüllen
Wenn Sie ein Account
in API v2 erstellen, abrufen oder aktualisieren, werden bestimmte Eigenschaften nur dann in die Antwort aufgenommen, wenn Sie sie im include-Parameter angeben. Für jede dieser Eigenschaften, die Sie nicht angeben, nimmt die Antwort sie als „null“ auf, unabhängig von ihrem tatsächlichen Wert.
Die Antwort enthält die ID, die Sie verwenden, um in Ihrer gesamten Integration auf das Account
zu verweisen.
{ "id": "acct_xxxxxxxxxxxxxxxx", "object": "v2.core.account", "applied_configurations": [ "customer", "merchant" ], "configuration": { "customer": { "automatic_indirect_tax": { "exempt": "none", "ip_address": null, "location": null, "location-source": "identity_address" }, "billing": { ... }, "capabilities": { "automatic_indirect_tax": { "requested": true, "status": "restricted", "status_details": [ { "code": "requirements_past_due", "resolution": "provide_info" } ] } }, "shipping": ..., "test_clock": ... }, "merchant": { "bacs_debit_payments": null, "branding": { ... }, "capabilities": { ... "card_payments": { "requested": true, "status": "restricted", "status_details": [ { "code": "requirements_past_due", "resolution": "provide_info" } ] }, "stripe_balance": { "payouts": { "requested": true, "status": "restricted", "status_details": [ { "code": "requirements_past_due", "resolution": "provide_info" } ] } }, ... }, "card_payments": { "decline_on": { "avs_failure": false, "cvc_failure": false } }, "mcc": null, ... "statement_descriptor": { ... }, "support": { "address": { ... }, ... } }, "recipient": null }, "contact_email": "furever_contact@example.com", "created": "2025-03-04T02:23:20.000Z", "dashboard": "full", "identity": { "attestations": { ... }, "terms_of_service": { "account": null }, "business_details": { ... "registered_name": "Furever", ... }, "country": "US", "entity_type": "company", "individual": null }, "defaults": null, "display_name": "Furever", "metadata": {}, "requirements": { "collector": "stripe", "entries": [ { "awaiting_action_from": "user", "description": "representative.surname", "errors": [], "impact": { "restricts_capabilities": [ { "capability": "card_payments", "configuration": "merchant", "deadline": { "status": "past_due" } }, { "capability": "stripe_balance.payouts", "configuration": "merchant", "deadline": { "status": "past_due" } } ] }, "minimum_deadline": { "status": "past_due" }, "reference": null, "requested_reasons": [ { "code": "routine_onboarding" } ] } ], "summary": { "minimum_deadline": { "status": "past_due", "time": null } } } }
Zuständigkeiten von Konten
Zuständigkeiten definieren bestimmte Verhaltensweisen verbundener Konten, z. B. wie sie Stripe-Gebühren zahlen und Verantwortung für Negativsalden. Sie legen sie fest, wenn Sie die merchant
-Konfiguration zu Ihren verbundenen Konten hinzufügen.
Damit Ihre Accounts
als verbundene Konten Zahlungen einziehen können, legen Sie die folgenden responsibilities
fest:
Eigenschaft | Beschreibung | Werte |
---|---|---|
defaults.responsibilities.fees_collector | Definiert, wie Stripe Zahlungsgebühren für Direct Charges auf dem verbundenen Konto einzieht. (Für Destinations Charges oder separate Zahlungen zieht Stripe immer Gebühren von Ihrer Plattform ein.) |
|
defaults.responsibilities.losses_collector | Weist die Verantwortung für negative Salden des verbundenen Kontos zu. |
|
Die Zuständigkeiten unterliegen den folgenden Einschränkungen:
- Wenn Sie
losses_
aufcollector application
setzen, müssen Sie auchfees_
aufcollector application
setzen. - Wenn Sie Destination Charges mit einem Konto verwenden, empfehlen wir Ihnen, sowohl
losses_
als auchcollector fees_
aufcollector application
zu setzen.
Weitere Informationen zu unterstützten Konfigurationen finden Sie unter Integrationsempfehlungen.
Zahlungstypen
Die Vorschauversion unterstützt nur Direct Charges und Destination Charges für verbundene Konten. Sie können keine separaten Zahlungen und Überweisungen verwenden.
Um Destination Charges zu verwenden, müssen Sie den Parameter on_behalf_of festlegen, um das verbundene Konto zum Abwicklungshändler zu machen. Sie müssen außerdem die recipient
-Konfiguration zu Ihren verbundenen Konten hinzufügen und die Funktion stripe_
für sie anfordern.
Empfängerkonfiguration zu verbundenen Konten hinzufügen
Um die Übertragung von Geldern aus dem Stripe-Guthaben Ihrer Plattform auf das Stripe-Guthaben des verbundenen Kontos zuzulassen, fügen Sie die recipient
-Konfiguration hinzu und fordern die Funktion stripe_
an. Diese Funktion ist für Destination Charges erforderlich.
Durch die Anforderung von stripe_
wird auch automatisch die Funktion stripe_
der recipient
-Konfiguration angefordert, sodass das verbundene Konto Auszahlungen auf sein externes Bankkonto vornehmen kann.
Die Konfiguration merchant
fordert automatisch ihre eigene Funktion stripe_
an, die identisch ist mit der Funktion stripe_
der Konfiguration recipient
. Wenn das Konto keine weiteren recipient
-Funktionen benötigt, müssen Sie die recipient
-Konfiguration nicht hinzufügen.
Notiz
Die Vorschauversion unterstützt keine grenzüberschreitenden Auszahlungen.
Um die recipient
-Konfiguration hinzuzufügen und die Funktion stripe_
anzufordern, aktualisieren Sie das Account
und legen Sie den Parameter configuration.recipient.capabilities.stripe_balance.stripe_transfers.requested auf „true“ fest.
Onboarding Ihrer verbundenen Konten
Bevor Ihre verbundenen Konten Zahlungen über Ihre Plattform annehmen können, müssen Sie ein Onboarding für sie durchführen. Sie können Ihre Konten an das von Stripe gehostete Onboarding weiterleiten, einen markeneigenen Ablauf mit einer in Connect eingebetteten Komponente anbieten oder Ihren eigenen nutzerdefinierten Onboarding-Ablauf programmieren. Das von Stripe gehostete Onboarding ist die einfachste Option. Die Verwendung einer eingebetteten Komponente ermöglicht einige Anpassungen, während der größte Teil des Vorgangs automatisch abgewickelt wird. Ein nutzerdefinierter Onboarding-Ablauf gibt Ihrer Plattform die volle Kontrolle, benötigt aber bei der Umsetzung und für laufende Updates die meisten Ressourcen.
Erstellen Sie externe Konten für Ihre verbundenen Konten
Der Prozess zum Erstellen eines externen Kontos hängt vom Zugriff Ihrer verbundenen Konten auf das Dashboard ab:
- Wenn das
dashboard
einesAccount
full
oderexpress
ist, fügt der/die Kontoinhaber/in das externe Konto über sein/ihr Dashboard hinzu. - Wenn das
dashboard
einesAccount
none
ist, können Sie das zugehörige externe Konto mit dem Endpoint /v1/external_accounts erstellen.
Notiz
Unabhängig vom Dashboard-Zugriff Ihrer verbundenen Konten können Sie ihre externen Konten mit einem API v1-Aufruf abrufen, auflisten, aktualisieren oder löschen.
Zahlungen für verbundene Konten einrichten
Um Zahlungen für Ihre verbundenen Konten einzurichten, folgen Sie den Anweisungen unter Direct Charges oder Destination Charges. Um Destination Charges zu verwenden, müssen Sie den Parameter on_behalf_of festlegen.
Auszahlungen für Ihre verbundenen Konten einrichten
Sie können die Auszahlungseinstellungen Ihrer verbundenen Konten, einschließlich Zeitplan, Zahlungsbeschreibung in der Abrechnung und Verzögerungstage, entweder über Ihr Dashboard oder über die API konfigurieren.
Überwachen Sie Änderungen der Anforderungen für Ihre verbundenen Konten
Kontoanforderungen können sich ändern, häufig aufgrund von Änderungen, die von Finanzaufsichtsbehörden, Kartennetzwerken und anderen Finanzinstituten eingeführt werden. Um Webhook-Benachrichtigungen über Änderungen an den Anforderungen einzurichten, erstellen Sie ein Ereignisziel, um die Aktualisierungsereignisse für Account v2 zu überwachen.
- Öffnen Sie in Ihrem Stripe-Dashboard das Menü „Entwickler/innen“, indem Sie in der Fußzeile des Navigationsmenüs auf Entwickler/innen klicken und dann Webhooks auswählen.
- Klicken Sie auf + Ziel hinzufügen.
- Wählen Sie im Abschnitt „Ereignisse“ von die Option Verbundene Konten aus.
- Wählen Sie Erweiterte Optionen anzeigen aus. Wählen Sie im Abschnitt „Nutzlast-Stil“ die Option Thin aus.
- Geben Sie im Feld „Ereignisse“ den Wert „v2“ ein, um nach v2-Ereignistypen zu suchen. Wählen Sie v2.account[requirements].updated und den Typ v2.account[configuration.configuration_type].capability_status_updated für jeden Konfigurationstyp aus, der von Ihren verbundenen Konten verwendet wird.
Fahren Sie mit der Einrichtung Ihres Ereignisziels fort, indem Sie dem interaktiven Webhook-Endpoint-Generator folgen.
Konfigurieren Sie Ihre Anwendung so, dass sie auf Aktualisierungsereignisse reagiert, indem sie alle aktualisierten Anforderungen erfasst.
Lokalen Listener während der Entwicklung einrichten
Sie können Ereignisse zu Entwicklungszwecken an Ihren lokalen Server senden, indem Sie die Stripe CLI installieren und einen lokalen Listener einrichten.
- Melden Sie sich beim Stripe-Dashboard an.
- Geben Sie in der Stripe CLI den Befehl
stripe login
ein. Er leitet Sie zu Ihrem Browser weiter, um Ihr Konto zu bestätigen und zu authentifizieren. - Kehren Sie zur CLI zurück und führen Sie den folgenden Befehl aus. Es überwacht alle verfügbaren V2-Ereignisse auf Ihrer Plattform und den verbundenen Konten und leitet sie an http://localhost:4242 weiter.
stripe listen --thin-events 'v2.core.account[requirements].updated,v2.core.account[configuration.recipient].capability_status_updated,v2.core.account[configuration.merchant].capability_status_updated,v2.core.account[configuration.customer].capability_status_updated' --forward-thin-to http://localhost:4242
Integrieren Sie Billing, um wiederkehrende Gebühren einzuziehen
Um mit Stripe Billing wiederkehrende Gebühren von Ihren verbundenen Konten einzuziehen, werden die folgenden Schritte durchgeführt:
- Erstellen Sie ein oder mehrere Produkte, um die wiederkehrenden Gebühren darzustellen.
- Erstellen Sie Abonnements für Ihre Gebührenprodukte mit den Konten als Kundinnen/Kunden.
- (Optional) Um Abonnementgebühren direkt vom Stripe-Guthaben verbundener Konten einzuziehen und Transaktionsgebühren im Zusammenhang mit anderen Zahlungsmethoden wie Karten zu vermeiden, konfigurieren Sie dies als Zahlungsmethode.
Notiz
Ein verbundenes Konto kann nur dann mit seinem Stripe-Guthaben bezahlen, wenn es über ein ausreichendes verfügbares Guthaben verfügt, um die Zahlung vorzunehmen. Weiter unten in dieser Anleitung finden Sie Empfehlungen zur Vermeidung fehlgeschlagener Gutahabenzahlungen.
Produkt mit wiederkehrendem Preis erstellen 
Erstellen Sie ein Produkt und einen Preis, der Ihre Abonnementgebühr darstellt. Sie können die API oder das Dashboard verwenden.
Erstellen Sie Abonnements, um Ihre verbundenen Konten zu belasten 
Sie können Gebühren für SaaS-Abonnements direkt vom Stripe-Guthaben eines verbundenen Kontos einziehen. Das verbundene Konto muss die folgenden Voraussetzungen erfüllen:
- Es muss Konfigurationen für
merchant
undcustomer
aufweisen. - Die Funktion
card_
derpayments merchant
-Konfiguration muss aktiv sein. - Das verfügbare Guthaben muss für eine vollständige Zahlung ausreichen.
Konfigurieren Sie Ihre Integration für die Verwaltung fehlgeschlagener Stripe-Guthabenzahlungen
Wenn Sie eine Zahlung vom Stripe-Guthaben eines verbundenen Kontos einziehen, muss das verfügbare Guthaben des Kontos ausreichen, um die vollständige Zahlung durchzuführen. Andernfalls schlägt die Zahlung fehl. Wenn Sie beabsichtigen, Zahlungen direkt von den Stripe-Salden Ihrer verbundenen Konten einzuziehen, empfehlen wir, Ihre Integration so zu konfigurieren, dass sie mit saldobedingten Zahlungsfehlern umgehen kann.
Fehlschlagen von Zahlungen vermeiden
Da Zahlungen vom Stripe-Guthaben eines verbundenen Kontos von dessen verfügbaren Geldern abhängen, können Sie das Fehlschlagen von Zahlungen vermeiden, indem Sie Maßnahmen ergreifen, um das Guthaben Ihrer verbundenen Konten zu maximieren.
Auszahlungspläne für verbundene Konten anpassen
Koordinieren Sie Ihre Auszahlungspläne mit den Abrechnungszyklen Ihrer Abonnements. Wenn Sie beispielsweise Abonnementgebühren am ersten Tag jedes Monats abbuchen und wöchentliche Auszahlungen für montags planen, gibt es in Monaten mit mehr Montagen mehr Auszahlungen. In diesen Monaten sind die verfügbaren Salden geringer als in Monaten mit weniger Auszahlungen, wodurch Zahlungsausfälle wahrscheinlicher werden.
Eine weitere Möglichkeit, fehlgeschlagene Zahlungen aufgrund von Auszahlungen zu vermeiden, besteht darin, vor einer Abonnementzahlung auf manuelle Auszahlungen umzustellen. Stellen Sie zu einem festgelegten Zeitpunkt vor jeder Abonnementzahlung, wenn ein verbundenes Konto über ausreichend verfügbare Geldmittel verfügt, auf manuelle Auszahlungen um, damit die Abonnementzahlung bezahlt wird, bevor die automatische Auszahlung das Konto löscht. Nehmen Sie nach der Abonnementzahlung die automatischen Auszahlungen wieder auf.
Mindestguthaben für verbundene Konten festlegen
Sie können verhindern, dass automatische Auszahlungen das verfügbare Guthaben eines verbundenen Kontos unter einen bestimmten Betrag senken, indem Sie ein Mindestguthaben für dieses Konto definieren.
- Suchen Sie das Konto in Ihrem Dashboard.
- Wählen Sie im Überlaufmenü des Kontos () die Option Dashboard anzeigen als… aus.
- Klicken Sie auf das Zahnradsymbol und wählen Sie Einstellungen aus.
- Klicken Sie unter „Kontoeinstellungen“ auf Unternehmen.
- Wählen Sie die Registerkarte Externe Auszahlungskonten und Planung aus.
- Aktivieren Sie die Option Halten Sie einen Mindestbetrag in Ihrem Zahlungssaldo bereit und geben Sie einen Betrag ein.
Sie müssen das Mindestguthaben für jedes verbundene Konto manuell festlegen.
Umgang mit fehlgeschlagenen Saldozahlungen
Richten Sie Webhooks und Ereignisziele ein, um Benachrichtigungen über Abonnementzahlungen zu erhalten. Ermitteln Sie fehlgeschlagene Zahlungen, indem Sie das Ereignis invoice.
überwachen. Wenn eine Zahlung fehlschlägt:
- Der Status des PaymentIntent ändert sich in
requires_
.action - Der Abonnementstatus bleibt für die aktuelle Rechnung
incomplete
. - Das Abonnement generiert weiterhin Rechnungen, die im Status
draft
verbleiben.
Notiz
Zahlungen aus Stripe-Guthaben unterstützen Smart Retries nicht.
Wenn eine Zahlung aus einem Stripe-Guthaben aufgrund unzureichender Deckung fehlschlägt, können Sie sie mit den folgenden Schritten wiederholen:
- Legen Sie das Auszahlungsplanintervall des verbundenen Kontos auf
manual
fest. - Warten Sie auf die nächste Zahlung, die auf dem verbundenen Konto eingeht, und prüfen Sie dann das verfügbare Guthaben des Kontos.
- Wenn das verfügbare Guthaben gleich der Abonnementgebühr oder höher ist, setzen Sie die Zahlungsmethode der unbezahlten Rechnung auf
stripe_
und versuchen Sie es erneut. Andernfalls überwachen Sie so lange auf Zahlungen, bis das verfügbare Guthaben zum Bezahlen der Rechnung ausreicht.balance - Wenn die Zahlung erfolgreich ist, stellen Sie den normalen Auszahlungsplan des verbundenen Kontos wieder her.
Anstatt eine fehlgeschlagene Zahlung aus einem Stripe-Guthaben zu wiederholen, können Sie eine andere Zahlungsmethode verwenden, indem Sie diese direkt auf der Rechnung angeben. Sie können auch einen Ablauf implementieren, der es verbundenen Konten ermöglicht, Ihre eigenen Abonnementzahlungsmethoden zu aktualisieren.
Überlegungen zur Vorschau
Mit Accounts v2 können Sie ein einziges, konfigurierbares Konto für jedes Unternehmen auf Ihrer Plattform verwenden, das Zahlungen direkt einzieht. Die Vorschauversion unterstützt keine Treasury-, Issuing- oder Zahlungsmethoden, die sich in der Vorschau befinden. Sie können Treasury, Issuing oder Zahlungsmethoden in der Vorschau mit Accounts v1 weiterhin verwenden.
Aktivieren Sie Accounts v2 für Ihre Connect-Plattform in Ihrem Dashboard.