WhatsApp-Trigger empfängt keine Events & Webhook-Abonnement-Konflikt (Self-hosted n8n)

Hallo zusammen,
Ich habe dieses Problem immer noch und konnte es nicht beheben.
Ich habe zusätzliche Tests durchgeführt:

  • OAuth-Anmeldedaten überprüft.
  • HTTPS/SSL überprüft.
  • Sowohl Test-URL als auch Production-URL getestet.
  • Workflow veröffentlicht.
  • Bestätigt, dass Meta Webhook-Events empfängt.
  • Der Workflow schlägt immer noch fehl mit:
    „Die WhatsApp-App-ID hat bereits ein Webhook-Abonnement.„
    Hat jemand das schon erlebt oder kann mir einen Weg zeigen, wie ich das vorhandene Webhook-Abonnement entfernen oder den WhatsApp Trigger zurücksetzen kann?
    Jede Hilfe wäre sehr willkommen.
    Vielen Dank.

Umgebung

  • n8n-Version: Neueste selbst gehostete Version
  • Deployment: Docker
  • Hosting-Anbieter: Hostinger VPS
  • Betriebssystem: Ubuntu
  • Domain: https://n8n-teep.srv1761962.hstgr.cloud
  • HTTPS/SSL: Aktiviert und funktioniert
  • WhatsApp-Integration: Meta WhatsApp Cloud API (OAuth)
  • KI-Node: OpenAI Chat Model

Problembeschreibung

Ich versuche, einen einfachen KI-gesteuerten WhatsApp-Autoantwort-Workflow zu erstellen.
Workflow:

WhatsApp Trigger
      ↓
AI Agent
      ↓
OpenAI Chat Model

Der AI Agent wird niemals ausgeführt, da der WhatsApp Trigger niemals eingehende Events empfängt.

Was funktioniert

  • WhatsApp-OAuth-Anmeldedaten stellen erfolgreich eine Verbindung her.
  • OAuth-Verbindungstest ist erfolgreich.
  • HTTPS-Domain ist erreichbar.
  • Meta WhatsApp Cloud API-Testnummer funktioniert korrekt.
  • Ich kann erfolgreich Template-Nachrichten vom Meta Developer Dashboard aus versenden.
  • Meta Developer Dashboard zeigt eingehende Webhook-Events unter Check Test Webhooks.

Was funktioniert NICHT

Wenn ich auf Execute Step beim WhatsApp Trigger klicke, wechselt er zu:

Listening for test event

Ich sende dann eine WhatsApp-Nachricht an die Testnummer.
Der Trigger empfängt das Event nie und wartet endlos.
Es wird keine Ausführung erstellt.
Der AI Agent startet nie.

Zusätzlicher Fehler

Wenn ich den Workflow veröffentliche oder ausführe, erhalte ich den folgenden Fehler:

Die WhatsApp-App-ID hat bereits ein Webhook-Abonnement.
Lösche es oder verwende eine andere App, bevor du den Trigger ausführst.
Aufgrund von WhatsApp-API-Limitierungen kannst du nur einen Trigger pro App haben.

Was ich bereits versucht habe

  • WhatsApp-OAuth-Anmeldedaten neu erstellt.
  • OAuth-Anmeldedaten überprüft, ob sie gültig sind.
  • Sowohl Test-URL als auch Production-URL getestet.
  • Workflow veröffentlicht.
  • SSL-Zertifikat überprüft.
  • Bestätigt, dass Meta Webhook-Events empfängt.
  • Workflow von Grund auf neu aufgebaut.
  • Mit nur einem WhatsApp Trigger-Node getestet.
  • AI Agent aus dem Test entfernt.
  • Überprüft, dass das Problem nicht mit dem OpenAI-Node zusammenhängt.

Zusätzliche Informationen

Ich habe eine andere selbst gehostete n8n-Instanz auf einem anderen Hostinger VPS laufen.
Es ist möglich, dass dieselbe Meta WhatsApp App zuvor mit dieser Instanz verbunden war.
Ich bin mir nicht sicher, ob ein altes Webhook-Abonnement diese neue Instanz daran hindert, ihr Webhook zu registrieren.

Fragen

  1. Wie kann ich feststellen, welches Webhook derzeit für meine WhatsApp App registriert ist?
  2. Gibt es eine Möglichkeit, das vorhandene Webhook-Abonnement zu entfernen oder zu ersetzen, ohne eine neue Meta App zu erstellen?
  3. Meldet der WhatsApp Trigger alte Webhooks automatisch ab?
  4. Gibt es einen Befehl oder API-Endpunkt, mit dem ich die Webhook-Registrierung manuell zurücksetzen kann?
  5. Gibt es Logs, die ich bei meiner selbst gehosteten n8n-Instanz überprüfen sollte, um zu diagnostizieren, warum die Webhook-Registrierung fehlschlägt?

Erwartetes Verhalten

Eingehende WhatsApp-Nachrichten sollten den Workflow sofort auslösen.

Tatsächliches Verhalten

Der Trigger bleibt für immer in „Listening for test event

@Hussain_Farooq dieser Fehler ist exakt das Problem: n8ns Trigger prüft die vorhandene Webhook-Subscription deiner App und bricht ab, wenn die callback_url nicht mit der URL übereinstimmt, die dieser Trigger haben möchte. Meta erlaubt nur einen Webhook pro App. Also liefert Meta deine Events an die andere/alte callback_url, weshalb das Dashboard Events anzeigt, aber der Trigger sie nie sieht. Lösung: Gehe im Meta App Dashboard zu WhatsApp > Configuration und lösche den bestehenden Webhook Callback (oder setze ihn auf die exakte URL, die auf dem n8n Trigger Node angezeigt wird), aktiviere dann den Workflow, damit n8n seine Production URL registriert, und stelle sicher, dass das messages-Feld abonniert ist. Es ist ein Trigger pro App, also wenn ein anderer Flow oder eine andere Instanz dort bereits einen Callback registriert hat, das ist dein Konflikt.

Um genau zu sehen, was registriert ist, müssen Sie den Meta Graph API Explorer oder curl verwenden. Das Abonnement erfolgt auf der Ebene des WhatsApp Business Account (WABA), nicht nur auf der App-Ebene.

Die Überprüfung: Führen Sie eine GET-Anfrage an den folgenden Endpunkt aus: https://graph.facebook.com/v21.0/{your-waba-id}/subscribed_apps (Ersetzen Sie {your-waba-id} durch Ihre WhatsApp Business Account ID, die Sie in den Meta Business Settings finden).

Wenn die Antwort Ihre App ID enthält, ist diese App derzeit abonniert, um Ereignisse für dieses Konto zu empfangen. Das ist der Grund, warum n8n blockiert ist.

Um „den Weg freizumachen