Weiter zum Inhalt
Konto erstellen
oder
anmelden
Das Logo der Stripe-Dokumentation
/
KI fragen
Konto erstellen
Anmelden
Jetzt starten
Zahlungen
Umsatz
Plattformen und Marktplätze
Geldmanagement
Entwickler-Tools
Ü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
    Übersicht
    Optionen für die Integration von Zahlungsmethoden
    Standardzahlungsmethoden im Dashboard verwalten
    Arten von Zahlungsmethoden
    Karten
    Mit Stripe-Guthaben bezahlen
    Krypto
    Lastschriften
    Bank Redirect
    Banküberweisungen
    Überweisungen (Sources)
    Jetzt kaufen, später bezahlen
      Affirm
        Zahlung annehmen
        Site-Nachrichten
      Afterpay/Clearpay
      Alma
      Billie
      Capchase Pay
      Klarna
      Kriya
      Mondu
      Kauf auf Rechnung
      Scalapay
      SeQura
      Sunbit
      Zip
    Zahlungen in Echtzeit
    Gutscheine
    Geldbörsen
    Lokale Zahlungsmethoden nach Land aktivieren
    Nutzerdefinierte Zahlungsmethoden
Zahlungsmethoden verwalten
Schnellerer Bezahlvorgang mit Link
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
StartseiteZahlungenAdd payment methodsBuy now, pay laterAffirm

Eine Affirm-Zahlung annehmen

So akzeptieren Sie die "Jetzt kaufen, später bezahlen"-Zahlungsmethode Affirm.

Seite kopieren

Notiz

Dieser Leitfaden hilft Ihnen, Affirm in Ihren Online-Bezahlvorgang zu integrieren. Informationen zu persönlichen Zahlungen mit Stripe Terminal finden Sie unter Zusätzliche Zahlungsmethoden.

Stripe-Nutzer/innen können die Payment Intents API – einen zentralen Integrationspfad für die Erstellung von Zahlungen mit einer beliebigen unterstützten Methode – verwenden, um Zahlungen per Affirm von Kundinnen/Kunden aus folgenden Ländern anzunehmen:

  • Kanada
  • Vereinigte Staaten

Die Annahme von Affirm-Zahlungen auf Ihrer Website umfasst Folgendes:

  • Objekt zur Zahlungsverfolgung erstellen
  • Informationen zur Zahlungsmethode erfassen
  • Zahlung zur weiteren Verarbeitung an Stripe übermitteln
  • Umgang mit der Affirm-Weiterleitung und relevanten Webhook-Ereignissen

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

Ein PaymentIntent ist ein Objekt, das Ihre Absicht, eine Kundenzahlung einzuziehen, darstellt und den gesamten Zahlungsvorgang dokumentiert.

Erstellen Sie zunächst einen PaymentIntent auf Ihrem Server und geben Sie den einzuziehenden Betrag und die Währung an. Wenn Sie bereits eine Integration mit der Payment Intents API haben, fügen Sie Affirm zur Liste der Zahlungsmethoden-Typen für Ihren PaymentIntent hinzu:

Command Line
cURL
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount=6000 \ -d currency=usd \ -d "payment_method_types[]"=affirm

Sie können auch das Payment Element verwenden und Zahlungsmethoden über das Dashboard verwalten. Stripe handhabt die Rückgabe geeigneter Zahlungsmethoden basierend auf Faktoren wie Betrag, Währung und Zahlungsablauf der Transaktion. Weitere Informationen finden Sie unter Zahlung akzeptieren.

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 })();

Angaben zur Zahlungsmethode erfassen und weitergeben
Clientseitig

Wenn Kundinnen/Kunden über das „Click to Pay“-Verfahren mit Affirm bezahlen, empfehlen wir Ihnen, Stripe.js zu verwenden, um die Zahlung an Stripe zu übermitteln. Stripe.js ist unsere grundlegende JavaScript-Bibliothek für die Erstellung von Zahlungsabläufen. Sie übernimmt automatisch komplexe Integrationsaufgaben und ermöglicht es Ihnen, Ihre Integration in Zukunft unkompliziert um andere Zahlungsmethoden zu erweitern.

Fügen Sie das Stripe.js-Skript auf Ihrer Bezahlseite ein, indem Sie es zum Header der HTML-Datei hinzufügen.

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

Erstellen Sie auf Ihrer Zahlungsseite eine Instanz von Stripe.js mit dem folgenden JavaScript.

script.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 var stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
);

