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
ÜbersichtZahlung annehmenAktualisieren Sie Ihre Integration
Online-Zahlungen
ÜbersichtIhren Use case finden
Payment Links verwenden
Vorgefertigte Checkout-Seite verwenden
Erstellen Sie eine benutzerdefinierte Integration mit Elements
    Übersicht
    QuickStart-Leitfäden
    Stripe Elements
    Vergleichen Sie Checkout-Sitzungen und PaymentIntents
    Erweiterte Integration entwerfen
    Erscheinungsbild anpassen
    Zahlungsmethoden verwalten
    Zusätzliche Informationen erfassen
    Abonnement-Integration erstellen
    Dynamische Aktualisierungen
    Rabatte hinzufügen
    Steuern auf Ihre Zahlungen einziehen
    Gutschriften einlösen
    Lassen Sie Kundinnen/Kunden in ihrer Landeswährung zahlen
    Zahlungsmethoden von Kundinnen und Kunden speichern und abrufen
      Die für eine Zahlung verwendete Zahlungsmethode speichern
      Zahlungsmethode speichern, ohne eine Zahlung zu tätigen
    Belege und bezahlte Rechnungen senden
    Zahlungen auf Ihrem Server manuell genehmigen
    Eine Zahlung separat autorisieren und einziehen
    Elements mit Checkout Sessions API-Änderungsprotokoll (Beta)
In-App-Integration erstellen
Verwenden Sie Managed Payments
Wiederkehrende Zahlungen
Präsenzzahlungen
Terminal
Zahlungsmethoden
Zahlungsmethoden hinzufügen
Zahlungsmethoden verwalten
Schnellerer Bezahlvorgang mit Link
Zahlungsvorgänge
Analytik
Salden und Abwicklungsdauer
Compliance und Sicherheit
Währungen
Abgelehnte Zahlungen
Anfechtungen
Betrugsprävention
Betrugsprävention von Radar
Auszahlungen
ZahlungsbelegeRückerstattungen und Stornierungen
Erweiterte Integrationen
Nutzerdefinierte Zahlungsabläufe
Flexibles Acquiring
Off-Session-Zahlungen
Multiprozessor-Orchestrierung
Mehr als Zahlungen
Unternehmensgründung
Krypto
Agentenbasierter Handel
Maschinelle Zahlungen
Financial Connections
Climate
Identitäten verifizieren
Vereinigte Staaten
Deutsch
StartseiteZahlungenBuild a custom integration with ElementsSave and retrieve customer payment methods

Zahlungsmethode eines Kunden/einer Kundin speichern, wenn er/sie diese für eine Zahlung verwendet

Erfahren Sie, wie Sie die Zahlungsdetails Ihrer Kund/innen für zukünftige Käufe speichern, wenn sie eine Zahlung tätigen.

Verwenden Sie die Checkout Sessions API, um Zahlungsdetails während eines Kaufs zu speichern. Dies ist nützlich für Situationen wie:

  • Belasten Sie ein Kundenkonto für eine E-Commerce-Bestellung und speichern Sie die Zahlungsdetails für zukünftige Einkäufe.
  • Erste Zahlung einer Reihe wiederkehrender Zahlungen initiieren.
  • Abbuchung einer Anzahlung und Speicherung der Zahlungsdetails, um später den vollen Betrag abzubuchen.

Compliance

Sie sind dafür verantwortlich, alle geltenden Gesetze, Vorschriften und Netzwerkregeln einzuhalten, wenn Sie die Zahlungsdaten eines Kunden oder einer Kundin für die zukünftige Verwendung speichern, beispielsweise um dem Kunden oder der Kundin seine bzw. ihre Zahlungsmethode beim Bezahlvorgang für einen zukünftigen Kauf anzuzeigen oder um ihm Kosten in Rechnung zu stellen, wenn er Ihre Website oder App nicht aktiv nutzt. Bevor Sie die Zahlungsmethode eines Kunden oder einer Kundin speichern oder ihm Kosten in Rechnung stellen, stellen Sie bitte sicher, dass Sie:

  • Fügen Sie Ihrer Website oder App Bestimmungen hinzu, die darlegen, wie Sie Zahlungsmethoden speichern möchten, beispielsweise:
    • Die kundenseitige Zustimmung, eine Zahlung oder mehrere Zahlungen für bestimmte Transaktionen in deren Namen einzuleiten
    • Der erwartete Zeitpunkt und die voraussichtliche Häufigkeit von Zahlungen (z. B. Zahlungen für geplante Raten- oder Abo-Zahlungen oder für außerplanmäßige Aufstockungen).
    • Wie Sie den Zahlbetrag ermitteln.
    • Ihre Stornorichtlinie, wenn die Zahlungsmethode für einen Abo-Dienst ist.
  • Verwenden Sie eine gespeicherte Zahlungsmethode ausschließlich für den in Ihren Bedingungen angegebenen Zweck.
  • Bitte holen Sie die ausdrückliche Zustimmung des Kunden oder der Kundin für diese spezifische Verwendung ein. Fügen Sie beispielsweise ein Kontrollkästchen „Meine Zahlungsmethode für zukünftige Transaktionen speichern“ hinzu.
  • Bewahren Sie die schriftliche Zustimmung Ihrer Kundinnen und Kunden zu Ihren Bedingungen auf.

