Déclencher des actions avec les webhooks
Un webhook est un endpoint HTTP qui reçoit des événements de Stripe.
Les webhooks vous permettent de recevoir des notifications à propos des événements qui surviennent en dehors de votre tunnel de paiement, comme :
- Les paiements réussis (
payment_intent.succeeded
) - Les paiements contestés (
charge.dispute.created
) - Le solde créditeur dans votre compte Stripe (
balance.available
)
Bien que le Dashboard soit adapté aux actions ponctuelles comme le remboursement d’un paiement ou la mise à jour des informations du client, les webhooks sont essentiels pour développer votre intégration des paiements, car ils vous aident à traiter des volumes importants d’événements critiques.
Créer votre propre webhook
Vous pouvez créer un gestionnaire de webhooks sur votre serveur pour gérer vos tunnels de paiement en ligne. Commencez par choisir un endpoint pouvant recevoir des requêtes de Stripe et utilisez l’interface de ligne de commande pour tester votre intégration en local. Chaque requête de Stripe contient un objet Event avec une référence à l’objet sur Stripe qui a été modifié.
Créer un endpoint de webhook
Ajoutez un nouvel endpoint à votre application. Pour réagir à certains événements, consultez le champ type
de l’objet de l’événement envoyé dans le corps de la requête. Pour l’instant, choisissons la sortie standard pour nous assurer que le webhook fonctionne.
Après avoir ajouté votre nouvel endpoint, redémarrez le serveur.
Installer et configurer l'interface de ligne de commande Stripe
Pour davantage d’options d’installation, consultez la page consacrée à la CLI Stripe.
Une fois l’interface de ligne de commande Stripe installée, exécutez stripe login
dans la ligne de commande pour générer un code de jumelage afin d’y associer votre compte Stripe. Appuyez sur Entrée pour lancer votre navigateur et connectez-vous à votre compte Stripe afin d’autoriser l’accès. La clé API générée est valide pendant 90 jours. Vous pouvez modifier ou supprimer la clé à la section Clés API du Dashboard.
stripe login Your pairing code is: humour-nifty-finer-magic Press Enter to open up the browser (^C to quit)
Si vous souhaitez utiliser une clé API existante, utilisez l’indicateur --api-key
:
stripe login --api-key
Your pairing code is: humour-nifty-finer-magic Press Enter to open up the browser (^C to quit)sk_test_4eC39HqLyjWDarjtT1zdp7dc
Tester votre webhook en local
Utilisez l’interface de ligne de commande pour transmettre des événements à votre endpoint de webhook local à l’aide de la commande listen
.
Si votre application est exécutée sur le port 4242, exécutez :
stripe listen --forward-to http://localhost:4242/webhook
Dans un autre onglet du terminal, utilisez la commande d’interface de ligne de commande trigger
pour déclencher un événement de webhook fictif.
stripe trigger payment_intent.succeeded
Vous devriez voir les événements suivis dans votre onglet listen
:
[200 POST] OK payment_intent.succeeded
Vous devriez également voir une mention indiquant que le PaymentIntent a réussi dans l’onglet terminal que votre serveur exécute.
Déployer votre endpoint de webhook
Pour mettre en production votre endpoint de webhook, vous avez quelques actions à effectuer :
Utilisez vos clés API de production et non pas vos clés API de test.
Configurez votre endpoint de webhook dans le Dashboard Stripe ou avec l’API.
Pour configurer votre endpoint dans le Dashboard, accédez aux paramètres des webhooks.
Cliquez sur « Ajouter un endpoint », et saisissez l’URL de votre endpoint, de la version de l’API Stripe et les événements que vous souhaitez que Stripe vous envoie.
Remplacez la clé secrète du endpoint de webhook de votre application par la nouvelle clé secrète figurant dans la vue du Dashboard de votre endpoint.
C’est tout ! Votre application est prête à accepter des événements réels. Pour en savoir plus sur la configuration d’un endpoint de webhook, l’API Webhook Endpoint et les tests, consultez notre guide de développement.