Anstatt das gesamte PaymentIntent-Objekt an den Client zu senden, verwenden Sie dessen Client-Geheimnis aus Schritt 1. Dieses unterscheidet sich von Ihren API-Schlüsseln, mit denen Anfragen der Stripe-API authentifiziert werden.

Gehen Sie vorsichtig mit dem Client-Geheimnis um, da es die Zahlung abschließen kann. Sie dürfen nicht protokolliert, in URLs eingebettet oder Personen außer dem Kunden selbst zugänglich gemacht werden.

Zahlungserfolgsquoten mit zusätzlichen Details verbessern

Wir empfehlen die Übergabe von Versand- und Abrechnungs-Details, um die Konversionsrate zu verbessern. Dies ist jedoch nicht erforderlich.

In diesem Integrationsleitfaden wird vorgeschlagen, die Versand- und Rechnungsinformationen auf dem Client zu übergeben, nachdem der/die Kund/in seine/ihre Zahlungsmethode ausgewählt hat.

Wenn Sie diese Felder übergeben, sollte die Versandadresse gültige Daten in den Feldern line1, city, state, postal_code und country enthalten. Ebenso müssen Abrechnungsdetails gültige Daten in den Feldern line1, city, state, postal_code und country aufweisen.

PaymentIntent bestätigen

Verwenden Sie stripe.confirmAffirmPayment um die Weiterleitung von Ihrer Seite zu verarbeiten und die Zahlung zu ermöglichen. Sie müssen außerdem eine return_url übergeben, um das Ziel anzugeben, an das Nutzer/innen weitergeleitet werden, nachdem sie die Zahlung auf der Website oder in der App von Affirm durchgeführt haben.

Auf der Zahlungsseite von Affirm wählen die Kund/innen die ihnen zur Verfügung stehenden Zahlungsoptionen aus. Weitere Informationen finden Sie auf der Übersichtsseite. Sie können die Zahlungsoptionen auf der Affirm-Zahlungsseite nicht einschränken oder vorab auswählen. Wenn Sie den Kund/innen diese Wahl überlassen, maximieren Sie ihre Möglichkeiten, Transaktionen mit Ihnen durchzuführen.

script.js
// Redirects away from the client stripe.confirmAffirmPayment( '{{PAYMENT_INTENT_CLIENT_SECRET}}', { payment_method: { // Billing information is optional but recommended to pass in. billing_details: { email: 'jenny@rosen.com', name: 'Jenny Rosen', address: { line1: '1234 Main Street', city: 'San Francisco', state: 'CA', country: 'US', postal_code: '94111', }, }, }, // Shipping information is optional but recommended to pass in. shipping: { name: 'Jenny Rosen', address: { line1: '1234 Main Street', city: 'San Francisco', state: 'CA', country: 'US', postal_code: '94111', }, }, // Return URL where the customer should be redirected after the authorization. return_url: 'https://example.com/checkout/complete', } ).then(function(result) { if (result.error) { // Inform the customer that there was an error. console.log(result.error.message); } });

Wenn Ihr Kunde/Ihre Kundin eine Zahlung übermittelt, leitet Stripe ihn an die return_url weiter und fügt die folgenden URL-Abfrageparameter ein. Die Rückgabeseite kann diese nutzen, um den Status des PaymentIntent abzurufen, damit der Kunde/die Kundin den Zahlungsstatus anzeigen kann.

Wenn Sie die return_url angeben, können Sie auch Ihre eigenen Abfrageparameter für die Verwendung auf der Rückgabeseite anhängen.

ParameterBeschreibung
payment_intentDie eindeutige ID für den PaymentIntent.
payment_intent_client_secretDas Client-Geheimnis des PaymentIntent-Objekts. Bei Abonnementintegrationen wird dieses client_secret auch über confirmation_secret im Invoice-Objekt sichtbar gemacht

Wenn Kundinnen und Kunden auf Ihre Seite weitergeleitet werden, können Sie payment_intent_client_secret nutzen, um den PaymentIntent abzufragen und Ihren Kundinnen und Kunden den Transaktionsstatus anzuzeigen.

Affirm-Integration testen

Testen Sie Ihre Affirm-Integration mit Ihren Test-API-Schlüsseln, indem Sie die Weiterleitungsseite anzeigen. Sie können die erfolgreiche Zahlung testen, indem Sie die Zahlung auf der Weiterleitungsseite authentifizieren. Der PaymentIntent wechselt von requires_action zu succeeded.

Um den Fall zu testen, dass sich der/die Nutzer/in nicht authentifizieren kann, verwenden Sie Ihre Test-API-Schlüssel und rufen Sie die Weiterleitungsseite auf. Klicken Sie auf der Weiterleitungsseite in der oberen linken Ecke auf X. Der PaymentIntent wechselt von requires_action zu requires_payment_method.