Hinweis

Bei Verwendung von Elements mit der Checkout Sessions API werden nur Karten für gespeicherte Zahlungsmethoden unterstützt. Sie können keine anderen Zahlungsmethoden speichern, z. B. Bankkonten.

Voraussetzungen

  1. Befolgen Sie die Anweisungen beim Bezahlvorgang, um eine Zahlung zu akzeptieren.
  2. Befolgen Sie diese Anleitung, um die bei einer Zahlung verwendete Zahlungsmethode zu speichern, damit Sie sie für zukünftige Zahlungen desselben Kunden oder derselben Kundin wiederverwenden können.

Gespeicherte Zahlungsmethoden aktivieren

Vorsicht

Die globalen Datenschutzgesetze sind komplex und vielschichtig. Bevor Sie sich mit der Implementierung zur Speicherung von Kundenzahlungsdetails befassen, sollten Sie zuerst mit Ihrem Rechtsteam abstimmen, dass dies Ihren Datenschutz- und Compliance-Rahmenbedingungen entspricht.

Damit ein/e Kund/in eine Zahlungsmethode zur zukünftigen Verwendung speichern kann, geben Sie beim Erstellen der Checkout-Sitzung den Parameter saved_payment_method_options.payment_method_save an.

Zum Speichern einer Zahlungsmethode ist ein/e Kund/in erforderlich. Übergeben Sie eine/n bestehende/n Kund/in oder erstellen Sie eine/n neue/n, indem Sie customer_creation für die Checkout-Sitzung auf always setzen.

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 "line_items[0][price]"=
"{{PRICE_ID}}"
\ -d "line_items[0][quantity]"=2 \ -d mode=payment \ -d ui_mode=custom \ -d customer_creation=always \ -d "saved_payment_method_options[payment_method_save]"=enabled

Nachdem Sie die Checkout-Sitzung erstellt haben, verwenden Sie das Client-Geheimnis, das in der Antwort zurückgegeben wurde, zum Erstellen Ihrer Bezahlvorgangseite.

Hinweis

In der neuesten Version von Stripe.js ist die Einstellung von enableSave auf auto optional, da dies der Standardwert ist, wenn gespeicherte Zahlungsmethoden in der Checkout-Sitzung aktiviert sind.

Das Payment Element zeigt automatisch ein Kontrollkästchen zur Einholung der Zustimmung an, wenn gespeicherte Zahlungsmethoden in der Checkout-Sitzung aktiviert sind. Sie können dieses Verhalten explizit über elementsOptions bei initCheckout konfigurieren.

