Accepter un paiement
Acceptez les paiements en ligne en toute sécurité.
Créez un formulaire de paiement ou utilisez une page de paiement préconfigurée pour commencer à accepter les paiements en ligne.
Redirigez vers une page de paiement hébergée par Stripe à l’aide de Stripe Checkout. Comparez cette intégration aux autres types d’intégration de Stripe.
Effort d'intégration
Type d'intégration
Redirection vers la page de paiement hébergée par Stripe
Personnalisation de l'interface utilisateur
First, register for a Stripe account.
Use our official libraries to access the Stripe API from your application:
Rediriger votre client vers Stripe CheckoutCôté clientCôté serveur
Ajoutez sur votre site Web un bouton de paiement qui appelle un endpoint côté serveur afin de créer une session Checkout.
Vous pouvez également créer une session Checkout pour un client existant, ce qui vous permet d’insérer automatiquement les coordonnées des clients connus dans les champs Checkout et d’unifier leur historique d’achat.
<html> <head> <title>Buy cool new product</title> </head> <body> <!-- Use action="/create-checkout-session.php" if your server is PHP based. --> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>
Une session Checkout est la représentation programmatique de ce que votre client voit lorsqu’il est redirigé vers le formulaire de paiement. Vous pouvez la configurer à l’aide de différentes options, par exemple :
- Les postes à facturer
- Les devises à utiliser
Vous devez indiquer dans success_
l’URL de la page de votre site Web vers laquelle Checkout renvoie votre client une fois son paiement effectué. Vous pouvez également indiquer dans cancel_
l’URL de la page de votre site Web vers laquelle Checkout renvoie votre client s’il met fin au processus de paiement avant de finaliser l’achat.
Remarque
Par défaut, les sessions Checkout expirent 24 heures après leur création.
Après avoir créé une session Checkout, redirigez votre client vers l’URL renvoyée dans la réponse.
Moyens de paiement
Par défaut, Stripe active les cartes bancaires et autres moyens de paiement courants. Vous avez la possibilité d’activer ou de désactiver des moyens de paiement directement depuis le Dashboard Stripe. Dans Checkout, Stripe évalue la devise et les restrictions éventuelles, puis présente dynamiquement au client les moyens de paiement pris en charge.
Pour visualiser l’affichage des moyens de paiement pour les clients, saisissez un ID de transaction ou définissez le montant et la devise d’une commande dans le Dashboard.
Vous pouvez activer Apple Pay et Google Pay dans vos paramètres des moyens de paiement. Par défaut, Apple Pay est activé et Google Pay est désactivé. Cependant, dans certains cas, Stripe les filtre même lorsqu’ils sont activés. Nous filtrons Google Pay si vous activez les taxes automatiques sans collecter d’adresse de livraison.
Aucune modification de l’intégration n’est requise pour activer Apple Pay ou Google Pay dans les pages hébergées par Stripe de Checkout. Stripe gère ces paiements de la même manière que les autres paiements par carte bancaire.
Confirmer votre endpoint
Confirmez que votre point d’accès est accessible en démarrant votre serveur Web (par exemple, localhost:4242
) et en exécutant la commande suivante :
curl -X POST -is "http://localhost:4242/create-checkout-session" -d ""
Une réponse semblable à celle ci-dessous devrait s’afficher dans votre terminal :
HTTP/1.1 303 See Other Location: https://checkout.stripe.com/c/pay/cs_test_... ...
Tests
Vous devriez maintenant disposer d’un bouton de paiement fonctionnel qui redirige votre client vers Stripe Checkout.
- Cliquez sur le bouton de paiement.
- Vous êtes redirigé(e) vers le formulaire de paiement Stripe Checkout.
Si votre intégration ne fonctionne pas :
- Ouvrez l’onglet Réseau dans les outils de développement de votre navigateur.
- Cliquez sur le bouton de paiement et assurez-vous qu’une requête XHR est bien envoyée à votre endpoint côté serveur (
POST /create-checkout-session
). - Vérifiez que la requête renvoie bien un état 200.
- Utilisez
console.
dans l’écouteur du clic sur le bouton pour vous assurer qu’il renvoie les données appropriées.log(session)
Afficher une page de confirmation de paiementCôté clientCôté serveur
Il est important de présenter une page de confirmation à votre client une fois qu’il a validé le formulaire de paiement. Nous vous conseillons d’héberger cette page sur votre site.
Créez une page de confirmation minimale :
<html> <head><title>Thanks for your order!</title></head> <body> <h1>Thanks for your order!</h1> <p> We appreciate your business! If you have any questions, please email <a href="mailto:orders@example.com">orders@example.com</a>. </p> </body> </html>
Ensuite, mettez à jour l’endpoint de création de sessions Checkout pour qu’il utilise cette nouvelle page :
Remarque
Pour personnaliser votre page de confirmation de paiement, consultez le guide dédié à ce sujet.
Test
- Cliquez sur votre bouton de paiement.
- Remplissez le formulaire de paiement avec les informations d’une carte de test :
- Saisissez le numéro de carte
4242 4242 4242 4242
. - Saisissez une date d’expiration postérieure à la date du jour.
- Saisissez un code CVC à 3 chiffres.
- Saisissez un code postal de facturation.
- Saisissez le numéro de carte
- Cliquez sur Payer.
- Vous êtes redirigé vers votre nouvelle page de confirmation de paiement.
Ensuite, recherchez le nouveau paiement dans le Dashboard Stripe. Les paiements réussis apparaissent dans la liste des paiements. Lorsque vous cliquez sur un paiement, vous accédez aux informations relatives à ce dernier. La section Récapitulatif Checkout présente les informations de facturation et la liste des articles achetés, que vous pouvez utiliser pour traiter manuellement la commande.
Gérer les événements post-paiement
Stripe envoie un événement checkout.session.completed lorsqu’un client effectue un paiement par session Checkout. Utilisez l’outil de webhook Dashboard ou suivez le guide consacré aux webhooks pour recevoir et gérer ces événements. Ceux-ci peuvent vous conduire à :
- Envoyez un e-mail de confirmation de commande à votre client.
- Enregistrez la vente dans une base de données.
- Démarrez un flux de travail d’expédition.
Écoutez ces événements plutôt que d’attendre que votre client soit redirigé vers votre site Web. Le déclenchement du traitement uniquement à partir de votre page de renvoi Checkout n’est pas fiable. En configurant votre intégration de manière à ce qu’elle écoute les événements asynchrones, vous pourrez accepter plusieurs types de moyens de paiement avec une seule intégration.
Pour en savoir plus, consultez notre guide de traitement des commandes avec Checkout.
Gérez les événements suivants lors de la collecte de paiements avec Checkout :
Événement | Description | Action |
---|---|---|
checkout.session.completed | Envoyé lorsqu’un client termine une session Checkout. | Envoyez au client une confirmation de commande et traitez sa commande. |
checkout.session.async_payment_succeeded | Envoyé lorsqu’un paiement effectué avec un moyen de paiement différé (par exemple, un prélèvement automatique ACH) aboutit. | Envoyez au client une confirmation de commande et traitez sa commande. |
checkout.session.async_payment_failed | Envoyé lorsqu’un paiement effectué avec un moyen de paiement différé (par exemple, un prélèvement automatique ACH) échoue. | Informez le client de l’échec et redirigez-le vers la session pour tenter à nouveau de payer. |
Tester votre intégration
Pour tester votre intégration de formulaire de paiement hébergé par Stripe :
- Créez une session Checkout.
- Renseignez les informations d’un moyen de paiement du tableau suivant.
- Saisissez une date d’expiration postérieure à la date du jour.
- Saisissez un code CVC à 3 chiffres.
- Saisissez un code postal de facturation.
- Cliquez sur Payer. Vous êtes redirigé(e) vers votre
success_
.url - Accédez au Dashboard et recherchez le paiement sur la page Transactions. Si votre paiement a abouti, il apparaîtra dans cette liste.
- Cliquez sur votre paiement afin d’afficher plus d’informations, par exemple un récapitulatif Checkout contenant les informations de facturation et la liste des articles achetés. Vous pouvez utiliser ces informations pour traiter votre commande.
Découvrez comment tester votre intégration.
Consultez la section consacrée aux tests pour obtenir des informations supplémentaires sur la manière de tester votre intégration.
Cartes de test
Numéro | Description |
---|---|
Fait aboutir le paiement et le traite immédiatement. | |
Nécessite une authentification 3D Secure 2 pour que le paiement aboutisse. | |
Échec systématique avec le code de refus de paiement insufficient_ . |