Se connecterCommencer l’essai gratuit
Meta Tech Provider

Envoyer des mises à jour de commande WooCommerce sur WhatsApp

Créez un webhook WooCommerce pour les événements de commande, pointant vers un récepteur, par exemple un workflow n8n ou une petite route PHP. Le récepteur vérifie la signature de WooCommerce, contrôle que le client a accepté les messages WhatsApp, puis envoie un template approuvé via la Cloud API, avec l'ID du numéro de téléphone et le token du numéro connecté.

5 failures

WooCommerce désactive un webhook après plus de cinq échecs de livraison consécutifs.

X-WC-Webhook-Signature

En-tête contenant un HMAC-SHA256 du payload encodé en base64, calculé avec le secret du webhook.

Templates only

En dehors d'une fenêtre de service client, seuls les templates approuvés à l'avance peuvent être envoyés.

Comment une commande WooCommerce déclenche-t-elle un message WhatsApp ?

Via un webhook WooCommerce et un récepteur. Dans WooCommerce, Réglages, Avancé, Webhooks, ajoutez un webhook avec un sujet de commande, comme commande créée ou commande mise à jour, une URL de livraison et un secret. WooCommerce envoie alors la commande en JSON à cette URL chaque fois que l'événement se produit.

Le payload est figé : il ne peut pas viser directement la Cloud API. Un récepteur s'intercale donc : un nœud Webhook n8n, une route dans le PHP de la boutique, ou n'importe quel petit service. Il lit la commande, choisit le numéro de téléphone du client et les informations dont le message a besoin, puis fait une requête HTTPS vers l'endpoint des messages de la Cloud API pour le numéro connecté, avec le token d'accès du numéro comme bearer token.

Le sujet order.updated n'est pas lié à un seul statut : le récepteur doit donc lire le champ status de la commande et n'envoyer qu'une fois par transition qui l'intéresse. Par défaut, WooCommerce livre en arrière-plan via wp-cron, de sorte qu'un message peut suivre la commande avec un léger décalage.

1WooCommerceOrder webhook with a secret
2ReceiverChecks the signature and consent
3Cloud APISends the approved template
4CustomerReplies land in the WhatsApp Business app

Comment le récepteur sait-il que la requête vient de la boutique ?

Grâce à la signature de WooCommerce. Chaque livraison porte un en-tête X-WC-Webhook-Signature, un HMAC-SHA256 du payload brut encodé en base64 et calculé avec le secret défini sur le webhook. Le récepteur calcule le même hash sur le corps reçu, compare, et rejette tout ce qui ne correspond pas.

Il s'agit du secret de la boutique elle-même : contrairement à la signature de Meta sur les messages WhatsApp entrants, elle peut donc être validée. Comparez en temps constant, et calculez le hash sur le corps brut avant que tout framework ne l'analyse, car un JSON réencodé produit un hash différent.

Répondez vite avec un code 2xx. WooCommerce considère comme un échec toute réponse qui n'est ni 2xx, ni 301, ni 302, et désactive le webhook après plus de cinq échecs d'affilée. Un récepteur à l'arrêt pendant un déploiement, ou lent parce qu'il attend Meta avant de répondre, peut couper les messages de la boutique sans que personne ne s'en aperçoive.

Que peut envoyer la boutique, et quand ?

Un template approuvé, chaque fois que la boutique écrit en premier. La fenêtre de service client de 24 heures de Meta ne s'ouvre que lorsque le client écrit au numéro : une confirmation de commande ou un suivi d'expédition est donc initié par l'entreprise, et le texte libre est refusé. Créez un template de type utilitaire pour chaque mise à jour, attendez son approbation, puis envoyez-le par nom et par langue, avec le numéro de commande et les autres détails comme paramètres.

Meta exige aussi l'opt-in : le client a donné son numéro et accepté d'être contacté par cette entreprise sur WhatsApp. Une case à cocher au paiement, enregistrée sur la commande, en est la preuve la plus simple, et le récepteur doit la contrôler avant d'envoyer.

Dès que le client répond, la conversation est du Coexistence ordinaire. La réponse apparaît dans l'app WhatsApp Business sur le téléphone de la boutique, la fenêtre est ouverte au texte libre, et l'équipe répond depuis l'app comme elle l'a toujours fait.

Erreurs courantes

  • Faire l'appel à la Cloud API avant de répondre à WooCommerce. Un envoi lent ou en échec compte contre le webhook, qui est désactivé après plus de cinq échecs.
  • Calculer le hash du JSON analysé au lieu du corps brut. La signature ne correspond jamais et toutes les livraisons légitimes sont rejetées.
  • Envoyer à chaque livraison order.updated. Le sujet n'est pas lié à un seul statut : sans suivi de la transition déjà notifiée, les clients reçoivent des doublons.
Faire cela avec EasyCoexistence

Connectez le numéro de la boutique sur easycoexistence.com et donnez au récepteur son ID de numéro de téléphone et son token depuis le dashboard. À partir de US$ 9 par numéro et par mois, jusqu'à US$ 1 à mesure que vous ajoutez des numéros, avec les 3 premiers jours gratuits.

Questions fréquemment posées

Ai-je besoin d'un plugin WordPress pour cela ?

Non. Les webhooks natifs de WooCommerce et un récepteur suffisent, et le récepteur peut être une route de la même application PHP.

Qui paie les messages de commande ?

Meta facture directement l'entreprise sur son propre compte WhatsApp Business, et EasyCoexistence n'applique jamais de marge.

L'équipe peut-elle toujours utiliser le téléphone ?

Oui. Coexistence maintient l'app WhatsApp Business en état de marche sur le numéro de la boutique, et le template envoyé par la boutique apparaît dans la conversation.

Que faire si un webhook a été désactivé ?

Corrigez le récepteur, puis remettez le statut du webhook sur actif dans WooCommerce. Les commandes créées pendant la désactivation n'ont déclenché aucun message.

Poursuivre la lecture

Prêt à commencer ?

Configurez WhatsApp Coexistence en quelques minutes, pas en quelques mois. L’application continue de fonctionner sur le téléphone.

Commencer l'essai gratuit

Vérifié le

Notifications de commande WooCommerce sur WhatsApp