checkout.js
const checkout = stripe.initCheckout({ clientSecret, elementsOptions: { savedPaymentMethod: { // Default is 'auto' in the latest version of Stripe.js - this configuration is optional enableSave: 'auto', } } });

Zuvor gespeicherte Zahlungsmethode wiederverwenden

Jede gespeicherte Zahlung ist mit einem Kunden-Objekt verknüpft. Bevor Sie die Checkout-Sitzung erstellen, authentifizieren Sie Ihren Kunden und übergeben die zugehörige Kunden-ID an die Checkout-Sitzung.

Hinweis

In der neuesten Version von Stripe.js ist enableRedisplay standardmäßig auf auto gesetzt, wenn gespeicherte Zahlungsmethoden in der Checkout-Sitzung aktiviert sind.

Das Payment Element zeigt automatisch zuvor gespeicherte Zahlungsmethoden erneut an, damit Ihre Kundin/Ihr Kunde sie während des Bezahlvorgangs verwenden kann, wenn gespeicherte Zahlungsmethoden in der Checkout-Sitzung aktiviert sind.

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 "line_items[0][price]"=
"{{PRICE_ID}}"
\ -d "line_items[0][quantity]"=2 \ -d mode=payment \ -d ui_mode=custom \ -d customer=
"{{CUSTOMER_ID}}"

Sie können das Verhalten der erneuten Anzeige explizit über elementsOptions bei initCheckout konfigurieren.

checkout.js
const checkout = stripe.initCheckout({ clientSecret, elementsOptions: { savedPaymentMethod: { // Default is 'auto' in the latest version of Stripe.js - this configuration is optional enableSave: 'auto', // Default is 'auto' in the latest version of Stripe.js - this configuration is optional enableRedisplay: 'auto', } } });

OptionalNutzeroberfläche für gespeicherte Zahlungsmethoden erstellen

Sie können Ihre eigene Nutzeroberfläche für gespeicherte Zahlungsmethoden erstellen, anstatt die integrierte Nutzeroberfläche des Payment Element zu verwenden.

Um zu verhindern, dass das Payment Element das Einholen der Zustimmung und die Anzeige der zuvor gespeicherten Zahlungsmethoden verarbeitet, übergeben Sie zusätzliche elementsOptions für initCheckout.

checkout.js
const checkout = stripe.initCheckout({ clientSecret, elementsOptions: { savedPaymentMethod: { enableSave: 'never', enableRedisplay: 'never', } } });

Einwilligung einholen

Vorsicht

Die globalen Datenschutzgesetze sind komplex und vielschichtig. Bevor Sie sich mit der Implementierung zur Speicherung von Kundenzahlungsdetails befassen, sollten Sie zuerst mit Ihrem Rechtsteam abstimmen, dass dies Ihren Datenschutz- und Compliance-Rahmenbedingungen entspricht.

In den meisten Fällen müssen Sie die Zustimmung des/der Kund/in einholen, bevor Sie Details zu deren Zahlungsmethoden speichern dürfen. Im folgenden Beispiel zeigen wir Ihnen, wie Sie die Einwilligung mithilfe eines Kontrollkästchens einholen.

index.html
<label> <input type="checkbox" id="save-payment-method-checkbox" /> Save my payment information for future purchases </label> <button id="pay-button">Pay</button> <div id="confirm-errors"></div>

Wenn Sie confirm aufrufen, können Sie Stripe mitteilen, dass Ihr/e Kund/in die Zustimmung erteilt hat, indem Sie den Parameter savePaymentMethod übergeben. Wenn Sie die Zahlungsdetails von Kund/innen speichern, sind Sie dafür verantwortlich, alle geltenden Gesetze, Vorschriften und Netzwerkregeln einzuhalten.

checkout.js
const checkout = stripe.initCheckout({clientSecret}); const button = document.getElementById('pay-button'); const errors = document.getElementById('confirm-errors'); const checkbox = document.getElementById('save-payment-method-checkbox'); const loadActionsResult = await checkout.loadActions(); if (loadActionsResult.type === 'success') { const {actions} = loadActionsResult; button.addEventListener('click', () => { // Clear any validation errors errors.textContent = ''; const savePaymentMethod = checkbox.checked; actions.confirm({savePaymentMethod}).then((result) => { if (result.type === 'error') { errors.textContent = result.error.message; } }); }); }

Gespeicherte Zahlungsmethoden rendern

Verwenden Sie das Array savedPaymentMethods im Frontend, um die verfügbaren Zahlungsmethoden der Kund/innen zu rendern.

Hinweis

Das Array savedPaymentMethods enthält nur die Zahlungsmethoden, für die allow_redisplay auf always gesetzt ist. Befolgen Sie die Schritte zum Einholen der Zustimmung von den Kund/innen und stellen Sie sicher, dass der Parameter allow_redisplay ordnungsgemäß festgelegt ist.

index.html
<div id="saved-payment-methods"></div>
checkout.js
const checkout = stripe.initCheckout({clientSecret}); const loadActionsResult = await checkout.loadActions(); if (loadActionsResult.type === 'success') { const container = document.getElementById('saved-payment-methods'); const {actions} = loadActionsResult; actions.getSession().savedPaymentMethods.forEach((pm) => { const label = document.createElement('label'); const radio = document.createElement('input'); radio.type = 'radio'; radio.value = pm.id; label.appendChild(radio); label.appendChild(document.createTextNode(`Card ending in ${pm.card.last4}`)); container.appendChild(label); }); }

Mit einer gespeicherten Zahlungsmethode bestätigen

Wenn Ihr/e Kund/in eine gespeicherte Zahlungsmethode auswählt und bereit ist, den Bezahlvorgang abzuschließen, rufen Sie confirm auf und übergeben Sie die paymentMethod-ID.

index.html
<button id="pay-button">Pay</button>
checkout.js
const checkout = stripe.initCheckout({clientSecret}); const loadActionsResult = await checkout.loadActions(); if (loadActionsResult.type === 'success') { const container = document.getElementById('saved-payment-methods'); const {actions} = loadActionsResult; actions.getSession().savedPaymentMethods.forEach((pm) => { const label = document.createElement('label'); const radio = document.createElement('input'); radio.type = 'radio'; radio.value = pm.id; label.appendChild(radio); label.appendChild(document.createTextNode(`Card ending in ${pm.card.last4}`)); container.appendChild(label); }); }
War diese Seite hilfreich?
JaNein
  • Benötigen Sie Hilfe? Kontaktieren Sie den Kundensupport.
  • Chatten Sie mit Entwicklern/Entwicklerinnen von Stripe auf Discord.
  • Schauen Sie sich unser Änderungsprotokoll an.
  • Fragen? Sales-Team kontaktieren.
  • LLM? Lesen Sie llms.txt.
  • Unterstützt von Markdoc