Ein Abonnement per BACS-Lastschriftverfahren einrichten
Erfahren Sie, wie Sie ein Abonnement per Bacs-Lastschriftverfahren erstellen und abrechnen können.
Verwenden Sie diesen Leitfaden, um ein Abonnement mit BACS-Lastschrift als Zahlungsmethode und Checkout einzurichten.
Stripe einrichtenServerseitig
Zunächst benötigen Sie ein Stripe-Konto. Registrieren Sie sich jetzt.
Nutzen Sie unsere offiziellen Bibliotheken für den Zugriff auf die Stripe-API über Ihre Anwendung:
Wiederkehrende Produkte und Preise erstellen
Vorsicht
Die Prices API bietet einen einheitlichen Rahmen für die Erstellung von einmaligen Käufen und Abonnements mit Stripe. Bestehende Integrationen ohne Prices API werden weiterhin unterstützt. Es gibt jedoch einige Checkout-Funktionen, die nur Prices unterstützen. Lesen Sie den Migrationsleitfaden, wenn Sie auf die Prices API umsteigen möchten.
Um Checkout zu verwenden, müssen Sie zuerst ein Produkt und einen Preis erstellen. Verschiedene physische Waren oder Dienstleistungsebenen müssen durch Produkte dargestellt werden. Die Preisgestaltung ist durch einen oder mehrere Preise dargestellt.
Sie können beispielsweise ein Software-Produkt erstellen, das vier Preise hat: 10 USD/Monat, 100 USD/Jahr, 9 GBP/Monat und 90 GBP/Jahr. Auf diese Weise können Sie Preise ändern und hinzufügen, ohne die Details der zugrunde liegenden Produkte ändern zu müssen. Sie können ein Produkt oder einen Preis über die API oder über das Stripe-Dashboard erstellen.
Wenn Ihr Preis beim Bezahlvorgang ermittelt wird (der/die Kund/in legt beispielsweise einen Spendenbetrag fest), oder wenn Sie es vorziehen, Preise nicht im Voraus zu erstellen, können Sie Preise inline bei der Erstellung der Checkout-Sitzung erstellen.
Checkout-Sitzung erstellenClientseitigServerseitig
Fügen Sie Ihrer Website eine Schaltfläche zum Bezahlen hinzu, über die ein serverseitiger Endpoint aufgerufen wird, um eine Checkout-Sitzung zu erstellen.
<html> <head> <title>Checkout</title> </head> <body> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>
Erstellen Sie eine Checkout-Sitzung mit der ID eines bestehenden Preises. Stellen Sie sicher, dass der Modus auf subscription gesetzt ist und dass Sie mindestens einen wiederkehrenden Preis übergeben. Zusätzlich zu wiederkehrenden Preisen können Sie auch einmalige Preise hinzufügen. Leiten Sie Ihre Kundinnen/Kunden nach dem Erstellen der Checkout-Sitzung zu der in der Antwort zurückgegebenen URL weiter.
Wenn Ihre Kundinnen und Kunden ihre Zahlung erfolgreich abgeschlossen haben, werden Sie an die success_ weitergeleitet. Hierbei handelt es sich um eine Seite auf Ihrer Website, auf der sie darüber informiert werden, dass ihre Zahlung erfolgreich durchgeführt wurde. Stellen Sie die Sitzungs-ID auf Ihrer Erfolgsseite zur Verfügung, indem Sie die Vorlagenvariable {CHECKOUT_ wie im obigen Beispiel in die success_ einfügen.
Wenn Ihre Kund/innen in einer Checkout-Sitzung auf Ihr Logo klicken, ohne eine Zahlung abzuschließen, leitet Checkout sie über die cancel_ zurück zu Ihrer Website. In der Regel ist dies die Seite auf Ihrer Website, die die Kund/innen vor der Weiterleitung zu Checkout besucht haben.
Checkout-Sitzungen laufen standardmäßig 24 Stunden nach Erstellung ab.
Aktivieren Sie im Dashboard die Zahlungsmethoden, die Sie von Ihren Kundinnen und Kunden akzeptieren möchten. Checkout unterstützt mehrere Zahlungsmethoden.
Vorsicht
Verlassen Sie sich beim Erkennen von initiierten Zahlungen nicht allein auf die Weiterleitung auf die success_:
- Böswillige Nutzer/innen könnten, ohne zu bezahlen, direkt auf die
success_zugreifen und sich so unberechtigt Zugang zu Waren und Dienstleistungen verschaffen.url - In manchen Fällen werden Kund/innen nach erfolgreicher Zahlung nicht zur
success_weitergeleitet. Möglicherweise haben sie die Registerkarte im Browser geschlossen, bevor die Weiterleitung erfolgt ist.url
Bestätigen, dass die Zahlung erfolgreich durchgeführt wurde
Wenn Ihre Kund/innen ihre Zahlung erfolgreich abschließen, werden sie von Stripe an die URL weitergeleitet, die Sie im success_-Parameter angegeben haben. Hierbei handelt es sich in der Regel um eine Seite auf Ihrer Website, auf der Ihre Kund/innen darüber informiert werden, dass ihre Zahlung erfolgreich durchgeführt wurde.
Bei Bacs Direct Debit handelt es sich jedoch um eine Zahlungsmethode mit verzögerter Benachrichtigung, was bedeutet, dass Gelder nicht sofort verfügbar sind. Schieben Sie daher die Ausführung der Bestellung auf, bis das Geld auf Ihrem Konto ist. Nach erfolgreicher Zahlung ändert sich der Status des zugrunde liegenden PaymentIntent von processing in succeeded.
Sie können auf verschiedene Weise bestätigen, dass die Zahlung erfolgreich ist:
Integration testen
Es gibt mehrere Testbankkontonummern, die Sie in einer Sandbox verwenden können. So können Sie sicherstellen, dass diese Integration bereit ist.
| Bankleitzahl | Kontonummer | Beschreibung |
|---|---|---|
| 10-88-00 | 00012345 | Die Zahlung ist erfolgt und die Rechnung wird auf paid umgestellt. |
| 10-88-00 | 90012345 | Die Zahlung erfolgt innerhalb von drei Minuten und die Rechnung wird auf paid umgestellt. |
| 10-88-00 | 33333335 | Die Zahlung schlägt fehl, die Fehlerkennung debit_ wird ausgegeben und die Rechnung wird auf open gestellt. Das Mandat wechselt zu inactive und die PaymentMethod kann nicht erneut verwendet werden. |
| 10-88-00 | 93333335 | Die Zahlung schlägt nach drei Minuten fehl, die Fehlerkennung debit_ wird ausgegeben und die Rechnung wird auf open gestellt. Das Mandat wechselt zu inactive und die PaymentMethod kann nicht erneut verwendet werden. |
| 10-88-00 | 22222227 | Die Zahlung schlägt fehl, die Fehlerkennung insufficient_ wird ausgegeben und die Rechnung wird auf open gestellt. Das Mandat bleibt active und die PaymentMethod kann erneut verwendet werden. |
| 10-88-00 | 92222227 | Die Zahlung schlägt nach drei Minuten fehl, die Fehlerkennung insufficient_ wird ausgegeben und die Rechnung wird auf open gestellt. Das Mandat bleibt active und die PaymentMethod kann erneut verwendet werden. |
| 10-88-00 | 55555559 | Die Zahlung erfolgt innerhalb von drei Minuten und die Rechnung wechselt zu paid. Eine Zahlungsanfechtung wird jedoch sofort erstellt. |
| 10-88-00 | 00033333 | Die Zahlungsmethode wurde erfolgreich erstellt, das Mandat wird jedoch von der Kundenbank verweigert und sofort deaktiviert. |
| 10-88-00 | 00044444 | Die Anfrage zur Einrichtung eines Bacs-Lastschriftverfahrens wird aufgrund einer ungültigen Kontonummer sofort abgelehnt. Die Kund/innen werden aufgefordert, ihre Angaben vor dem Absenden zu prüfen. Zahlungsinformationen werden nicht erfasst. |
Sie können die oben aufgeführten Kontonummern nach Belieben testen. Da die Verarbeitung von Zahlungen per Bacs-Lastschriftverfahren mehrere Tage in Anspruch nimmt, verwenden Sie bitte die Testkontonummern. Bei diesen ist eine dreiminütige Verzögerung eingebaut, um tatsächliche Zahlungen möglichst exakt nachzubilden.
Notiz
Standardmäßig sendet Stripe den Kundinnen und Kunden bei der erstmaligen Erfassung ihrer Zahlungsinformationen sowie bei jeder Kontobelastung automatisch E-Mails. Diese Benachrichtigungen werden nicht in Sandboxes gesendet.
OptionalEinmalige Einrichtungsgebühr hinzufügenServerseitig
Zusätzlich zur Übergabe von wiederkehrenden Preisen können Sie im Modus subscription einmalige Preise hinzufügen. Diese werden nur auf der ersten Rechnung angezeigt, die durch das Abonnement erstellt wird. Dies ist nützlich, um Einrichtungsgebühren oder andere einmalige Gebühren in Verbindung mit einem Abonnement hinzuzufügen.
OptionalPreise und Produkte inline erstellenServerseitig
Zusätzlich zur Übergabe vorhandener Preis-IDs können Sie Ihren Artikelpreis auch bei der Erstellung der Checkout-Sitzung festlegen. Definieren Sie zuerst ein Produkt. Erstellen Sie dann mithilfe der Produkt-ID eine Checkout-Sitzung, indem Sie sie in price_data mit den Details unit_, currency und recurring details übergeben:
Wenn Sie auch Produkte inline erstellen müssen, haben Sie mit product_data hierzu zu Möglichkeit:
OptionalBestehende Kund/innenServerseitig
Wenn Sie bereits ein Customer-Objekt für eine Kundin/einen Kunden erstellt haben, können Sie mit dem Argument customer die Kunden-ID beim Erstellen einer Checkout-Sitzung übergeben. Dadurch wird sichergestellt, dass alle während der Sitzung erstellten Objekte dem richtigen Customer-Objekt zugeordnet werden.
Wenn Sie eine Kunden-ID übergeben, verwendet Stripe auch die im Customer-Objekt gespeicherte E-Mail-Adresse, um das entsprechende Feld auf der Checkout-Seite vorab auszufüllen. Wenn Kund/innen ihre E-Mail-Adresse auf der Checkout-Seite ändern, wird diese nach erfolgreicher Zahlung im Customer-Objekt aktualisiert.
OptionalKundendaten vorab angebenServerseitig
Wenn Sie die E-Mail-Adresse Ihrer Kundin/Ihres Kunden bereits erfasst haben und sie in einer Checkout-Sitzung vorab angeben möchten, übergeben Sie customer_email beim Erstellen der Checkout-Sitzung.
OptionalTestzeiträume handhabenServerseitig
Mit trial_end oder trial_period_days können Sie in der Checkout-Sitzung die Dauer des Testzeitraums angeben. In diesem Beispiel verwenden wir trial_, um eine Checkout-Sitzung für ein Abonnement mit einem Testzeitraum von 30 Tagen zu erstellen.
Checkout zeigt die folgenden Informationen automatisch für Abonnements mit Testzeiträumen an:
- Testzeitraum
- Häufigkeit und Höhe der Zahlungen nach Ablauf des Testzeitraums
Für weitere Informationen zu den geltenden Anforderungen sehen Sie sich den Leitfaden für Billing oder den Support-Leitfaden an.
OptionalSteuersätzeServerseitig
Sie können Steuersätze, (Verkäufe, USt., GST und mehr) in Checkout-Sitzungen angeben, um Steuern auf Abonnements anzuwenden.
- Verwenden Sie feste Steuersätze, wenn Sie den exakten Steuersatz kennen, den Sie Ihrem Kunden/Ihrer Kundin berechnen müssen, bevor sie den Bezahlvorgang starten (wenn Sie beispielsweise nur an Kund/innen in Großbritannien verkaufen und immer 20 % Mehrwertsteuer berechnen).
- Mit der Prices API können Sie dynamische Steuersätze verwenden, wenn Sie weitere Informationen von Ihren Kund/innen benötigen (beispielsweise ihre Rechnungs- oder Versandadresse), bevor Sie den fälligen Steuersatz ermitteln. Mit dynamischen Steuersätzen erstellen Sie Steuersätze für verschiedene Regionen (beispielsweise einen Mehrwertsteuersatz von 20 % für Kund/innen in Großbritannien und einen Umsatzsteuersatz von 7,25 % für Kund/innen in Kalifornien, USA). Stripe versucht, den Standort Ihrer Kund/innen diesen Steuersätzen zuzuordnen.
Sie können die Datenexporte von Stripe verwenden, um die für die Überweisung erforderlichen regelmäßigen Berichte auszufüllen. Weitere Informationen finden Sie unter Steuerberichterstattung und Überweisung.
OptionalGutscheine hinzufügenServerseitig
Sie können Gutscheine auf Abonnements in einer Checkout-Sitzung anwenden, indem Sie Rabatte einrichten. Diese Gutscheine überschreiben alle Gutscheine für die Kundin/den Kunden. Wenn Sie ein Abonnement für bestehende Kundinnen/Kunden erstellen, werden alle mit der Kundin/dem Kunden verknüpften Gutscheine auf die Rechnungen des jeweiligen Abonnements angewendet.
Promo-Codes für Kund/innen hinzufügen
Sie können auch Promo-Codes für Kundinnen/Kunden aktivieren, indem Sie in Checkout-Sitzungen den Parameter allow_promotion_codes verwenden. Wenn allow_ in einer Checkout-Sitzung aktiviert ist, zeigt Checkout ein Feld zum Einlösen von Promo-Codes, das Ihre Kundinnen/Kunden nutzen können. Sie können Ihre Gutscheine und Promo-Codes über das Dashboard oder die API erstellen, damit Ihre Kundinnen/Kunden sie in Checkout einlösen können.
