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.
Gérer les événements manuellement dans le Dashboard
Utilisez le Dashboard pour afficher vos paiements de test dans le Dashboard, envoyer des reçus par e-mail, gérer les virements ou réessayer les paiements échoués.
Créer un webhook personnalisé
Créez un gestionnaire de webhook personnalisé pour écouter les événements et créer des tunnels de paiement asynchrones personnalisés. Testez et déboguez votre intégration de webhook localement avec la CLI Stripe.
Intégrer une application prédéfinie
Gérez les événements commerciaux courants, tels que l’automatisation ou le marketing et les ventes, en intégrant une application partenaire.
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
FacultatifAutoriser un paiement et le saisir ultérieurement
MobilePay prend en charge l’autorisation et la capture distinctes.
Indiquer à Stripe d’autoriser uniquement
Pour indiquer que vous voulez séparer l’autorisation de la capture, définissez la valeur de l’option capture_method sur manual
lorsque vous créez le PaymentIntent. Ce paramètre indique à Stripe d’autoriser uniquement le montant figurant sur la carte du client associée à MobilePay.
Une fois l’autorisation effectuée, Stripe envoie un événement payment_intent.amount_capturable_updated. Pour en savoir plus, consultez la section Événements.
Capturer les fonds
Une fois l’autorisation réussie, l’état du PaymentIntent passe à requires_
et vous pouvez capturer les fonds autorisés. Stripe ne prend en charge que les captures manuelles du montant complet.
FacultatifAnnulation
Vous pouvez annuler les paiements MobilePay avant leur date d’expiration en annulant le PaymentIntent associé au paiement MobilePay.
É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.