Weiter zum Inhalt
Konto erstellen oder anmelden
Das Logo der Stripe-Dokumentation
/
KI fragen
Konto erstellenAnmelden
Jetzt starten
Zahlungen
Umsatz
Plattformen und Marktplätze
Geldmanagement
Entwicklerressourcen
APIs und SDKsHilfe
ÜbersichtAlle Produkte anzeigen
Informationen zu APIs
Beginnen Sie mit der Entwicklung
Konto erstellen
Quickstarts
Entwicklung starten
Entwicklung per LLM
Stripe verwenden, ohne Code zu erstellen
Auf Stripe umsteigen
Häufige Anwendungsszenarien
ÜbersichtAls Start-up einfache Zahlungen akzeptierenAls Saas-Start-up Abonnements verkaufenEntwickeln einer Abonnement-Lösung mit nutzungsbasierten PreisenPersönliche ZahlungsannahmeRechnungen senden, um Zahlungen einzuziehen
Vereinigte Staaten
Deutsch
StartseiteJetzt starten

Entwickeln einer Abonnement-Lösung für ein KI-Start-up mit einem nutzungsbasierten Preismodell

Erstellen Sie eine maßgeschneiderte Zahlungs-Integration zur Abrechnung nutzungsbasierter Preismodelle.

In diesem Leitfaden wird beschrieben, wie SaaS-Startups ein nutzungsbasiertes Preismodell mit einer angepassten Nutzeroberfläche und Zahlungsabwicklung über Stripe erstellen können. Als Beispiel wird in dem Leitfaden ein fiktives KI-Unternehmen namens Hypernian verwendet, das Stripe integriert, um ein Festgebühr- und Überschreitungs-Preismodell für ihr Hypernian Chat-Modell bereitzustellen. Hypernian berechnet den Kundinnen und Kunden einen festen Monatspreis für ein Basispaket und jede darüber hinausgehende Nutzung wird separat in Rechnung gestellt.

Stripe-Konto erstellen

Vor der Integration mit Stripe müssen Sie ein Stripe-Konto erstellen.

  1. Erstellen Sie ein Konto, indem Sie Ihre E-Mail-Adresse, Ihren vollständigen Namen und Ihr Land eingeben und ein Passwort erstellen.
  2. Füllen Sie Ihr Unternehmensprofil aus.
  3. Klicken Sie im Dashboard auf Ihre E-Mail-Adresse verifizieren. Eine E-Mail zur Verifizierung wird an Ihre E-Mail-Adresse gesendet.
  4. Ihre E-Mail-Adresse verifizieren.

Testumgebung einrichten

Bevor Sie Live-Transaktionen verarbeiten, testen Sie Ihre Integration mit den Testtools von Stripe, einschließlich Sandboxes und Test-Uhren. Richten Sie diese frühzeitig ein, damit Sie Ihre Integration iterieren und optimieren können, bevor Sie live gehen.

Sandbox erstellen

Erstellen Sie zunächst eine Sandbox. Konfigurieren Sie die Sandbox so, dass sie zu Ihrer Konfiguration im Live-Modus passt, damit Sie Änderungen fortlaufend testen und inszenieren können.

Test-Uhr erstellen

Erstellen Sie als Nächstes eine Test-Uhr, um die Vorwärtsbewegung der Zeit in Sandbox zu simulieren. Wenn Sie die Test-Uhr erhöhen, ändern Ressourcen wie Abonnements den Status und lösen Webhook-Ereignisse aus.

  1. -Rufen Sie im Stripe Dashboard die Seite Test-Uhren im Dashboard auf.
  2. Klicken Sie auf + Neue Simulation.
  3. Geben Sie im Modal Neue Simulation erstellen einen Namen für die Simulation ein. Damit können Sie die Simulation beschreiben, die Sie testen, beispielsweise Annual renewal oder Free trial.
  4. Stellen Sie einen bestimmten Zeitpunkt für die Uhr ein. Dies ist der Startpunkt Ihrer Simulation. Es kann ein Zeitpunkt in der Zukunft oder in der Vergangenheit sein. Sie können ihn jedoch nur zeitlich nach vorne verschieben, nachdem Sie ihn festgelegt haben.

