Weiter zum Inhalt
Konto erstellen
oder
anmelden
Das Logo der Stripe-Dokumentation
/
KI fragen
Konto erstellen
Anmelden
Jetzt starten
Zahlungen
Finanzautomatisierung
Plattformen und Marktplätze
Geldmanagement
Entwickler-Tools
Jetzt starten
Zahlungen
Finanzautomatisierung
Jetzt starten
Zahlungen
Finanzautomatisierung
Plattformen und Marktplätze
Geldmanagement
Übersicht
Informationen zu Stripe Payments
Aktualisieren Sie Ihre Integration
Zahlungsanalysefunktionen
Online-Zahlungen
ÜbersichtIhren Use case findenZahlungen verwalten
Payment Links verwenden
Bezahlseite erstellen
Erweiterte Integration erstellen
In-App-Integration erstellen
Zahlungsmethoden
Zahlungsmethoden hinzufügen
Zahlungsmethoden verwalten
Schnellerer Bezahlvorgang mit Link
    Übersicht
    Sofortige Bankzahlungen
    Auf einen Blick
    Link mit Checkout
    Link mit Web Elements
    Link mit Mobile Elements
    Mit Invoicing verknüpfen
    Integrationsleitfäden
    Link-Zahlungsintegrationen
    Nutzerdefinierte Bezahlseite erstellen, die Link enthält
    Künftige Zahlungen mit Elements und Link einrichten
Zahlungsschnittstellen
Payment Links
Checkout
Web Elements
In-App-Elements
Zahlungsszenarien
Nutzerdefinierte Zahlungsabläufe
Flexibles Acquiring
Orchestrierung
Präsenzzahlungen
Terminal
Andere Stripe-Produkte
Financial Connections
Krypto
Climate
StartseiteZahlungenFaster checkout with Link

Nutzerdefinierte Bezahlseite erstellen, die Link enthält

Integrieren Sie Link mit dem Payment Element oder Link Authentication Element.

Seite kopieren

This guide walks you through how to accept payments with Link using the Payment Intents API and either the Payment Element or Link Authentication Element.

Es gibt drei Möglichkeiten, eine Kunden-E-Mail-Adresse für die Link-Authentifizierung und Registrierung zu sichern:

  • E-Mail-Adresse übermitteln: Sie können mit defaultValues eine E-Mail-Adresse an das Payment Element übergeben. Wenn Sie die E-Mail-Adresse und/oder die Telefonnummer der Kundin/des Kunden bereits im Bezahlvorgang erfassen, empfehlen wir diesen Ansatz.
  • E-Mail-Adresse erfassen: Sie können eine E-Mail-Adresse direkt im Payment Element erfassen. Wenn Sie die E-Mail-Adresse an keiner Stelle des Bezahlvorgangs erfassen, empfehlen wir diesen Ansatz.
  • Link Authentication Element: Sie können das Link Authentication Element verwenden, um ein einziges E-Mail-Eingabefeld sowohl für die E-Mail-Erfassung als auch für die Link-Authentifizierung zu erstellen. Dies empfehlen wir, wenn Sie das Address Element verwenden.
Authentifizierung oder Registrierung bei Link direkt im Payment Element während des Bezahlvorgangs

Erfassen Sie eine Kunden-E-Mail-Adresse für die Link-Authentifizierung oder Registrierung

Stripe einrichten
Serverseitig

Erstellen Sie zunächst ein Stripe-Konto oder melden Sie sich an.

Verwenden Sie unsere offiziellen Bibliotheken, um von Ihrer Anwendung aus auf die Stripe API zuzugreifen:

Command Line
Ruby
# Available as a gem sudo gem install stripe
Gemfile
Ruby
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

PaymentIntent erstellen
Serverseitig

Stripe verwendet ein PaymentIntent-Objekt, um Ihre Absicht darzustellen, eine Kundenzahlung einzuziehen. Dabei werden die Abbuchungsversuche und Zahlungsstatusänderungen während des gesamten Vorgangs dokumentiert.

Ein Übersichtsdiagramm des gesamten Zahlungsablaufs

Wenn Sie Kartendetails für die zukünftige Nutzung mit Setup Intents erfassen, listen Sie Zahlungsmethoden manuell auf, statt dynamische Zahlungsmethoden zu verwenden. Um Link ohne dynamische Zahlungsmethoden zu verwenden, aktualisieren Sie Ihre Integration so, dass link an payment_method_types übergeben wird.

