Integration entwerfen
Erfahren Sie, welche Auswahlen Sie vor der Integration des Payment Element treffen müssen.
Bevor Sie Ihre Payment Element-Integration erstellen, wählen Sie einen Integrationspfad, der zu Ihren geschäftlichen Anforderungen passt.
Das nachfolgende Diagramm gibt einen Überblick über die Integrationsleitfäden, die bei der Integration des Payment Element verfügbar sind.
Die nachfolgenden Abschnitte zeigen die beiden Architekturoptionen, die bei der Integration des Payment Element erforderlich sind.
Auswählen, wann der PaymentIntent bzw. SetupIntent erstellt werden soll
Das Payment Element erfasst Zahlungsinformationen von Ihren Kundinnen und Kunden und füllt diese für ein PaymentIntent- oder ein SetupIntent-Objekt aus. Dabei kommt es darauf an, ob Sie eine Zahlung einziehen oder eine Zahlungsmethode für die zukünftige Verwendung einrichten möchten. Wenn Kundinnen und Kunden den Bezahlvorgang beginnen, können Sie entweder:
Nur das Payment Element erstellen: Verzögern Sie die Erstellung und Bestätigung des PaymentIntent oder SetupIntent, bis die Kundin/der Kunde das Zahlungsformular durch Klicken auf die Schaltfläche Bezahlen absendet. Wählen Sie diese Option, wenn:
Sie einen mehrseitigen Bezahlvorgang haben, bei dem die Seite zum Erfassen der Zahlungsdetails vor der Seite zur Zahlungsübermittlung oder Bestellübersicht angezeigt wird. Erfahren Sie, wie Sie eine zweistufige Bestätigung erstellen.
Sie eine dynamische Bezahlseite haben, auf der sich der Betrag je nach Kundenauswahl ändern kann, zum Beispiel indem die Artikel oder die Anzahl der gekauften Artikel geändert oder Rabattcodes hinzugefügt wurden. Wenn Sie die Erstellung des Intent aufschieben, bis die Kundin/der Kunde auf Bezahlen geklickt hat, müssen Sie Ihren Intent nicht mit den auf dem Client vorgenommenen Änderungen synchronisieren. Dies kann erforderlich sein, da sich Änderungen des Zahlungsbetrags auf die mögliche Nutzung bestimmter Zahlungsmethoden auswirken kann. Erfahren Sie, wie Sie Zahlungsdetails vor der Erstellung eines PaymentIntent erfassen, wenn Sie den Intent auf Ihrem Client bestätigen, und wie Sie Zahlungen auf dem Server abschließen, wenn Sie den Intent auf Ihrem Server bestätigen.
PaymentIntent/SetupIntent als auch das Payment Element erstellen: Erstellen Sie den PaymentIntent oder SetupIntent, bevor Sie die Bezahlseite laden, und erstellen Sie anschließend das Payment Element. Verknüpfen Sie die beiden miteinander, indem Sie das
client_
des Intent als Parameter angeben, wenn Sie das Elements-Objekt erstellen. Wählen Sie diese Option, wenn:secret - Sie eine statische Bezahlseite haben und Ihre Integration schnell einrichten möchten. So nehmen Sie Zahlungen an.
Auswählen, wo der PaymentIntent bzw. SetupIntent bestätigt werden soll
Die vom Payment Element erfassten Zahlungsinformationen werden zum Zeitpunkt der Bestätigung auf den PaymentIntent bzw. den SetupIntent übertragen. Wenn die Kundin/der Kunde auf Bezahlen klickt, können Sie:
PaymentIntent/SetupIntent auf Ihrem Client bestätigen: Der Code auf Ihrem Client ruft ein Stripe SDK auf, das die API aufruft, um den Intent zu bestätigen. Das Stripe SDK verarbeitet auch automatisch zusätzliche nächste Aktionen, die möglicherweise erforderlich werden, wie die Authentifizierung mit 3D Secure, und lokalisiert auch Fehlermeldungen. Wählen Sie diese Option, wenn:
- Sie benötigen keine zusätzliche Kontrolle über die Bestätigung des Intent auf Ihrem Server und Sie bevorzugen die schnellste Integration.
PaymentIntent/SetupIntent auf Ihrem Server bestätigen: Der Code auf Ihrem Server ruft direkt die API auf, um den Intent zu bestätigen. Wenn weitere Aktionen erforderlich sind, müssen Sie diese entweder manuell oder mithilfe eines Stripe SDK erledigen, wie z. B. mit stripe.handleNextAction. Wählen Sie diese Option, wenn:
- Sie vor der Bestätigung die Geschäftslogik auf Ihrem Server ausführen müssen, wie z. B. Einschränkungen der Zahlungsmethode oder die Anpassung der Plattformgebühren. Sobald Ihre Geschäftslogik ausgeführt wird, bestätigen Sie sofort den Intent auf Ihrem Server, um sicherzustellen, dass der Client keine Änderungen vornehmen kann, die Ihre Geschäftslogik ungültig machen könnten.