Um Abonnement-Szenarien zu simulieren, klicken Sie auf das Dropdown-Menü Hinzufügen und wählen Sie Kundin/Kunde aus. Sie müssen nur einen Namen für die Kundin/den Kunden eingeben, aber für einige Szenarien, wie Steuereinzug und -berechnung, müssen Sie weitere Informationen hinzufügen, wie Rechnungs- und Versandadressen.

Klicken Sie als Nächstes auf das Dropdown-Menü Hinzufügen und wählen Sie Abonnement aus. Konfigurieren Sie das Abo entsprechend Ihrem Szenario.

Sie können weitere Kun/innen und Kunden sowie Abonnements hinzufügen, um gemäß dem Rest dieses Leitfadens fortzufahren.

Preismodell einrichten

In diesem Beispiel berechnet Hypernian-Kundinnen und -Kunden den Zugriff auf seine LLM-Dienste nach einem Preismodell mit Festgebühr und Überschreitungen zu den folgenden Sätzen:

LizenzGebühr
Pro Nutzer/in100 USD
NutzungGebühr
0-10000 USD
Über 10000.04 USD

Um dieses Modell zu implementieren, erstellen Sie einen Zähler zur Erfassung der Nutzung, Produkte und Preise zur Darstellung Ihres Dienstes, eine Kundin/einen Kunden und ein Kundenabonnement.

Zähler erstellen

Zähler geben an, wie Zählerereignisse über einen Abrechnungszeitraum hinweg zusammengefasst werden. Zählerereignisse stellen alle Aktionen dar, die Kundinnen/Kunden in Ihrem System durchführen (beispielsweise API-Anfragen). Zähler sind an Preise gebunden und bilden die Grundlage für das, was in Rechnung gestellt wird.

Für das Hypernian-Beispiel sind Zählerereignisse die Anzahl der Token, die ein Kunde/eine Kundin in einer Abfrage verwendet. Der Zähler ist die Summe der Token über einen Monat.

Sie können das Stripe Dashboard oder die API verwenden, um einen Zähler zu konfigurieren. Um die API mit der Stripe CLI zum Erstellen eines Zählers zu verwenden, starten sie mit der Stripe CLI.

  1. Klicken Sie auf der Seite Zähler auf Zähler erstellen.
  2. Im Zähler-Editor:
    • Geben Sie für Zählername den Namen des Zählers ein, der angezeigt wird und für organisatorische Zwecke dient. Für das Hypernian-Beispiel geben Sie „Hypernian-Token“ ein.
    • Geben Sie für Ereignisname den Namen ein, der in Zählerereignissen angezeigt werden soll, wenn die Nutzung an Stripe gemeldet wird. Für das Hypernian-Beispiel geben Sie „hypernian_tokens“ ein.
    • Legen Sie die Aggregationsmethode im Dropdown-Menü fest:
      • Wählen Sie im Hypernian-Beispiel Summe aus. Dadurch werden die gemeldeten Werte addiert (in diesem Beispiel die Anzahl der von einer Kundin oder einem Kunden verwendeten Token), um die abrechenbare Nutzung zu ermitteln.
      • Wählen Sie Anzahl, um Ereignisse auf Grundlage der gemeldeten Anzahl abzurechnen.
      • Wählen Sie Zuletzt für die auf dem letzten gemeldeten Wert basierende Rechnung.
      • Verwenden Sie den Vorschaubereich , um beispielhafte Nutzungsereignisse festzulegen und die Aggregationsmethode zu verifizieren.
    • Klicken Sie auf Zähler erstellen.
    • (Optional) Geben Sie unter Erweiterte Einstellungen die Dimensionen an, mit denen Sie Ihre Nutzungsdaten kennzeichnen möchten. Um granulare, segmentspezifische Warnungen zu generieren oder die Nutzung auf der Grundlage einer Kombination von Attributen zu bewerten, übermitteln Sie Ihre Nutzungsdaten mit Dimensionen, die für Analysen und Berichte ausgefüllt werden. Einige Beispiel-Dimensionen sind LLM-Modell, Token-Typ, Region und Ereignistyp.

Preismodell erstellen

Verwenden Sie das Stripe-Dashboard oder die API, um ein Preismodell zu erstellen, das Ihre Produkte und deren Preisoptionen umfasst. Preise legen die Stückkosten, die Währung und den Rechnungsstellungszeitraum fest.

