Comment automatiser les mises à jour de l'état des commandes avec Stripe Webhooks

Webhooks Stripe C'est la réalisation de la véritableÉcoute asynchrone des résultats de paiement et changement d'état automatique. Cet article explique en détail comment configurer les Webhooks Stripe et mettre en place un mécanisme de mise à jour automatique de l'état des commandes dans un projet réel.

图片[1]-如何使用 Stripe Webhooks 实现订单状态自动更新

I. Qu'est-ce que Stripe Webhooks ?

Les webhooks sont Rayure à vousserveur (ordinateur)Un mécanisme pour envoyer des notifications d'événements. Lorsqu'un événement se produit, tel qu'un paiement réussi, un remboursement, un changement d'abonnement, etc., Stripe envoie une requête POST à votre URL prédéfinie (le point de terminaison Webhook) contenant les détails de l'événement.

Quels sont les avantages de l'utilisation des Webhooks ?

  • notification asynchroneLes commandes : Obtenir l'état de la commande sans que l'utilisateur n'ait à sauter ou à rafraîchir la page.
  • mise à jour en temps réelLes résultats des paiements peuvent être renvoyés instantanément, ce qui renforce la confiance des utilisateurs.
  • stable et fiableStripe retente automatiquement les événements webhook qui ont échoué afin de s'assurer que le message arrive.
  • Flexibilité de l'extensionLe système de gestion de l'information de la Commission européenne : permet d'écouter des douzaines de types d'événements, tels que payment_intent.succeededetfrais.remboursésetinvoice.payment_failed etc.
图片[2]-如何使用 Stripe Webhooks 实现订单状态自动更新

Comment configurer le point de terminaison Stripe Webhook ?

Étape 1 : Accéder à la page de configuration de Webhook

  1. Ouvrez le backend Stripe :https://dashboard.stripe.com
  2. Après vous être connecté à votre comptePasser en mode test("Test Mode" est affiché en haut de la page.) Recherchez directement dans la barre de recherche. Crochet Web Vous pouvez rapidement créer
  3. Vous pouvez également cliquer sur la page Webhook :
    👉 https://dashboard.stripe.com/test/workbench/webhooks
图片[3]-如何使用 Stripe Webhooks 实现订单状态自动更新

Étape 2 : Créer un "flux d'assistant" pour le Webhook

Sélection de la première étapeécoute (conversations téléphoniques)Le type d'événement du

图片[4]-如何使用 Stripe Webhooks 实现订单状态自动更新

Événements cochés recommandés :

formulaireÉvénements en vedetteinstructions
Intentions de paiementpayment_intent.succeededSuccès du paiement (souvent utilisé pour marquer une commande comme payée)
Intentions de paiementpayment_intent.payment_failedDéfaut de paiement
图片[5]-如何使用 Stripe Webhooks 实现订单状态自动更新

Une fois sélectionné, cliquez sur le bouton violet dans le coin inférieur droit de la page :
👉 procéder à

Étape 3 : Configuration des informations sur le point de terminaison Webhook

Étape 1 : Sélectionnez l'événement que vous souhaitez écouter (recommandé) :

  • payment_intent.succeeded(Paiement réussi)
  • payment_intent.payment_failed(Échec du paiement)

Étape 2 : Sélection du type de récepteur

  • Sélectionnez le point de terminaison Webhook et appuyez sur Continuer
图片[6]-如何使用 Stripe Webhooks 实现订单状态自动更新

Étape 4 : Remplir le récepteur de configuration

Dans cette étape, vous verrez un formulaire à remplir :

champélément
URL du point finalSaisissez l'adresse de réception de votre serveur, par exemplehttps://yourdomain.com/webhook/stripe
Description (facultatif)Par exemple, "auditeur de mise à jour de l'état de la commande".

Cliquez ensuite sur "La création d'une destination" complète la configuration du Webhook !

图片[7]-如何使用 Stripe Webhooks 实现订单状态自动更新
图片[8]-如何使用 Stripe Webhooks 实现订单状态自动更新

III. processus de mise à jour de l'automatisation de l'état des commandes

1. le client soumet sa commande et saute au paiement

Attacher un identifiant de commande lors de la création d'un PaymentIntent :

\NStripe\NPaymentIntent::create([
    'amount' => 29900,
    'currency' => 'usd', 'metadata' => ['order_id' => 'ORDER12345' ]
    
]).

2. le client effectue le paiement et Stripe déclenche automatiquement le Webhook.

des événements tels que payment_intent.succeeded est déclenché, Stripe envoie une requête à votre point de terminaison webhook.

图片[9]-如何使用 Stripe Webhooks 实现订单状态自动更新
图片[10]-如何使用 Stripe Webhooks 实现订单状态自动更新

3. le backend analyse l'événement et met à jour l'état de la commande.

utiliser $event->type Distinguer les événements qui font appel à la logique de mise à jour des commandes du système (écriture dans la base de données, journalisation, envoi de notifications, etc.)

4. la notification automatique des clients

existent webhook Il n'y a pas de problème dans la logique de réception :

  • Envoyer l'e-mail de réussite du paiement
  • Notifications push
  • Informer le système d'expédition pour préparer la logistique

IV. recommandations en matière de sécurité et de mise en service

1. vérifier les signatures Stripe

Il est recommandé d'activer la vérification de la signature du webhook pour s'assurer que la source de données est authentique et fiable. Les signatures de clés peuvent être trouvées dans le Webhook du backend Stripe page de configurationTrouvé dans.

图片[11]-如何使用 Stripe Webhooks 实现订单状态自动更新

2. recommandés pour le développement local stripe-cli

Utilisez l'outil de commande pour transmettre les événements Stripe au serveur local :

stripe listen --forward-to localhost:8000/webhook/stripe

Les simulations peuvent également être utilisées pour tester des événements spécifiques :

stripe trigger payment_intent.succeeded

V. Liste recommandée d'événements couramment pris en charge

Type d'événementdescriptions
payment_intent.succeededPaiement réussi, souvent utilisé pour confirmer les commandes
payment_intent.payment_failedÉchec du paiement, peut être utilisé pour un rappel de relance
frais.remboursésRemboursement effectué, statut mis à jour comme remboursé
checkout.session.completedPaiement réussi (par exemple avec Stripe Checkout)
invoice.payment_succeededPaiement de la facture d'abonnement réussi
invoice.payment_failedÉchec du renouvellement de l'assurance automobile

D'autres types d'événements peuvent être trouvés dans la documentation officielle :
https://stripe.com/docs/api/events/types

VI. résumé

Webhooks StripeConstruire unStable, efficace, sans intervention humaineL'état de la commande est automatiquement mis à jour dans le système. Qu'il s'agisse d'un paiement unique, d'un service d'abonnement ou du traitement d'un remboursement, le crochet Web permet au système de répondre en premier lieu et constitue un mécanisme essentiel des systèmes modernes de commerce électronique.


Contactez nous
Vous n'arrivez pas à lire le tutoriel ? Contactez-nous pour une réponse gratuite ! Aide gratuite pour les sites personnels et les sites de petites entreprises !
客服微信
Service clientèle WeChat
Tel : 020-2206-9892
QQ咨询:1025174874
(iii) Courriel : [email protected]
Horaires de travail : du lundi au vendredi, de 9h30 à 18h30, jours fériés.
© Déclaration de reproduction
本文作者:托尼屎大颗
LA FIN
Si vous l'aimez, soutenez-le.
félicitations835 partager (joies, avantages, privilèges, etc.) avec les autres
commentaires achat de canapé

Veuillez vous connecter pour poster un commentaire

    Pas de commentaires