Accepter un paiement avec Amazon Pay
Découvrez comment configurer votre intégration avec Amazon Pay.
Amazon Pay est un moyen de paiement à usage unique qui nécessite l’authentification du paiement par le client. Pour procéder au paiement, les clients sont redirigés depuis votre site Web ou votre application, autorisent le paiement Amazon Pay, puis sont à nouveau redirigés vers votre site Web ou application. Vous recevez alors une notification immédiate indiquant si le paiement a abouti ou échoué.
Configurer StripeCôté serveur
Créez un Compte Stripe si vous n’en avez pas déjà un.
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 de votre client et suit le cycle de vie du processus de paiement. Créez un PaymentIntent
sur votre serveur et précisez le montant à encaisser ainsi qu’une devise prise en charge. Si vous avez une intégration Payment Intents existante, ajoutez amazon_
à la liste des types de moyens de paiement.
Le PaymentIntent
contient une clé secrète du client. Au lieu de transmettre la totalité de l’objet PaymentIntent
, envoyez la clé secrète vers votre client pour finaliser le processus de paiement en toute sécurité.
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.
Rediriger vers Amazon PayCôté client
Lorsqu’un client clique pour payer avec Amazon Pay, utilisez Stripe.js pour soumettre le paiement à Stripe. Stripe.js est la bibliothèque JavaScript de base pour créer les tunnels de paiement : elle gère automatiquement les opérations complexes telles que la redirection décrite ci-dessous, et facilite l’extension de votre intégration à d’autres moyens de paiement. Incluez le script Stripe.js sur votre page de paiement en l’ajoutant à la section head
de votre fichier HTML.
<head> <title>Checkout</title> <script src="https://js.stripe.com/v3/"></script> </head>
Créez une instance de Stripe.js avec le code JavaScript suivant sur votre page de paiement.
// Set your publishable key. Remember to change this to your live publishable key in production! // See your keys here: https://dashboard.stripe.com/apikeys const stripe = Stripe(
);'pk_test_TYooMQauvdEDq54NiTphI7jx'
Utilisez la clé secrète du client du PaymentIntent
et appelez stripe.
pour gérer la redirection vers Amazon Pay. Ajoutez une return_
vers laquelle Stripe redirigera votre client une fois le paiement effectué.
const form = document.getElementById('payment-form'); form.addEventListener('submit', async function(event) { event.preventDefault(); // Set the clientSecret of the PaymentIntent const { error } = await stripe.confirmPayment({ clientSecret: clientSecret, confirmParams: { payment_method_data: { type: 'amazon_pay', }, // Return URL where the customer should be redirected after the authorization return_url: `${window.location.href}`, }, }); if (error) { // Inform the customer that there was an error. const errorElement = document.getElementById('error-message'); errorElement.textContent = result.error.message; } });
L’URL return_
correspond à une page de votre site Web qui affiche le résultat du paiement. Pour déterminer l’information à afficher, vous pouvez vérifier l’état du PaymentIntent
. Pour ce faire, la redirection de Stripe vers la page return_
inclut les paramètres de requête d’URL suivants. Vous pouvez également ajouter vos propres paramètres de requête à la return_
. Ils seront conservés pendant tout le processus de redirection.
Paramètre | Description |
---|---|
payment_ | L’identifiant unique du PaymentIntent . |
payment_ | La clé secrète du client de l’objet PaymentIntent . |
Devises prises en charge
You can create Amazon Pay payments in the currencies that map to your country.
Pays | Devise |
---|---|
Austria, Belgium, Cyprus, Denmark, France, Germany, Hungary, Ireland, Italy, Luxembourg, Netherlands, Portugal, Spain, Sweden, Switzerland, United Kingdom, United States | aud , gbp , dkk , eur , hkd , jpy , nzd , nok , zar , sek , chf , usd |