Für das Hypernian-Beispiel erstellen Sie ein Produkt mit einem zählerverknüpften Preis von 0,04 USD pro hundert Einheiten, das in einem monatlichen Intervall abgerechnet wird. Sie verwenden den Zähler, das Sie im vorherigen Schritt erstellt haben.

  1. Klicken Sie auf der Seite Product Catalog auf Produkt erstellen.
  2. Gehen Sie auf der Seite Produkt hinzufügen wie folgt vor:
    1. Geben Sie bei Name den Namen Ihres Produkts ein. Geben Sie für das Hypernian-Beispiel Hypernian-Nutzung ein.
    2. (Optional) Fügen Sie als Beschreibung eine Beschreibung hinzu, die im Bezahlvorgang, im Kundenportal und in Angeboten angezeigt wird.
    3. Wählen Sie Wiederkehrend aus.
    4. Wählen Sie unter Rechnungsstellungszeitraum die Option Weitere Preisoptionen aus.
  3. Gehen Sie auf der Seite Preis hinzufügen wie folgt vor:
    1. Wählen Sie unter Preismodell auswählen die Option Nutzungsbasiert aus.
    2. Wählen Sie Ihre Preisstruktur:
      • Wählen Sie für das Hypernian-Beispiel Pro Stufe und gestaffelt aus.
      • Legen Sie in der ersten Zeile des Rasters Erste Einheit auf 0, Letzte Einheit auf 1.000, Pro Einheit auf 0 USD und Pauschalgebühr auf 0 USD fest.
      • Legen Sie in der zweiten Zeile des Rasters Erste Einheit auf 1.001, Letzte Einheit auf ∞, Pro Einheit auf und Pauschalgebühr auf 0 USD fest.
      • Nachdem Sie das erste Produkt erstellt haben, erstellen Sie ein weiteres Produkt, um den Kundinnen und Kunden die Gebühr von 100 USD zu Beginn des Monats in Rechnung zu stellen. Die zweite Rechnung einer Kundin/eines Kunden enthält die Nutzungsgebühren des Vormonats sowie die Lizenzgebühr für den kommenden Monat.
      • (Optional) Wenn Sie Kundinnen und Kunden die anfängliche Lizenzgebühr am Ende des Monats in Rechnung stellen möchten, aktualisieren Sie die erste Zeile des Rasters, um die Pauschalgebühr auf 100 USD festzulegen.
    3. Unter Zähler wählen Sie den zuvor erstellten Zähler aus. Wählen Sie im Hypernian-Beispiel Hypernian-Token aus dem Dropdown-Menü.
    4. Wählen Sie den Rechnungsstellungszeitraum aus. Wählen Sie für das Hypernian-Beispiel Monatlich aus.
    5. Klicken Sie auf Weiter.
    6. Klicken Sie auf Produkt hinzufügen.

Erstellen Sie als Nächstes die monatliche Gebühr von 100 USD.

  1. Klicken Sie auf der Seite Product Catalog auf Produkt erstellen.
  2. Gehen Sie auf der Seite Produkt hinzufügen wie folgt vor:
    • Geben Sie bei Name den Namen Ihres Produkts ein. Geben Sie für das Hypernian-Beispiel Hypernian-Lizenzgebühr ein.
    • (Optional) Fügen Sie als Beschreibung eine Beschreibung hinzu, die im Bezahlvorgang, im Kundenportal und in Angeboten angezeigt wird.
    • Wählen Sie Wiederkehrend aus.
    • Wählen Sie unter Rechnungsstellungszeitraum die Option Weitere Preisoptionen aus.
  3. Gehen Sie auf der Seite Preis hinzufügen wie folgt vor:
    • Wählen Sie *Wiederkehrend aus.
    • Geben Sie für Betrag 100 USD ein.
    • Wählen Sie als Währung USD aus.
    • Wählen Sie unter Rechnungsstellungszeitraum die Option Monatlich aus.
    • Klicken Sie auf Weiter.
    • Klicken Sie auf Produkt hinzufügen.

Promo-Codes einrichten

Um einen Promo-Code einzurichten, erstellen Sie einen Gutschein und einen Promo-Code und wenden den Promo-Code dann auf ein Abo an.

