problème webhook WhatsApp

Titre : Erreur du déclencheur WhatsApp : « The WhatsApp App ID already has a webhook subscription » sur instance auto-hébergée
Corps :
Bonjour à tous,
J’exécute une instance auto-hébergée de n8n via Docker derrière un tunnel Cloudflare. J’essaie de tester/activer un nœud Déclencheur WhatsApp, mais je reçois continuellement l’erreur suivante :
Problème lors de l’exécution du workflow
The WhatsApp App ID [MY_APP_ID] already has a webhook subscription. Delete it or use another App before executing the trigger. Due to WhatsApp API limitations, you can have just one trigger per App.
Détails de la configuration :
n8n auto-hébergé s’exécutant dans Docker
URL publique exposée via Cloudflare Tunnel (la variable d’environnement WEBHOOK_URL est définie correctement)
Utilisation de l’application Meta Developer avec les identifiants API WhatsApp
Je n’ai aucun autre workflow actif dans n8n utilisant le même WhatsApp App ID.
Comment puis-je correctement effacer ou réinitialiser l’abonnement webhook du côté de Meta ou dans n8n pour que le nœud déclencheur puisse s’enregistrer correctement ? Toute aide ou conseil serait grandement apprécié !

Salut @mateusz_szlaga

L’abonnement se trouve du côté de Meta, pas dans n8n. Donc le fait de ne pas avoir d’autres workflows actifs ne signifie pas qu’il n’y a pas d’abonnement, et c’est pourquoi désactiver des éléments dans n8n ne le supprime pas.

Vérifiez ce qui est réellement enregistré :

GET https://graph.facebook.com/v21.0/{app-id}/subscriptions?access_token={app-id}|{app-secret}

Notez le format du token, c’est votre ID d’application et votre secret d’application joints par une barre verticale. C’est le token d’accès de l’application et c’est ce qui trompe les gens.

Ensuite, supprimez-le :

DELETE https://graph.facebook.com/v21.0/{app-id}/subscriptions?object=whatsapp_business_account&access_token={app-id}|{app-secret}

Ou faites-le dans le tableau de bord : votre application, puis WhatsApp, puis Configuration, et il y a un bouton « Supprimer l’abonnement » à côté de l’URL de rappel.

Une fois que c’est parti, activez le workflow et n8n enregistrera son propre abonnement correctement.

Quant à la provenance, le coupable habituel est le fait d’avoir cliqué sur Execute workflow à un moment donné. Le mode test enregistre également un abonnement, et il n’est pas toujours nettoyé quand le test se termine. Après cela, chaque tentative d’activation se heurte à la limite d’un seul déclencheur par application par rapport à un abonnement que vous ne pouvez pas voir depuis l’intérieur de n8n.

Bon à savoir pour l’avenir : cette limite est celle de Meta, pas celle de n8n, donc vous ne pouvez pas avoir un déclencheur de test et un déclencheur de production sur la même application à la fois. Une fois qu’il est activé, ne touchez pas à Execute ou vous reviendrez ici.

Au fait, votre tunnel Cloudflare n’est pas impliqué dans ce cas, cette erreur se produit avant que quoi que ce soit ne tente d’accéder à votre instance.