Zahlungen mit MobilePay
So akzeptieren Sie MobilePay, eine beliebte Zahlungsmethode in Dänemark und Finnland.
MobilePay ist eine einmalige Karten-Wallet-Zahlungsmethode, die in Dänemark und Finnland verwendet wird. Sie ermöglicht Ihren Kundinnen und Kunden, Zahlungen mit der Vipps-App zu authentifizieren und zu genehmigen.
Wenn Ihre Kundin oder Ihr Kunde mit MobilePay bezahlt, führt Stripe eine Kartentransaktion mit den von MobilePay empfangenen Kartendaten durch. Die Verarbeitung der Kartentransaktion ist für Ihre Integration unsichtbar und Stripe benachrichtigt Sie sofort darüber, ob die Zahlung erfolgreich war oder fehlgeschlagen ist.
Stripe einrichtenServerseitig
Nutzen Sie unsere offiziellen Bibliotheken für den Zugriff auf die Stripe API über Ihre Anwendung:
PaymentIntent erstellenServerseitig
Ein PaymentIntent ist ein Objekt, das Ihre Absicht darstellt, eine Zahlung von einem Kunden/einer Kundin einzuziehen, und das den Lebenszyklus des Zahlungsvorgangs in jeder Phase verfolgt. Erstellen Sie einen PaymentIntent
auf Ihrem Server und geben Sie den einzuziehenden Betrag sowie eine unterstützte Währung an (eur
, dkk
, sek
oder nok
). Wenn Sie bereits eine Integration mit dem Payment Intents API haben, fügen Sie mobilepay
zur Liste der Zahlungsmethoden hinzu.
Beispielantwort
{ "id": "pi_12345", "amount": 1099, "client_secret": "pi_12345_secret_abcdef", "currency": "dkk", "payment_method": "pm_12345", "payment_method_types": [ "mobilepay" ], "status": "requires_confirmation" }
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.
PaymentIntent bestätigen
Verwenden Sie die PaymentIntent-ID aus Schritt 2, um den PaymentIntent zu bestätigen. Dadurch wird erklärt, dass die Kundin/der Kunde beabsichtigt, mit der angegebenen PaymentMethod zu bezahlen. Stripe leitet eine Zahlung ein, nachdem der PaymentIntent bestätigt wurde. Die return_url gibt an, wohin Stripe den Kunden/die Kundin weiterleitet, nachdem die Zahlung abgeschlossen ist.
Beispielantwort
{ "id": "pi_12345", "amount": 1099, "currency": "dkk", "payment_method": "pm_12345", "next_action": { "redirect_to_url": { "return_url": "https://example.com/checkout/complete", "url": "https://pm-redirects.stripe.com/authorize/acct_123/pa_nonce_abc" }, "type": "redirect_to_url" }, "payment_method_types": [ "mobilepay" ], "status": "requires_action" }
Um die Zahlung zu autorisieren, leiten Sie Ihre Kundinnen/Kunden an die URL im Feld next_action[redirect_to_url][url] weiter.
- Auf dem Desktop öffnet die URL eine MobilePay-Landingpage, auf der die Kundinnen/Kunden ihre Telefonnummer eingeben können, mit der ihr MobilePay-Konto identifiziert wird. Sie können dann die MobilePay-Smartphone-App verwenden, um mit der Zahlungsautorisierung fortzufahren.
- Auf Mobilgeräten öffnet die URL direkt die MobilePay-Anwendung (falls vorhanden) oder leitete Nutzer/innen an die MobilePay-Landingpage weiter, ähnlich wie beim Desktop-Vorgang.
Ihr Kunde/Ihre Kundin hat 5 Minuten Zeit, die Weiterleitungs-URL zu öffnen und die Zahlung in der MobilePay-App zu autorisieren. Wenn die zugrunde liegende Kartenzahlung fehlschlägt, kann kundenseitig eine andere Karte ausgewählt und es in der MobilePay-App erneut versucht werden. Wenn die Zahlung nicht innerhalb von 5 Minuten autorisiert wird, schlägt sie fehl und der Status der PaymentIntent wechselt zu requires_
.
Ereignisse nach der Zahlung verarbeiten
Stripe übermittelt ein payment_intent.succeeded-Ereignis, wenn die Zahlung abgeschlossen ist. Verwenden Sie im Dashboard einen Webhook oder eine Partnerlösung, um diese Ereignisse zu empfangen und Aktionen auszuführen (Versenden einer Bestellbestätigung per E-Mail an die Kund/innen, Erfassen des Verkaufs in einer Datenbank oder Einleiten des Versandablaufs).
Überwachen Sie diese Ereignisse, statt auf einen Callback vom Client zu warten. Auf dem Client könnte der Kunde/die Kundin das Browserfenster schließen oder die App beenden, bevor der Callback erfolgt ist und böswillige Clients könnten die Antwort manipulieren. Wenn Sie Ihre Integration so einrichten, dass asynchrone Ereignisse überwacht werden, hilft Ihnen dies auch dabei, in Zukunft mehr Zahlungsmethoden zu akzeptieren. Hier erhalten Sie Informationen zu den Unterschieden zwischen allen unterstützten Zahlungsmethoden.
Manuelles Bearbeiten von Ereignissen im Dashboard
Verwenden Sie das Dashboard, um Ihre Testzahlungen im Dashboard anzuzeigen, E-Mail-Belege zu senden, Auszahlungen zu bearbeiten oder fehlgeschlagene Zahlungen erneut zu versuchen.
Erstellen eines benutzerdefinierten Webhooks
Erstellen Sie einen benutzerdefinierten Webhook-Handler, um auf Ereignisse zu hören und eigene asynchrone Zahlungsabläufe zu implementieren. Testen und debuggen Sie Ihre Webhook-Integration lokal mit der Stripe CLI.
Integrieren einer vorgefertigten App
Bearbeiten Sie häufige Unternehmensereignisse, wie z. B.Automatisierung oderMarketing und Vertrieb, indem Sie eine Partneranwendung integrieren.
Integration testen
Erstellen Sie mit Ihren Test-API-Schlüsseln einen PaymentIntent. Nachdem Sie den PaymentIntent bestätigt haben, folgen Sie der next_
-Weiterleitungs-URL zu einer Testseite mit Optionen zur Autorisierung oder Ablehnung der Zahlung.
- Klicken Sie auf Testzahlung autorisieren, um den Fall einer erfolgreichen Zahlung zu testen. Der PaymentIntent wechselt von
requires_
zuaction succeeded
. - Klicken Sie auf Testzahlung fehlschlagen lassen, um den Fall einer fehlgeschlagenen Kundenauthentifizierung zu testen. Der PaymentIntent wechselt von
requires_
zuaction requires_
.payment_ method
OptionalZahlung autorisieren und später erfassen
MobilePay unterstützt die separate Autorisierung und Erfassung.
Stripe anweisen, nur die Autorisierung durchzuführen
Um anzugeben, dass Sie Autorisierung und Erfassung trennen möchten, legen Sie capture_method beim Erstellen des PaymentIntent auf manual
fest. Dieser Parameter weist Stripe an, nur den Betrag auf der Karte des Kunden/der Kundin zu autorisieren, der mit MobilePay verknüpft ist.
Nach erfolgreicher Autorisierung sendet Stripe das Ereignis payment_intent.amount_capturable_updated. Weitere Informationen finden Sie unter Ereignisse.
Die Gelder erfassen
Nach erfolgreicher Autorisierung wechselt der Status der PaymentIntent zu requires_
, und Sie können die autorisierten Gelder erfassen. Stripe unterstützt nur die manuelle Erfassung des Gesamtbetrags.
OptionalStornierung
Sie können MobilePay-Zahlungen stornieren, bevor sie ablaufen, indem Sie den mit der MobilePay-Zahlung verknüpften PaymentIntent stornieren.
Fehlgeschlagene Zahlungen
MobilePay-Transaktionen können fehlschlagen, wenn die zugrunde liegende Kartentransaktion abgelehnt wird. Weitere Infos zu Kartenablehnungen. In diesem Fall wird die PaymentMethod getrennt und der Status des PaymentIntent wechselt automatisch zu requires_
.
Wenn der Status des PaymentIntent requires_
ist, muss Ihr Kunde/Ihre Kundin die Zahlung innerhalb von 5 Minuten authentifizieren. Wenn nach 5 Minuten keine Aktion erfolgt ist, wird die PaymentMethod getrennt und der Status des PaymentIntent wechselt automatisch zu requires_
.
Rückerstattungen und angefochtene Zahlungen
Stripe führt eine Kartentransaktion mit Standard-Card-Rails im Rahmen einer Vipps-Transaktion durch. Rückerstattungen und Zahlungsanfechtungen unterliegen den Netzwerkregeln von Visa und Mastercard.