Gutschein erstellen

Gutscheine können im Dashboard oder mit der API erstellt werden:

  1. Navigieren Sie im Dashboard zum Abschnitt Produkte.
  2. Klicken Sie auf Gutscheine.
  3. Klicken Sie auf + Neu.
  4. Im Dialogfenster Gutschein erstellen legen Sie die Eckdaten des Gutscheins fest.
  5. Nun klicken Sie auf Gutschein erstellen.

Die folgenden Einstellungen gelten für Gutscheine. Der Name ist die einzige Einstellung, die Sie nach der Erstellung des Gutscheins bearbeiten können.

EinstellungBeschreibung
NameDie Gutscheinbezeichnung, die auf Quittungen und Abrechnungen erscheint.
ID optionalEindeutige Gutscheinkennung in der API. Wenn Sie dieses Feld unausgefüllt lassen, generiert Stripe die ID.
TypGibt an, ob es sich um einen pauschalen oder anteiligen Preisnachlass handelt.

Prozentualer Rabatt oder Rabattbetrag

Gibt an, für welchen Rabattbetrag der Gutschein tatsächlich gilt.

Wenn Sie Verkäufe in mehreren Währungen tätigen, können mit einem einzelnen Gutschein verschiedene Rabattbeträge für unterschiedliche Währungen definiert werden. Für Gutscheine mit mehreren Währungen gelten die gleichen Regeln wie für Preise in mehreren Währungen.

Auf bestimmte Produkte anwenden optionalBegrenzt den Artikeltyp, für den der Gutschein eingelöst werden kann.
DauerGibt die Gültigkeitsdauer des Gutscheins an.
Ablaufdatum optionalErmöglicht die Eingrenzung des Einlösezeitraums und die Festlegung der Einlösehäufigkeit.
Codes optionalErmöglicht die Erstellung von Promo-Codes für den Gutschein.

Berechtigte Produkte festlegen

Um die rabattberechtigten Produkte festzulegen, tragen Sie diese in das Feld Auf bestimmtes Produkt anwenden ein. Die Liste zugelassener Produkte gilt auch für die mit dem Gutschein verknüpften Gutschein-Codes.

Ist ein Gutschein auf bestimmte Produkte beschränkt, die in einem Abonnement nicht enthalten sind, wird kein Rabatt angewendet, wenn der Gutschein für dieses Abonnement eingelöst wird.

Wenn Sie Änderungen an einem Abo vornehmen, berechnet Stripe die anteilmäßige Verrechnung und wendet vorhandene Rabatte an. Sie können die anteiligen Posten auf der erzeugten Rechnung nicht weiter rabattieren.

Gutscheine auf Abonnements anwenden

Nachdem Sie Gutscheine erstellt haben, erstellen Sie einen Rabatt, indem Sie sie auf ein Abonnement anwenden. Sie können den Gutschein anwenden, wenn Sie das Abonnement erstellen oder indem Sie das bestehende Abonnement eines Kunden/einer Kundin aktualisieren.

  1. Öffnen Sie im Dashboard die Seite Abos.
  2. Klicken Sie das jeweilige Abonnement an.
  3. Klicken Sie auf Aktionen.
  4. Klicken Sie auf Abonnement aktualisieren.
  5. Klicken Sie auf Gutschein hinzufügen.
  6. Wählen Sie einen oder mehrere Gutscheine aus den Dropdown-Menüs aus und klicken Sie auf Absenden.

Auch wenn für Kundinnen/Kunden keine gespeicherte Zahlungsmethode vorhanden ist, können Sie ein Abo erstellen, sofern nach Anwendung von Gutscheinen keine sofortige Zahlung erforderlich ist.

Gutscheine auf Checkout anwenden

Sie können Gutscheine auf Checkout-Sitzungen anwenden, indem Sie den discounts-Parameter in der API einrichten. Um Sitzungen mit angewendeten Rabatt zu erstellen, übergeben Sie die Gutschein-ID in dem Parameter coupon an das Array discounts.

Command Line
curl
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"=card \ -d "line_items[][price]"=
"{{PRICE_ID}}"
\ -d "line_items[][quantity]"=1 \ -d mode=subscription \ -d "discounts[][coupon]"="{{COUPON_ID}}" \ -d success_url="https://example.com/success" \