Bei einer Weiterleitung an die Affirm-Sandbox fragt Sie Affirm möglicherweise nach den letzten 4 Ziffern Ihrer SSN. Affirm schlägt vor, '0000' oder '5678' zu verwenden.

OptionalGetrennte Autorisierung und Erfassung

OptionalAffirm-Weiterleitung manuell handhaben

OptionalHandhabung von Ereignissen nach der Zahlung

OptionalPayment Method Messaging auf Ihrer Website anzeigen

Fehlgeschlagene Zahlungen

Affirm berücksichtigt mehrere Faktoren bei der Entscheidung, ob eine Transaktion akzeptiert oder abgelehnt wird (zum Beispiel die Dauer der Nutzung von Affirm durch den/die Käufer/in, den ausstehenden Betrag, den der/die Kund/in zurückzahlen muss und den Wert der aktuellen Bestellung).

Bieten Sie in Ihrem Bezahlvorgang immer weitere Zahlungsoptionen wie card an, da Affirm-Zahlungen eine höhere Ablehnungsrate haben als viele andere Zahlungsmethoden. In diesen Fällen wird die PaymentMethod getrennt, und der Status des PaymentIntent-Objekts wechselt automatisch zu requires_payment_method.

Anders als bei einer abgelehnten Zahlung wird bei einem Affirm-PaymentIntent mit dem Status requires_action erwartet, dass die Kundinnen/Kunden die Zahlung innerhalb von 12 Stunden nach Weiterleitung zur Affirm-Website abschließen. Wenn nach 12 Stunden keine Aktion erfolgt ist, wird die PaymentMethod getrennt und der Status des PaymentIntent-Objekts wechselt automatisch zu requires_payment_method.

Teilen Sie Ihren Kund/innen in diesen Fällen mit, dass sie es mit einer anderen Zahlungsoption versuchen sollten, die in Ihrem Bezahlvorgang zur Verfügung gestellt wird.

Fehlercodes

Im Folgenden finden Sie die häufigsten Fehlercodes und die entsprechenden empfohlenen Maßnahmen:

FehlercodeEmpfohlene Maßnahme
payment_intent_payment_attempt_failedEin allgemeiner Fehler, der darauf hinweist, dass der Bezahlvorgang mit Affirm fehlgeschlagen ist. Zusätzliche Informationen können im Grund für das Zahlungsergebnis verfügbar sein.
payment_method_provider_declineAffirm hat die Kundenzahlung abgelehnt. Als nächsten Schritt muss sich der Kunde/die Kundin an Affirm wenden, um weitere Informationen einzuholen.
payment_intent_payment_attempt_expiredDer Kunde/die Kundin hat die Zahlung auf der Zahlungsseite von Affirm nicht abgeschlossen und die Zahlungssitzung ist abgelaufen. Payment Intents, die nicht erfolgreich autorisiert wurden, lassen Stripe 12 Stunden nach der ersten Erstellung des Bezahlvorgangs automatisch ablaufen.
payment_method_not_availableBei Affirm ist ein Fehler im Zusammenhang mit der Dienstleistung aufgetreten und kann die Anfrage nicht abschließen. Versuchen Sie es zu einem späteren Zeitpunkt erneut.
amount_too_smallGeben Sie einen Betrag innerhalb der Standard-Transaktionslimits von Affirm ein.
amount_too_largeGeben Sie einen Betrag innerhalb der Standard-Transaktionslimits von Affirm ein.

Bei einigen Fehlern können zusätzliche Erkenntnisse im Grund für das Zahlungsergebnis enthalten sein:

ErgebnisursachenWas bedeutet das?
generic_declineDer Standardgrund für das Ergebnis eines Zahlungsfehlers. Dies weist in der Regel darauf hin, dass der Partner die Zahlung abgelehnt hat (z. B. aufgrund unzureichender Deckung), dass die Bank die Zahlung abgelehnt hat, dass die Transaktion einen Kauf mit hohem Risiko beinhaltete oder auf einen ähnlichen Grund. In diesen Fällen erhält Stripe möglicherweise nicht immer einen Ablehnungsgrund.
affirm_checkout_canceledEntweder hat der Kunde/die Kundin den Bezahlvorgang mit Affirm explizit abgebrochen oder Affirm hat den Kreditanspruch des Kunden/der Kundin abgelehnt. Stripe kann den Unterschied zwischen diesen beiden Ereignistypen nicht erkennen.
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