Paiements MobilePay
Comment accepter MobilePay, un moyen de paiement très répandu au Danemark et en Finlande.
MobilePay est un wallet par carte à usage unique utilisé au Danemark et en Finlande. Il permet à votre client de s’authentifier et d’approuver des paiements à l’aide de l’application MobilePay.
Lorsque votre client paie avec MobilePay, Stripe effectue une transaction par carte en utilisant les données de carte que nous recevons de MobilePay. Le traitement de la transaction par carte est invisible pour votre intégration, et Stripe vous informe immédiatement de la réussite ou de l’échec du paiement.
Configurer StripeCôté serveur
Utilisez nos bibliothèques officielles pour accéder à l’API Stripe depuis votre application :
Créer un PaymentIntentCôté serveur
Un PaymentIntent est un objet qui représente votre intention d’encaisser un paiement auprès d’un client et qui suit le cycle de vie du processus de paiement étape par étape. Créez un PaymentIntent
sur votre serveur et spécifiez le montant à collecter ainsi qu’une devise prise en charge (eur
, dkk
, sek
ou nok
). Si votre intégration inclut déjà l’API Payment Intents, ajoutez mobilepay
à la liste des types de moyens de paiement.
Exemple de réponse
{ "id": "pi_12345", "amount": 1099, "client_secret": "pi_12345_secret_abcdef", "currency": "dkk", "payment_method": "pm_12345", "payment_method_types": [ "mobilepay" ], "status": "requires_confirmation" }
Récupérer la clé secrète du client
Le PaymentIntent contient une clé secrète à utiliser côté client pour finaliser le processus de paiement en toute sécurité. Vous pouvez adopter différentes approches pour transmettre cette clé secrète côté client.
Confirmer le PaymentIntent
Utilisez l’ID de PaymentIntent de l’étape 2 pour confirmer le PaymentIntent. Cette action indique que le client souhaite payer avec le PaymentMethod spécifié. Stripe initie un paiement après confirmation du PaymentIntent. L’adresse return_url indique à Stripe où rediriger le client une fois le paiement effectué.
Exemple de réponse
{ "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" }
Pour autoriser le paiement, redirigez votre client vers l’URL spécifiée dans le champ next_action[redirect_to_url][url].
- Sur un ordinateur de bureau, l’URL ouvre une page d’accueil MobilePay sur laquelle le client peut saisir le numéro de téléphone associé à son compte MobilePay. Il peut ensuite utiliser l’application mobile MobilePay pour autoriser le paiement.
- Sur un appareil mobile, l’URL ouvre directement l’application MobilePay (le cas échéant) ou redirige vers la page d’accueil MobilePay, de la même façon que sur un ordinateur de bureau.
Votre client dispose de 5 minutes pour ouvrir l’URL de redirection et autoriser le paiement dans l’application MobilePay. Si le paiement par carte sous-jacent échoue, votre client peut choisir une autre carte et réessayer dans l’application MobilePay. Si le paiement n’est pas autorisé dans les 5 minutes, le paiement échoue et l’état du PaymentIntent passe à requires_
.
Gérer les événements postpaiement
Stripe envoie un événement payment_intent.succeeded à l’issue du paiement. Utilisez le Dashboard, un webhook personnalisé ou une solution partenaire pour recevoir ces événements et exécuter des actions, comme envoyer une confirmation de commande par e-mail à votre client, enregistrer la vente dans une base de données ou lancer un workflow de livraison.
Plutôt que d’attendre un rappel de votre client, écoutez ces événements. En effet, côté client, l’acheteur pourrait fermer la fenêtre de son navigateur ou quitter l’application avant l’exécution du rappel. Des personnes malveillantes peuvent en profiter pour manipuler la réponse. Si vous configurez votre intégration de manière à écouter les événements asynchrones, cela vous permettra également d’accepter de nouveaux moyens de paiement plus facilement à l’avenir. Apprenez-en davantage sur les différences entre les différents moyens de paiement pris en charge.
Manuellement
Utilisez le Dashboard Stripe pour consulter tous vos paiements Stripe, envoyer des reçus par e-mail, gérer les virements et relancer les paiements ayant échoué.
Code personnalisé
Créez un gestionnaire de webhooks pour écouter des événements et créer des tunnels de paiement asynchrones personnalisés. Testez et déboguez votre intégration de webhooks en local, grâce à la CLI Stripe.
Applications préconfigurées
Intégrez une application partenaire pour gérer les événements métier courants, comme l’automatisation, le marketing ou les ventes.
Tester l'intégration
À l’aide de vos clés API de test, créez un PaymentIntent. Après avoir confirmé le PaymentIntent, suivez l’URL de redirection next_
qui vous mènera vers une page de test avec des options permettant de valider ou non le paiement.
- Cliquez sur Autoriser le paiement test pour tester le cas où le paiement a réussi. Le PaymentIntent passe de
requires_
àaction succeeded
. - Cliquez sur Faire échouer le paiement test pour tester l’échec de l’authentification du client. Le PaymentIntent passe de
requires_
àaction requires_
.payment_ method
Échecs de paiement
Les transactions MobilePay peuvent échouer si la transaction par carte sous-jacente est refusée. En savoir plus sur les refus de paiement par carte. Dans ce cas, le PaymentMethod est dissocié et l’état du PaymentIntent passe automatiquement à requires_
.
Lorsque l’état du PaymentIntent est requires_
, votre client doit authentifier le paiement dans les 5 minutes. Si aucune action n’est effectuée au bout de 5 minutes, le PaymentMethod est dissocié et l’état du PaymentIntent passe automatiquement à requires_
.
Remboursements et litiges
Stripe effectue une transaction par carte à l’aide de réseaux de carte standard dans le cadre d’une transaction MobilePay. Les remboursements et litiges sont soumis aux règles des réseaux Visa et Mastercard.