Erstellen Sie eine Bezahlvorgangsseite und abonnieren Sie Ihre/n Kunden/Kundin

Verwenden Sie Stripe Elements und die Checkout Sessions API, um eine Checkout-Seite als Teil einer vollständig angepassten Abo-Integration zu erstellen.

Um ein Abonnement einzurichten, müssen Sie Kund/in erstellen. Sie können Adress- und Zahlungsdaten mit dem Express Checkout Element erfassen. Anschließend können Sie diese Informationen verwenden, um das Abo mit der Checkout Sessions API zu erstellen.

Hinweis

Um dies in einer Sandbox zu testen, können Sie die/den von Ihnen erstellte/n Kundin oder Kunden Kunden der Test-Uhr zuordnen, die Sie bei der Einrichtung der Testumgebung erstellt haben.

Stripe einrichten

Installieren Sie den Stripe-Client Ihrer Wahl:

Command Line
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
# Available as a gem sudo gem install stripe
Gemfile
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Installieren Sie dann die Stripe-CLI. Mit der Stripe-CLI können Sie Webhooks testen und Stripe-APIs aufrufen. In diesem Leitfaden wird erklärt, wie Sie mithilfe der CLI ein Preismodell einrichten können.

Command Line
Homebrew
Aus Quelle installieren
No results
# Install Homebrew to run this command: https://brew.sh/ brew install stripe/stripe-cli/stripe # Connect the CLI to your dashboard stripe login

Weitere Installationsoptionen finden Sie unter Mit der Stripe-CLI loslegen.

Kundin/Kunden erstellen

Stripe benötigt für jedes Abonnement eine/einen Kundin/Kunden. Erfassen Sie im Frontend Ihrer Anwendung alle benötigten Informationen von Ihren Nutzerinnen/Nutzern und übergeben Sie diese ans Backend.

Wenn Sie Adressdaten erfassen müssen, können Sie mit dem Adresselement eine Liefer- oder Rechnungsadresse für Ihre Kundinnen und Kunden erfassen. Weitere Informationen zum Adresselement finden Sie auf der Seite Adresselement.

register.html
<form id="signup-form"> <label> Email <input id="email" type="email" placeholder="Email address" value="test@example.com" required /> </label> <button type="submit"> Register </button> </form>
register.js
const emailInput = document.querySelector('#email'); fetch('/create-customer', { method: 'post', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ email: emailInput.value, }), }).then(r => r.json());

Erstellen Sie das Stripe Customer-Objekt auf dem Server.

Hinweis

Stellen Sie sicher, dass Sie die Kunden-ID speichern, die Sie in der Checkout-Sitzung verwenden möchten.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d email={{CUSTOMER_EMAIL}} \ -d name={{CUSTOMER_NAME}} \ -d "shipping[address][city]"=Brothers \ -d "shipping[address][country]"=US \ -d "shipping[address][line1]"="27 Fredrick Ave" \ -d "shipping[address][postal_code]"=97712 \ -d "shipping[address][state]"=CA \ -d "shipping[name]"={{CUSTOMER_NAME}} \ -d "address[city]"=Brothers \ -d "address[country]"=US \ -d "address[line1]"="27 Fredrick Ave" \ -d "address[postal_code]"=97712 \ -d "address[state]"=CA

Zahlungsmethoden aktivieren

Standardmäßig verwendet Stripe Ihre Zahlungsmethodeneinstellungen, um zu bestimmen, welche Zahlungsmethoden im Express Checkout Element aktiviert sind. Sie können auch bestimmte Zahlungsmethoden in Ihrer Checkout-Sitzung mit dem Attribut payment_method_types konfigurieren.

Unterstützte Zahlungsmethoden

Apple Pay und Google Pay sind automatisch aktiviert, wenn der Zahlungsmethodentyp card verwendet wird. Wenn Sie Link verwenden, müssen Sie auch den Zahlungsmethodentyp card übergeben.

ZahlungsmethodeArt der Zahlungsmethode
Amazon Payamazon_pay
Apple Paycard
Google Paycard
Klarnaklarna
Linklink, card
PayPalpaypal

Checkout-Sitzung erstellen