Wenn Sie einen PaymentIntent erstellen, bieten Sie Ihren Kundinnen/Kunden dynamisch die relevantesten Zahlungsmethoden an, einschießlich Link, indem Sie dynamische Zahlungsmethoden verwenden. Um dynamische Zahlungsmethoden zu verwenden, fügen Sie den Parameter payment_method_types nicht ein. Sie können optional auch automatic_payment_methods aktivieren.

Notiz

Wenn der Parameter payment_method_types in Ihrer Integration nicht festgelegt ist, werden einige Zahlungsmethoden automatisch aktiviert, einschließlich Karten und Wallets.

So fügen Sie mithilfe dynamischer Zahlungsmethoden Link zu Ihrer Elements-Integration hinzu:

  1. Aktivieren Sie in Ihrem Dashboard in den Einstellungen der Zahlungsmethoden Link.
  2. Wenn Sie über eine bestehende Integration verfügen, die Zahlungsmethoden manuell auflistet, entfernen Sie den Parameter payment_method_types aus Ihrer Integration.

Client-Geheimnis abrufen

Im PaymentIntent ist ein Client-Geheimnis enthalten, das auf dem Client verwendet wird, um Zahlungen sicher abzuschließen. Es gibt verschiedene Verfahren zum Übergeben des Client-Geheimnisses an den Client.

Rufen Sie das Client-Geheimnis von einem Endpoint auf Ihrem Server ab, indem Sie die Browser-Funktion fetch verwenden. Diese Vorgehensweise funktioniert am besten, wenn es sich bei Ihrer Client-Seite um eine einseitige Anwendung handelt, insbesondere wenn sie mit einem modernen Frontend-Framework wie React erstellt wurde. Erstellen Sie den Server-Endpoint, der das Client-Geheimnis bereitstellt:

main.rb
Ruby
get '/secret' do intent = # ... Create or retrieve the PaymentIntent {client_secret: intent.client_secret}.to_json end

Und dann rufen Sie das Client-Geheimnis mit JavaScript auf der Client-Seite ab:

(async () => { const response = await fetch('/secret'); const {client_secret: clientSecret} = await response.json(); // Render the form using the clientSecret })();

E-Mail-Adressen von Kundinnen/Kunden erfassen

Link authentifiziert eine Kundin/einen Kunden anhand der E-Mail-Adresse. Je nach Bezahlvorgang haben Sie folgende Möglichkeiten: Eine E-Mail an das Payment Element übergeben, diese direkt im Zahlung Element erfassen oder das Link Authentication Element verwenden. Stripe empfiehlt hier, eine Kunden-E-Mail-Adresse an das Payment Element zu übergeben, falls verfügbar.

Falls eine der folgenden Voraussetzungen auf Sie zutrifft:

  • Sie benötigen eine einzige, optimierte Komponente für die Erfassung der E-Mail-Adresse und die Link-Authentifizierung.
  • Sie müssen eine Versandadresse von Ihrem Kunden/Ihrer Kundin erfragen.

Verwenden Sie dann diesen Integrationsablauf, der drei Elemente implementiert: das Link Authentication Element, das Payment Element und optional das Address Element.

Bei Link-fähigen Bezahlseiten befindet sich das Link Authentication Element am Anfang, gefolgt vom Address Element und dem Payment Element am Ende. Das Link Authentication Element kann bei mehrseitigen Bezahlvorgängen in derselben Reihenfolge auch auf separaten Seiten angezeigt werden.

Ein Zahlungsformular mit mehreren Elements erstellen

Ein Zahlungsformular mit mehreren Elements erstellen

Die Integration funktioniert wie folgt:

Ihr Zahlungsformular einrichten
Clientseitig

Jetzt können Sie Ihr nutzerdefiniertes Zahlungsformular mit den vorgefertigten Elements-Nutzeroberflächenkomponenten einrichten. Die Adresse Ihrer Zahlungsseite muss mit https:// statt http:// beginnen, damit Ihre Integration funktioniert. Sie können Ihre Integration ohne HTTPS testen. Aktivieren Sie HTTPS, wenn Sie bereit sind, Live-Zahlungen anzunehmen.

The Link Authentication Element rendert eine E-Mail-Adresseingabe. Wenn Link eine E-Mail-Adresse in einem bestehenden Link-Konto zuordnet, wird ein sicherer, einmaliger Authentifizierungscode an das Kundentelefon gesendet. Nach der Authentifizierung zeigt Stripe dann die über Link gespeicherten Adressen und Zahlungsmethoden automatisch an, sodass sie automatisch weiterverwendet werden können.

Diese Integration erstellt außerdem das Payment Element, welches ein dynamisches Formular für die Auswahl der Zahlungsmethode rendert. Das Formular erfasst automatisch alle notwendigen Zahlungsinformationen für die ausgewählte Zahlungsmethode. Nach erfolgter Kundenauthentifizierung übernimmt das Payment Element auch die Anzeige der über Link gespeicherten Zahlungsmethoden.

Stripe Elements

Install React Stripe.js and the Stripe.js loader from the npm public registry.

Command Line
npm install --save @stripe/react-stripe-js @stripe/stripe-js

Führen Sie auf Ihrer Zahlungsseite das Wrapping Ihres Zahlungsformulars mit der Komponente Elements durch und übergeben Sie das Client-Geheimnis aus dem vorangehenden Schritt. Wenn Sie die E-Mail-Adresse des Kunden/der Kundin bereits in einem anderen Abschnitt Ihres Formulars erfassen, ersetzen Sie Ihren bestehenden Eintrag durch das linkAuthenticationElement​.

Wenn Sie keine E-Mail-Adressen erfassen, fügen Sie das linkAuthenticationElement​ zu Ihrem Bezahlvorgang hinzu. Sie müssen das linkAuthenticationElement vor dem ShippingAddressElement platzieren (optional, wenn Sie Versandadressen erfassen) und das PaymentElement so platzieren, dass Link die über Link gespeicherten Daten für Ihre Kundinnen und Kunden automatisch in ShippingAddressElement und PaymentElement ausfüllt. Sie können auch die Erscheinungsbildoption übergeben und so die Elemente an das Design Ihrer Website anpassen.

Wenn Ihnen eine Kunden-E-Mail-Adresse vorliegt, übergeben Sie diese an die Option defaultValues von linkAuthenticationElement. Dadurch wird die E-Mail-Adresse vorab ausgefüllt und die Link-Authentifizierung ausgelöst.

Wenn Sie weitere Kundendaten haben, übergeben Sie diese an das defaultValues.billingDetails-Objekt für das PaymentElement. Indem möglichst viele Informationen vorab ausgefüllt werden, lässt sich die Erstellung von Link-Konten und die Wiederverwendung der Konten für Ihre Kundinnen und Kunden vereinfachen.

Rendern Sie dann die Komponenten linkAuthenticationElement und PaymentElement in Ihrem Zahlungsformular:

Checkout.js
import {loadStripe} from "@stripe/stripe-js"; import { Elements, LinkAuthenticationElement, PaymentElement, } from "@stripe/react-stripe-js"; const stripe = loadStripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
); // Customize the appearance of Elements using the Appearance API. const appearance = {/* ... */}; // Enable the skeleton loader UI for the optimal loading experience. const loader = 'auto';

linkAuthenticationElement, PaymentElement und ShippingAddressElement müssen sich nicht auf derselben Seite befinden. Wenn bei einem Ihrer Abläufe Kundenkontaktdaten, Versandinformationen und Zahlungsdaten in separaten Schritten angezeigt werden, können Sie jedes Element im entsprechenden Schritt oder auf der entsprechenden Seite anzeigen. Nehmen Sie das linkAuthenticationElement als E-Mail-Eingabeformular in die Erfassung von Kontaktinformationen auf, um sicherzustellen, dass das von Link bereitgestellte automatische Ausfüllen der Versand- und Zahlungsinformationen in vollem Umfang genutzt werden kann.

Fragen Sie am Anfang des Bezahlvorgangs E-Mail-Adressen mit dem Link Authentication Element ab, muss dieses auf der Versand- und Zahlungsseite nicht erneut angezeigt werden.

Eine E-Mail-Adresse abrufen

Sie können die Details der E-Mail-Adresse mithilfe der Eigenschaft onChange der Komponente linkAuthenticationElement abrufen. Der onChange-Handler wird immer dann ausgelöst, wenn der/die Nutzer/in das E-Mail-Feld aktualisiert oder wenn eine gespeicherte Kunden-E-Mail-Adresse automatisch angegeben wird.

<linkAuthenticationElement onChange={(event) => { setEmail(event.value.email); }} />

Eine Kunden-E-Mail-Adresse vorab eingeben

Das Link Authentication Element akzeptiert E-Mail-Adressen. Wenn eine Kundenadresse eingegeben wird, wird der Link-Authentifizierungsablauf mit der Option defaultValues ausgelöst, sobald die Zahlungsseite aufgerufen wird.

<linkAuthenticationElement options={{defaultValues: {email: 'foo@bar.com'}}}/>

OptionalZusätzliche Kundendaten vorab ausfüllen
Clientseitig

OptionalVersandadressen erfassen
Clientseitig

OptionalErscheinungsbild anpassen
Clientseitig

Zahlung an Stripe senden
Clientseitig

Verwenden Sie stripe.confirmPayment, um die Zahlung mit den von Ihren Kundinnen und Kunden in den verschiedenen Elements-Formularen erfassten Daten abzuschließen. Stellen Sie eine return_url für diese Funktion bereit, um anzugeben, wohin Stripe Nutzer/innen nach Abschluss der Zahlung weiterleitet.

Ihre Nutzer/innen werden möglicherweise zunächst an eine zwischengeschaltete Seite, z. B. eine Bankautorisierungsseite, weitergeleitet, bevor Stripe sie zu der return_url weiterleitet.

By default, card and bank payments immediately redirect to the return_url when a payment is successful. If you don’t want to redirect to the return_url, you can use if_required to change the behavior.

Checkout.js
import {loadStripe} from "@stripe/stripe-js"; import { useStripe, useElements, Elements, LinkAuthenticationElement, PaymentElement, // If collecting shipping AddressElement, } from "@stripe/react-stripe-js"; const stripe = loadStripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
); const appearance = {/* ... */}; // Enable the skeleton loader UI for the optimal loading experience. const loader = 'auto'; const CheckoutPage =({clientSecret}) => ( <Elements stripe={stripe} options={{clientSecret, appearance, loader}}> <CheckoutForm /> </Elements> ); export default function CheckoutForm() { const stripe = useStripe(); const elements = useElements(); const handleSubmit = async (event) => { event.preventDefault(); const {error} = await stripe.confirmPayment({ elements, confirmParams: { return_url: "https://example.com/order/123/complete", }, }); if (error) { // handle error } }; return ( <form onSubmit={handleSubmit}> <h3>Contact info</h3> <LinkAuthenticationElement /> {/* If collecting shipping */} <h3>Shipping</h3> <AddressElement options={{mode: 'shipping', allowedCountries: ['US']}} /> <h3>Payment</h3> <PaymentElement /> <button type="submit">Submit</button> </form> ); }

Die return_url entspricht einer Seite auf Ihrer Website, die den Zahlungsstatus des PaymentIntent liefert, wenn Sie die Rückgabeseite rendern. Wenn Stripe den Kunden/die Kundin an die return_url weiterleitet, können Sie die folgenden URL-Abfrageparameter verwenden, um den Zahlungsstatus zu überprüfen. Sie können auch Ihre eigenen Abfrageparameter anhängen, wenn Sie die return_url bereitstellen. Diese Abfrageparameter bleiben während des Weiterleitungsprozesses bestehen.

ParameterBeschreibung
payment_intentDie eindeutige ID für den PaymentIntent
payment_intent_client_secretDas Client-Geheimnis des PaymentIntent-Objekts.

OptionalAutorisierung und Erfassung trennen
Serverseitig

Ereignisse nach der Zahlung verarbeiten
Serverseitig

Stripe sendet ein payment_intent.succeeded-Ereignis, wenn die Zahlung abgeschlossen ist. Verwenden Sie einen Webhook, um diese Ereignisse zu empfangen, und führen Sie Aktionen aus, wie beispielsweise das Senden einer Bestellbestätigung per E-Mail, das Protokollieren des Verkaufs in der Datenbank oder das Starten eines Versand-Workflows.

Konfigurieren Sie Ihre Integration so, dass diese Ereignisse überwacht werden, statt auf einen Callback vom Client zu warten. Wenn Sie auf einen Callback vom Client warten, können die Kund/innen das Browserfenster schließen oder die App beenden, bevor der Callback erfolgt ist. Wenn Sie Ihre Integration so einrichten, dass sie asynchrone Ereignisse überwacht, können Sie verschiedene Arten von Zahlungsmethoden mit einer einzelnen Integration akzeptieren.

Neben der Abwicklung des payment_intent.succeeded-Ereignisses können Sie auch zwei andere wichtige Ereignisse verarbeiten, wenn Sie Zahlungen mit dem Payment Element erfassen:

EreignisBeschreibungAktion
payment_intent.succeededWird von Stripe gesendet, wenn Kund/innen eine Zahlung erfolgreich abgeschlossen haben.Senden Sie den Kund/innen eine Auftragsbestätigung und erledigen Sie die Ausführung der Bestellung.
payment_intent.payment_failedWird von Stripe gesendet, wenn Kund/innen versucht haben, eine Zahlung durchzuführen, die Zahlung aber nicht erfolgreich war.Wenn eine Zahlung von processing zu payment_failed übergegangen ist, bieten Sie den Kund/innen einen weiteren Zahlungsversuch an.

Integration testen

Vorsicht

Don’t store real user data in sandbox Link accounts. Treat them as if they’re publicly available, because these test accounts are associated with your publishable key.

Derzeit funktioniert Link nur mit Kreditkarten, Debitkarten und qualifizierten Käufen über US-Bankkonten. Link erfordert eine Domain-Registrierung.

You can create sandbox accounts for Link using any valid email address. The following table shows the fixed one-time passcode values that Stripe accepts for authenticating sandbox accounts:

WertErgebnis
Alle anderen 6 Ziffern, die unten nicht aufgeführt sindErfolgreich
000001Fehler, Code ungültig
000002Fehler, Code abgelaufen
000003Fehler, maximale Anzahl an Versuchen überschritten

Informationen zum Testen bestimmter Zahlungsmethoden finden Sie in den Beispielen für das Testen von Zahlungselementen.

Mehrere Finanzierungsquellen

Da Stripe zusätzliche Unterstützung für Finanzierungsquellen bietet, müssen Sie Ihre Integration nicht aktualisieren. Stripe unterstützt diese automatisch mit der gleichen Transaktionsabwicklungszeit und den gleichen Garantien wie bei Karten- und Bankkontozahlungen.

Kartenauthentifizierung und 3D Secure

Link unterstützt die 3D Secure 2 (3DS2)-Authentifizierung für Kartenzahlungen. 3DS2 erfordert, dass Kundinnen/Kunden beim Bezahlen einen zusätzlichen Verifizierungsschritt beim Kartenaussteller durchführen. Für Zahlungen, die erfolgreich mit 3D Secure authentifiziert wurden, gilt eine Haftungsverlagerung.

To trigger 3DS2 authentication challenge flows with Link in a sandbox, use the following test card with any CVC, postal code, and future expiration date: .

In a sandbox, the authentication process displays a mock authentication page. On that page, you can either authorize or cancel the payment. Authorizing the payment simulates successful authentication and redirects you to the specified return URL. Clicking the Failure button simulates an unsuccessful attempt at authentication.

Weitere Details finden Sie auf der Seite 3D Secure-Authentifizierung.

Notiz

Beim Testen von 3DS-Abläufen lösen nur Testkarten für 3DS2 die Authentifizierung bei Link aus.

OptionalVon Kundinnen/Kunden gespeicherte Daten anzeigen
Serverseitig
Clientseitig

OptionalLink-Zahlungsmethoden speichern
Serverseitig
Clientseitig

Stripe Ihren Kundinnen/Kunden anzeigen

Stripe erfasst Informationen über Kundeninteraktionen mit Elements , um Ihnen Dienste bereitzustellen, Betrug vorzubeugen und seine Dienste zu verbessern. Dies umfasst auch die Verwendung von Cookies und IP-Adressen, um zu ermitteln, welche Elements ein/e Kund/in während einer einzelnen Checkout-Sitzung gesehen hat. Sie sind dafür verantwortlich, alle Rechte und Zustimmungen offenzulegen und einzuholen, die Stripe benötigen, um Ihre Daten auf diese Weise zu nutzen. Weitere Informationen finden Sie in unserem Datenschutzcenter.

Siehe auch

  • Was ist Link
  • Link mit Elements
  • Link im Payment Element
  • Link Authentication Element kennenlernen
  • Link in verschiedenen Zahlungsintegrationen.
War diese Seite hilfreich?
JaNein
Benötigen Sie Hilfe? Kontaktieren Sie den Kundensupport.
Nehmen Sie an unserem Programm für frühzeitigen Zugriff teil.
Schauen Sie sich unser Änderungsprotokoll an.
Fragen? Sales-Team kontaktieren.
LLM? Lesen Sie llms.txt.
Unterstützt von Markdoc