Zukünftige PayPal-Zahlungen einrichten
Erfahren Sie, wie Sie PayPal-Details speichern und später Zahlungen Ihrer Kund/innen akzeptieren.
Richten Sie zukünftige PayPal-Zahlungen ein, um Kundenzahlungsdaten für Abonnements und verzögerte Abbuchungen zu speichern und zukünftige Einkäufe zu optimieren. Erfahren Sie, wie Sie wiederkehrende Zahlungen mit PayPal über Stripe aktivieren und verwenden können.
Wiederkehrende Zahlungen aktivieren
Stripe aktiviert wiederkehrende Zahlungen für die meisten Nutzer/innen automatisch, wenn sie im Stripe-Dashboard PayPal-Zahlungen aktivieren. Aufgrund der Richtlinien und regionalen Einschränkungen von PayPal müssen einige Nutzer/innen wiederkehrende Zahlungen jedoch möglicherweise manuell aktivieren. Dies gilt auch für Nutzer/innen, die ihre Konten vor der Einführung der automatischen Aktivierung eingerichtet haben. So aktivieren Sie wiederkehrende Zahlungen manuell:
Gehen Sie zu Ihren Einstellungen für Zahlungsmethoden.
Klicken Sie auf PayPal > Aktivieren im Abschnitt Wiederkehrende Zahlungen.
Nachdem Sie wiederkehrende Zahlungen aktiviert haben, werden diese im Dashboard als ausstehend angezeigt. In der Regel dauert es bis zu fünf Werktage, bis Sie Zugriff erhalten.
Wenn Ihnen Zugriff gewährt wird, stehen wiederkehrende Zahlungen in Ihren PayPal-Einstellungen zur Verfügung. In Testumgebungen sind wiederkehrende Zahlungen standardmäßig aktiviert.
Verwenden Sie die Setup Intents, um die Details der PayPal-Zahlungsmethode im Voraus zu erfassen und den endgültigen Betrag oder das Zahlungsdatum zu einem späteren Zeitpunkt zu bestimmen. Dies ist nützlich für Folgendes:
Kundinnen/Kunden erstellen oder abrufenServerseitig
Um die Zahlungsmethode PayPal für künftige Zahlungen zu hinterlegen, müssen Sie diese den gewünschten Kund/innen zuordnen.
Sie sollten ein Customer-Objekt erstellen, wenn Ihre Kund/innen ein Konto bei Ihrem Unternehmen anlegen. Wenn Sie die ID des Customer-Objekts mit Ihrer eigenen Darstellung eines/einer Kund/in verknüpfen, können Sie später die gespeicherten Angaben zur Zahlungsmethode abrufen und verwenden. Wenn Ihre Kund/innen noch kein Konto erstellt haben, können Sie jetzt trotzdem ein Customer-Objekt erstellen und es zu einem späteren Zeitpunkt mit Ihrer eigenen internen Darstellung des Kundenkontos verknüpfen.
SetupIntent erstellenServerseitig
Ein SetupIntent ist ein Objekt, das Ihre Absicht darstellt, die Zahlungsmethode Ihrer Kundinnen/Kunden für zukünftige Zahlungen einzurichten, und die entsprechenden Schritte dokumentiert.
Erstellen Sie einen SetupIntent auf Ihrem Server, wobei die payment_method_types auf paypal
festgelegt sind, und geben Sie die ID des Kunden/der Kundin an:
Das SetupIntent-Objekt enthält ein client_secret. Dies ist ein eindeutiger Schlüssel, den Sie auf der Client-Seite an Stripe übergeben müssen, um Ihre Käufer/innen an PayPal weiterzuleiten und Mandate zu autorisieren.
Zahlung an Stripe sendenClientseitig
Rufen Sie das Client-Geheimnis von der erstellten SetupIntent ab und rufen Sie STPPaymentHandler confirmSetupIntent. auf. Dies entspricht einer Webansicht, über die die Kundinnen/Kunden die Zahlung in PayPal durchführen können. Danach wird der Completion-Block mit dem Ergebnis der Zahlung aufgerufen.
Webhooks überwachenServerseitig
Verwenden Sie eine Methode wie Webhooks, um zu bestätigen, dass die Abrechnungsvereinbarung kundenseitig ordnungsgemäß autorisiert wurde, statt sich darauf zu verlassen, dass Ihre Kunden und Kundinnen zur Zahlungsstatusseite zurückkehren. Wird eine Abrechnungsvereinbarung erfolgreich autorisiert, so gibt der SetupIntent das Webhook-Ereignis setup_intent.succeeded aus. Wenn Kundinnen/Kunden die Abrechnungsvereinbarung nicht erfolgreich autorisieren, gibt der SetupIntent das Webhook-Ereignis setup_intent.setup_failed aus und wechselt wieder in den Status requires_
. Wenn ein Kunde/eine Kundin die Abrechnungsvereinbarung von seinem/ihren PayPal-Konto widerruft, wird mandate.updated ausgegeben.
Off-Session-Zahlungen mit einer gespeicherten PayPal-Zahlungsmethode belastenServerseitig
Wenn Sie bereit sind, Kundinnen/Kunden Off-Session abzurechnen, verwenden Sie die Kunden- und PaymentMethod-IDs, um einen PaymentIntent zu erstellen.
Um ein paypal
-Instrument zu finden, das belastet werden soll, listen Sie die Ihren Kundinnen/Kunden zugeordneten PaymentMethods auf.
Wenn Ihnen die Kunden-ID und die PaymentMethod-ID vorliegen, erstellen Sie eine PaymentIntent mit dem Betrag und der Währung der Zahlung. Legen Sie einige weitere Parameter fest, um die Off-Session-Zahlung durchzuführen:
- Setzen Sie off_session auf
true
, um anzugeben, dass sich der Kunde/die Kundin während dieses Zahlungsversuchs nicht in Ihrem Bezahlvorgang befindet. Dies hat zur Folge, dass der PaymentIntent einen Fehler ausgibt, wenn eine Authentifizierung erforderlich ist. - Legen Sie den Wert der Eigenschaft confirm des PaymentIntent auf
true
fest. Dadurch erfolgt die Bestätigung sofort, wenn der PaymentIntent erstellt wird. - Setzen Sie payment_method auf die ID der PaymentMethod und Kunde/Kundin auf die ID des Kunden/der Kundin.
Abbruch einer nutzerinitiierten ZahlungsmethodeServerseitig
Eine Kundin/ein Kunde kann das Abo (Abrechnungsvereinbarung) über ihr/sein PayPal-Konto kündigen. Wenn dies geschieht, sendet Stripe einen mandate.updated-Webhook. Alle nachfolgenden PaymentIntents, die die gespeicherte Zahlungsmethode verwenden, schlagen fehl, bis Sie auf eine Zahlungsmethode mit aktiven Mandaten wechseln. Wenn Zahlungen für Abos fehlschlagen, ändert sich der Status gemäß den in Ihren automatischen Einzugs-Einstellungen konfigurierten Abo-Status. Informieren Sie die Kundin/den Kunden über den Zahlungsausfall und belasten Sie die Zahlung mit einer anderen Zahlungsmethode.
OptionalKünftige PayPal-Zahlungen einrichten und eine Zahlung erfassenServerseitig
Es ist auch möglich, eine PayPal-Zahlungsmethode für die zukünftige Verwendung einzurichten und gleichzeitig eine Belastung vorzunehmen, wenn eine PaymentIntent erstellt wird.
Legen Sie setup_future_usage auf off_
fest, um anzugeben, das Sie die Zahlungsmethode für die zukünftige Verwendung einrichten möchten.
OptionalIntegration der Risikobibliothek für On-Session-Zahlungen manuell handhabenServerseitig
Wir empfehlen, Stripe.js zu nutzen, um On-Session-Zahlungen mit einer gespeicherten PayPal-Zahlungsmethode abzuwickeln, da es über eine integrierte Fraudnet-Integration verfügt. Sie können PayPal PaymentIntents jedoch auch mit den folgenden Schritten manuell auf Ihrem Server bestätigen:
Vernetzen Sie sich mit den Risikobibliotheken von PayPal (Fraudnet für Web und Magnes für Mobilgeräte), damit PayPal Risikodaten erfassen kann, wenn der/die Käufer/in bei der Zahlungssitzung anwensend ist. Dadurch lässt sich Betrug reduzieren und die Zahlungskonversion bei On-Session-Zahlungen erhöhen. Sie benötigen die Client-Metadaten-ID (auch bekannt als Risikokorrelations-ID), die zur Initialisierung der Bibliothek beim API-Aufruf an Stripe verwendet wird.
Nachdem die Bibliothek geladen wurde, können Sie einen PaymentIntent mit der Client-Metadaten-ID, dem Betrag und der Währung der Zahlung erstellen:
Sie erhalten den Meldungscode paypal_
, wenn Sie bei der Bestätigung einer On-Session-Zahlung den Parameter risk_correlation_id nicht übergeben.