Definieren Sie im Backend Ihrer Anwendung einen Endpoint, der die Sitzung erstellt, die Ihr Frontend aufrufen kann. Sie benötigen die Preis-ID des Abos, das der/die Kunde/Kundin abschließt – Ihr Frontend übergibt diesen Wert.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer={{CUSTOMER_ID}} \ -d ui_mode=custom \ -d "line_items[0][price]"={{PRICE_ID}} \ -d "line_items[0][quantity]"=1 \ -d return_url={{RETURN_URL}} \ -d mode=subscription

Checkout initialisieren

Erstellen Sie entweder ein clientSecret-Promise, das mit dem Client-Geheimnis aufgelöst wird oder legen Sie es direkt als Geheimnis fest. Rufen Sie initCheckout auf und übergeben Sie clientSecret. initCheckout gibt ein Promise zurück, das in eine Checkout-Instanz aufgelöst wird.

Das Objekt Checkout bildet die Grundlage Ihre Checkout-Seite und enthält Daten aus der Checkout-Sitzung sowie Methoden zum Aktualisieren der Sitzung.

Das von actions.getSession() zurückgegebene Objekt enthält Ihre Preisinformationen. Wir empfehlen, total und lineItems aus der Sitzung in Ihrer Nutzeroberfläche zu lesen und anzuzeigen.

Auf diese Weise können Sie neue Funktionen mit minimalen Codeänderungen aktivieren. Zum Beispiel erfordert das Hinzufügen von Preisen in manuellen Währungen keine Änderungen der Nutzeroberfläche, wenn Sie den Parameter total anzeigen.

checkout.js
const clientSecret = fetch('/create-checkout-session', {method: 'POST'}) .then((response) => response.json()) .then((json) => json.checkoutSessionClientSecret); const checkout = stripe.initCheckout({clientSecret}); const loadActionsResult = await checkout.loadActions(); if (loadActionsResult.type === 'success') { const session = loadActionsResult.actions.getSession(); const checkoutContainer = document.getElementById('checkout-container'); checkoutContainer.append(JSON.stringify(session.lineItems, null, 2)); checkoutContainer.append(document.createElement('br')); checkoutContainer.append(`Total: ${session.total.total.amount}`); }
index.html
<div id="checkout-container"></div>

Testzeitraum einrichten

Um einen kostenlosen 7-tägigen Testzeitraum für Ihren Dienst anzubieten, übergeben Sie beim Erstellen der Checkout-Sitzung trial_period_days.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer={{CUSTOMER_ID}} \ -d ui_mode=custom \ -d "line_items[0][price]"={{PRICE_ID}} \ -d "line_items[0][quantity]"=1 \ -d return_url={{RETURN_URL}} \ -d mode=subscription \ -d "subscription_data[trial_period_days]"=7

Stripe Elements einrichten

Das Express Checkout Element ist automatisch als Funktion von Stripe.js verfügbar. Fügen Sie das Stripe.js-Skript auf Ihrer Bezahlseite ein, indem Sie es dem head Ihrer HTML-Datei hinzufügen. Laden Sie Stripe.js immer direkt von js.stripe.com, um die PCI-Konformität zu gewährleisten. Fügen Sie das Skript nicht in ein Paket ein und hosten Sie selbst keine Kopie davon.

checkout.html
<head> <title>Checkout</title> <script src="https://js.stripe.com/clover/stripe.js"></script> </head>

Rufen Sie das Client-Geheimnis von Ihrem Server ab:

checkout.js
// Set your publishable key: remember to change this to your live publishable key in production // See your keys here: https://dashboard.stripe.com/apikeys const stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
);

Erstellen Sie eine fetchClientSecret-Funktion, um das Client-Geheimnis von Ihrem Server abzurufen:

checkout.js
const clientSecret = fetch('/create-checkout-session', {method: 'POST'}) .then((response) => response.json()) .then((json) => json.client_secret);

Checkout-Instanz erstellen:

checkout.js
const checkout = stripe.initCheckout({ clientSecret });

Erstellen und verbinden Sie das Express Checkout Element

Ein Express Checkout Element enthält ein iframe, dass die Zahlungsdaten über eine HTTPS-Verbindung sicher an Stripe sendet. Die Adresse der Bezahlvorgangseite muss ebenfalls mit https://, beginnen, nicht mit http://, damit Ihre Integration funktioniert.

