Accepter un paiement avec Amazon Pay
Découvrez comment configurer votre intégration avec Amazon Pay.
Ce guide montre comment intégrer un formulaire de paiement Stripe personnalisé à votre site Web ou application à l’aide du composant Payment Element. Le composant Payment Element permet de prendre automatiquement en charge Amazon Pay et d’autres moyens de paiement. Pour plus de configurations et personnalisations, consultez le guide d’intégration consacré à l’acceptation des paiements.
Configurer StripeCôté serveur
Pour commencer, vous devez créer un compte Stripe. Inscrivez-vous maintenant.
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 le paiement d’un client et qui suit le cycle de vie du processus de paiement étape par étape.
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.
Collecter les informations de paiementCôté client
Collectez les informations de paiement du client avec le Payment Element. Le Payment Element est un composant d’interface utilisateur préconfiguré qui simplifie la collecte des informations pour de nombreux moyens de paiement.
Le Payment Element contient un iframe qui envoie les informations de paiement à Stripe de manière sécurisée via une connexion HTTPS. Évitez de placer le Payment Element dans un autre iframe, car certains moyens de paiement nécessitent une redirection vers une autre page pour la confirmation du paiement.
Pour que votre intégration fonctionne, l’adresse de la page de paiement doit commencer par https://
et non par http://
. Vous pouvez tester votre intégration sans utiliser le protocole HTTPS, mais n’oubliez pas de l’activer lorsque vous souhaitez commencer à accepter des paiements réels.
Envoyer le paiement à StripeCôté client
Utilisez stripe.confirmPayment pour effectuer le paiement à l’aide des informations du composant Payment Element. Ajoutez un paramètre return_url à cette fonction pour indiquer la page vers laquelle Stripe doit rediriger l’utilisateur à l’issue du paiement. Votre utilisateur peut être redirigé en premier lieu vers un site intermédiaire, comme une page d’autorisation bancaire, avant d’être redirigé vers la page spécifiée par le paramètre return_
. L’utilisateur sera immédiatement redirigé vers la page return_
après un paiement réussi par carte.
Veillez à ce que le paramètre return_
corresponde à une page de votre site web qui indique l’état du paiement. Lorsque Stripe redirige le client vers la page return_
, nous fournissons les paramètres de requête d’URL suivants :
Paramètre | Description |
---|---|
payment_ | L’identifiant unique du PaymentIntent . |
payment_ | La clé secrète du client de l’objet PaymentIntent . |
Mise en garde
Si vous disposez d’outils qui assurent le suivi de la session navigateur du client, vous devrez peut-être ajouter le domaine stripe.
à la liste d’exclusion des sites référents. Les redirections font que certains outils créent de nouvelles sessions, ce qui empêche le suivi de la session dans son ensemble.
Utilisez l’un des paramètres de requête pour récupérer le PaymentIntent. Consultez l’état du PaymentIntent pour déterminer les informations à présenter à vos clients. Vous pouvez également ajouter vos propres paramètres de requête lorsque vous ajoutez l’URL return_
; ils seront conservés tout au long du processus de redirection.
Rediriger et authentifier les transactions
Les clients peuvent authentifier les transactions Amazon Pay dans le navigateur. Après avoir appelé confirmPayment
, les clients sont redirigés vers le site web d’Amazon Pay pour confirmer leur paiement.
Une fois la confirmation effectuée, les clients sont redirigés vers l’URL return_
.
Tester votre intégration
Pour tester votre intégration, choisissez Amazon Pay comme moyen de paiement et appuyez sur Payer. Dans un environnement de test, cette action vous redirige vers une page de paiement test où vous pouvez autoriser ou refuser le paiement.
En mode production, le fait d’appuyer sur Payer vous redirige vers le site Web d’Amazon Pay. Vous n’avez pas la possibilité d’autoriser ou de refuser le paiement avec Amazon Pay.
Échecs de paiement
Si Amazon Pay refuse la transaction pour une raison quelconque, le PaymentMethod est détaché et l’état de l’objet PaymentIntent passe automatiquement à requires_
.
Hormis le refus d’un paiement, dans le cas d’un PaymentIntent Amazon Pay à l’état requires_
, les clients doivent effectuent le paiement sous 10 minutes une fois qu’ils ont été redirigés vers Amazon Pay. En l’absence d’action sous 10 minutes, le PaymentMethod est détaché et l’état de l’objet PaymentIntent passe automatiquement à requires_
.
Dans ce cas, le composant Element Payment affiche des messages d’erreur et demande à votre client de réessayer avec un autre moyen de paiement.
Codes d’erreur
Le tableau suivant décrit en détail les codes d’erreur courants et les actions recommandées :
Code d’erreur | Action recommandée |
---|---|
payment_ | Saisissez la devise appropriée. Amazon Pay prend uniquement en charge usd . |
missing_ | Consultez le message d’erreur pour en savoir plus sur le paramètre requis. |
payment_ | Ce code peut apparaître dans le champ last_payment_error.code d’un PaymentIntent. Consultez le message d’erreur pour connaître la raison détaillée de l’échec et obtenir une suggestion de traitement de l’erreur. |
payment_ | Spécifiez une return_ lors de la confirmation d’un PaymentIntent avec Amazon Pay. |