Das Express Checkout Element benötigt einen festen Platz auf Ihrer Zahlungsseite. Erstellen Sie einen leeren DOM-Knoten (Container) mit einer eindeutigen ID in Ihrem Zahlungsformular.

checkout.html
<div id="express-checkout-element"> <!-- Express Checkout Element will be inserted here --> </div> <div id="error-message"> <!-- Display an error message to your customers here --> </div>

Wenn das Formular geladen wurde, erstellen Sie eine Instanz des Express Checkout Element und verbinden es mit dem Container DOM-Knoten.

checkout.js
// Create and mount the Express Checkout Element const expressCheckoutElement = checkout.createExpressCheckoutElement(); expressCheckoutElement.mount('#express-checkout-element');

Kundendaten erfassen und Einzelposten anzeigen

Die auf dem Server erstellte Checkout-Sitzung ermittelt automatisch die Posten, den Gesamtbetrag und die verfügbaren Zahlungsmethoden. Das Express Checkout Element verwendet diese Informationen, um die entsprechende Oberfläche anzuzeigen.

Zahlungsbestätigung verarbeiten

Überwachen Sie das Bestätigungsereignis, wenn Ihr/e Kund/in die Zahlung abschließt:

checkout.js
const loadActionsResult = await checkout.loadActions(); if (loadActionsResult.type === 'success') { expressCheckoutElement.on('confirm', (event) => { loadActionsResult.actions.confirm({expressCheckoutConfirmEvent: event}); }); }

Dynamische Updates verarbeiten

Wenn die Checkout-Sitzung basierend auf der Kundenauswahl aktualisieren werden soll (z. B. Versandadresse oder Änderungen der Versandtarife), können Sie Ereignisse überwachen und die Sitzung aktualisieren:

checkout.js
expressCheckoutElement.on('shippingaddresschange', async (event) => { const response = await fetch('/update-session-shipping', { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify({ sessionId: checkout.session.id, shippingAddress: event.address }) }); const result = await response.json(); if (result.error) { event.reject(); } else { event.resolve(); } }); expressCheckoutElement.on('shippingratechange', async (event) => { const response = await fetch('/update-session-shipping-rate', { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify({ sessionId: checkout.session.id, shippingRateId: event.shippingRate.id }) }); const result = await response.json(); if (result.error) { event.reject(); } else { event.resolve(); } });

Zahlung übermitteln

Zeigen Sie eine Schaltfläche Bezahlen an, die confirm von der Checkout-Instanz aufruft, um die Zahlung zu übermitteln.

index.html
<button id="pay-button">Pay</button> <div id="confirm-errors"></div>
checkout.js
const checkout = stripe.initCheckout({clientSecret}); const loadActionsResult = await checkout.loadActions(); if (loadActionsResult.type === 'success') { const {actions} = loadActionsResult; const button = document.getElementById('pay-button'); const errors = document.getElementById('confirm-errors'); button.addEventListener('click', () => { // Clear any validation errors errors.textContent = ''; actions.confirm().then((result) => { if (result.type === 'error') { errors.textContent = result.error.message; } }); }); }

Webhook-Ereignisse überwachen

Um Ihre Backend-Logik einzurichten, müssen Sie einen Endpoint einrichten, der die von Stripe gesendeten Webhook Ereignisse überwachen kann. Diese Ereignisse werden immer dann ausgelöst, wenn sich der Status in Stripe ändert, z. B. wenn für Abonnements neue Rechnungen erstellt werden. Richten Sie in Ihrer Anwendung einen HTTP-Handler ein, der eine POST-Anfrage akzeptiert, die das Webhook-Ereignis enthält, und überprüfen Sie die Signatur des Ereignisses.

Verwenden Sie während der Entwicklung die Registerkarte Ereignisse in Workbench, um Ereignisse zu überwachen und zu filtern.

Für die Produktionsphase können Sie eine Webhook-Endpoint-URL über das Dashboard oder mit der Webhook Endpoints API einrichten.

Weitere Informationen zu abonnementspezifischen Webhooks finden Sie unter Abonnement-Ereignisse.

Zugriff bereitstellen

Gewähren Sie Ihren Kundinnen und Kunden nach erfolgreicher Zahlung Zugriff auf Ihre Dienstleistung. In den meisten Fällen können Sie Ihnen Zugriff auf Ihre Dienstleistung gewähren, wenn Folgendes zutrifft:

  • Sie erhalten das Ereignis invoice.paid.
  • Der Status des Abos ist active. Sie können den Status auf der Seite Abonnements im Dashboard oder über die API zum Abrufen des Abos und Überprüfen des Status überprüfen.

Weitere Informationen zu Abo-spezifischen Webhooks, Abonnement-Ereignissen.

Ihre Integration testen

Testen Sie Ihre Integration, bevor Sie live gehen.

SzenarioTests
Erfolgreiche Abonnementabläufe
  • Test-Kartennummer 4242424242424242 für erfolgreiche Zahlungen verwenden
  • Abonnement-Erstellung und Kunden-Bereitstellung verifizieren
Fehlerszenarien
  • Verwenden Sie die Testkartennummer 4000000000000002, um generische Kartenablehnungen zu testen
  • Fehlerbehandlung und Kunden-Kommunikation verifizieren
  • Szenarien unzureichender Geldmittel mit 4000000000009995 testen
Zeitbasierte Ereignisse
  • Test-Uhren zur Simulation von Abo-Verlängerungen verwenden
  • Test Ablauf des Testzeitraums
  • Webhook-Ereignisbehandlung verifizieren
Promo-Codes
  • Promo-Codes beim Bezahlvorgang anwenden
  • Korrekte Rabattanwendung verifizieren
  • Ablauf des Testcodes und Nutzungsbeschränkungen
anteilmäßige Verrechnung
  • Anteilmäßige Verrechnungen für Szenarien wie Upgrades in der Mitte des Zyklus mit Test-Uhren testen
  • Umgang mit anteilmäßigen Verrechnungen durch Vorschau von Rechnungen verifizieren
Stornierungen
  • Stornologik während Testphasen testen
  • Überprüfen Sie über das Kundenportal veranlasste Stornierungen

Live gehen

  1. Öffnen Sie im Dashboard Ihre Kontoeinstellungen.
  2. Geben Sie Ihren Unternehmenstyp, Ihre Steuerangaben, Ihre Unternehmensdaten, Ihre persönlichen Verifizierungsinformationen und Ihre Informationen für die Kundschaft (z. B. eine Zahlungsbeschreibung in der Abrechnung) ein.
  3. Fügen Sie Bankdaten hinzu, um zu bestätigen, wo Ihr Geld ausgezahlt wird.
  4. Richten Sie die Zwei-Schritte-Authentifizierung zum Schutz Ihres Kontos ein.
  5. Optional können Sie automatischem Steuereinzug oder umsatzbasierte Klimaspenden hinzufügen.
  6. Prüfen Sie die eingegebenen Informationen und klicken Sie auf Zustimmen und absenden.
  7. Nachdem Sie Ihr Profil aktiviert haben, aktualisiert Stripe Sie vom Sandbox-Modus in den Live-Modus.

Erfahren Sie mehr über die Aktivierung Ihres Stripe-Kontos.

Nächste Schritte

Nach der Einrichtung Ihrer Integration empfehlen wir Ihnen, die folgenden Funktionen zu implementieren:

  • Richten Sie das Kundenportal ein, damit Ihre Kundinnen und Kunden ihre Abonnements und Zahlungsdaten verwalten können.
  • Richten Sie Smart Retries ein, damit die KI von Stripe die besten Zeitpunkte für die Wiederholung fehlgeschlagener Zahlungen auswählen kann, um die Wahrscheinlichkeit einer erfolgreichen Zahlung einer Rechnung zu erhöhen.
  • Richten Sie die automatische Abrechnung ein, um benutzerdefinierte, automatisierte Workflows zu entwickeln, um Ihre Geschäftsabläufe zu optimieren, die Kundenkommunikation zu verbessern und die Bemühungen zur Umsatzsicherung zu stärken.
War diese Seite hilfreich?
JaNein
  • Benötigen Sie Hilfe? Kontaktieren Sie den Kundensupport.
  • Schauen Sie sich unser Änderungsprotokoll an.
  • Fragen? Sales-Team kontaktieren.
  • LLM? Lesen Sie llms.txt.
  • Unterstützt von Markdoc