Wie baue ich in n8n einen WhatsApp-Kundenservice-Bot?
Sie importieren ein JSON in n8n, hinterlegen Ihre Zugangsdaten und beschreiben Ihr Geschäft an einer einzigen Stelle. Ab dann erhält jede WhatsApp-Nachricht eine KI-Antwort; wenn der Kunde nach einem Menschen fragt oder der Bot nicht weiterweiß, benachrichtigt er Sie und schweigt in diesem Chat; und wenn Sie selbst vom Handy antworten, schweigt der Bot von allein. Sie finden ihn unten, kostenlos, mit den 5 Schritten zur Inbetriebnahme.
Du programmierst mit KI? Verbinde sie per MCP mit deinem Konto: Sie prüft dein Setup, legt Webhooks und Vorlagen mit deiner Bestätigung an und schreibt den Code. So geht's (Englisch) →
So funktioniert es
- Connect-Webhook kommt an
- Signatur und Token
- Schon verarbeitet?
- Kontaktstatus
- Entscheiden
- KI · Mensch · Zeiten · Medien · Abmeldung
- POST /v1/messages
Und nebenher: message.echo (Sie haben vom Handy geantwortet) → der Bot schweigt in diesem Chat · ein fehlgeschlagenes message.status → protokolliert und gemeldet, ohne neuen Versuch.
Was er tut, Punkt für Punkt
- Prüft, ob die Nachricht von Connect kommt: das Token im Header (n8n prüft es, bevor irgendetwas läuft) und die HMAC-Signatur
X-Connect-Signature-256übertimestamp.body, mit 5 Minuten Toleranz. Eine falsche Signatur erhält eine 401. - Antwortet nie zweimal. Connect wiederholt die Zustellung, wenn kein 2xx zurückkommt (dasselbe Ereignis mit derselben
id), und wenn Meta eine Nachricht erneut zustellt, schickt Connect sie nicht noch einmal als neues Ereignis. Der Workflow speichert die WhatsApp-ID und sendet zusätzlich einen daran gebundenenIdempotency-Key: Selbst wenn sich etwas wiederholt, sendet Connect keine zweite Antwort. - Antwortet mit KI anhand Ihrer Geschäftsanweisungen (was Sie verkaufen, Zeiten, Tonfall) aus einem einzigen Feld, mit Gedächtnis pro Kontakt. Das Modell ist ein eigener Knoten: OpenAI ist angeschlossen, ein Claude-Knoten liegt zum Austauschen bereit.
- Übergibt an einen Menschen, wenn der Kunde danach fragt oder die KI nicht weiterweiß (sie antwortet mit einer Markierung, die der Kunde nie sieht): Er sagt dem Kunden, dass sich jemand meldet, benachrichtigt Sie und schweigt in diesem Chat für die Stunden, die Sie festlegen.
- 🔑 Wenn Sie vom Handy antworten, schweigt der Bot in diesem Chat so lange, wie Sie festlegen. Möglich macht das Coexistence: Connect schickt Ihnen
message.echomit dem, was Sie in der App geschrieben haben. Wenn der Bot zurückkommt, weiß die KI, was Sie gesagt haben. - Öffnungszeiten: Außerhalb davon sendet er eine Nachricht und sonst nichts (er wiederholt sie nicht bei jeder Nachricht).
- Audio, Bild, Video, Sticker, Standort: eine ehrliche Antwort („Ich lese nur Text, können Sie es mir schreiben?“), kein Schweigen.
- Abmeldung: Schreibt jemand „baja“ oder „stop“, bestätigt er einmal und schreibt nie wieder; „alta“ oder „start“ meldet ihn wieder an.
- Fehler: Lehnt Connect einen Versand ab (falscher Schlüssel, abgelaufene Testphase, getrennte Nummer, Kontingent) oder lehnt Meta ihn später ab (z. B. wegen des 24-Stunden-Fensters), wird das in einer Tabelle festgehalten und Sie werden benachrichtigt. Er versucht es nie erneut, und eine fehlgeschlagene Benachrichtigung löst keine weitere aus: Eine Schleife ist ausgeschlossen.
- 🔑 Der Verlauf: Wenn Sie beim Verbinden den Coexistence-Verlauf angefordert haben, speichert er die letzten 30 Nachrichten jedes Kontakts (nie die Hunderttausende) und die KI liest sie als „worüber Sie vorher gesprochen haben“, wenn dieser Kunde wieder schreibt. Ein wiederholter Stapel dupliziert nichts. Wenn es fertig ist (oder nicht gespeichert werden konnte), werden Sie benachrichtigt.
Herunterladen
In 5 Schritten startklar
- Importieren. In n8n: Workflows → ⋮ → Import from File und das JSON auswählen. Drücken Sie ▶ am Knoten Run once: create tables (er legt die 4 Tabellen an, die er nutzt: Duplikate, Kontakte, Fehler und Verlauf).
- Zugangsdaten (der Workflow enthält keine Geheimnisse): Connect webhook token — Typ Header Auth, Name
X-Connect-Token, Value Ihr Tokenwct_…; Connect API key — Header Auth, NameAuthorization, ValueBearer wc_live_…(im Panel: API → Create API key); OpenAI (oder Anthropic); und SMTP, wenn Sie Benachrichtigungen per E-Mail möchten. - Config. Öffnen Sie den Knoten Config und beschreiben Sie Ihr Geschäft in
businessInstructions, Ihre Zeiten inopeningHours, Ihre E-Mail inownerEmail. Um Signaturen zu prüfen, fügen Sie Ihrwhsec_…insigningSecretein. - Aktivieren (der Schalter oben) und die Production URL des Knotens Connect webhook kopieren. ⚠ Die Test URL lauscht nur ein einziges Mal.
- In Connect → Webhooks → Add endpoint: diese URL, die Ereignisse
message.received,message.echoundmessage.status(dazuhistory.batch,history.completedundhistory.dropped, wenn Sie beim Verbinden den Verlauf angefordert haben), und erzeugen Sie das statische Token. Drücken Sie Test: Es muss 200 ergeben. Schicken Sie sich dann von einem anderen Telefon eine WhatsApp-Nachricht.
Reicht nicht der WhatsApp-Knoten von n8n?
n8n bringt einen eigenen WhatsApp-Knoten mit, der direkt mit Meta spricht. Oft reicht er, und er ist kostenlos: Wenn Sie bereits eine Meta-App haben, Ihre Nummer auf der Cloud API läuft und Sie die WhatsApp Business App nicht auf dem Handy nutzen, nehmen Sie ihn.
Was sich mit Connect ändert, ohne Umschweife (was wir über den n8n-Knoten sagen, stammt aus seinem Code, Version 2.40.7):
| WhatsApp-Knoten von n8n | Mit WAIA Connect | |
|---|---|---|
| Preis | Kostenlos (Meta berechnet seine Nachrichten trotzdem) | Ab US$ 12 pro Monat (Starter), 14 Tage kostenlos; Meta berechnet seine Nachrichten trotzdem |
| Meta-App | Sie legen sie selbst an und richten sie ein (App, Token, Webhook) | Nicht nötig: Sie verbinden die Nummer über die Meta-Anmeldung im Panel |
| Die App auf dem Handy weiter nutzen (Coexistence) | Der Trigger bietet das Ereignis für vom Handy Gesendetes (smb_message_echoes) nicht an: Der Bot erfährt nie, dass Sie geantwortet haben | Ja: message.echo enthält, was Sie in der App geschrieben haben, und dieser Workflow schweigt von allein |
| Wie viele Workflows empfangen | Ein Trigger pro Meta-App (sagt der Knoten selbst) | Ein oder mehrere Endpoints, pro Konto oder pro Nummer |
| Wenn Ihr n8n ausfällt | Meta versucht es auf seiner Seite erneut | Connect versucht es bis zu 5-mal über etwa zweieinhalb Stunden, signiert und mit derselben ID, und warnt Sie, bevor es pausiert |
Wenn Sie nichts aus der rechten Spalte brauchen, bleiben Sie beim n8n-Knoten. Der Workflow taugt trotzdem als Beispiel: Die Ideen (die WhatsApp-ID speichern, vor der KI mit 200 antworten, außerhalb der 24 Stunden nie freien Text senden, nie blind wiederholen) gelten für jeden Anbieter.
Gut zu wissen vorab
- Er braucht n8n 2.3.0 oder neuer: Er nutzt Data tables, und die Operation, die die Tabellen anlegt, kam mit dieser Version. Wir haben ihn vollständig auf 2.3.0 und auf 2.40.7 getestet. In n8n Cloud sind Sie bereits auf einer aktuellen Version; selbst gehostet sehen Sie die Version unten links. Dort speichert er Duplikate, den Status jedes Kontakts und die Fehler; Sie finden sie unter Data tables.
- Das KI-Gedächtnis lebt in n8n: Es geht verloren, wenn n8n neu startet, und funktioniert nicht im Queue-Modus (queue mode). Für etwas Dauerhaftes ersetzen Sie den Memory-Knoten durch den von Postgres oder Redis mit demselben Schlüssel.
- Das Signatur-Geheimnis bleibt im Workflow (Knoten Config): n8n lässt keinen Knoten eine Credential lesen. Entfernen Sie es, bevor Sie den Workflow exportieren oder teilen. Das Header-Token und der API-Schlüssel liegen dagegen in den Credentials.
- Der Code-Knoten von n8n kann
cryptonicht nutzen, wenn n8n selbst gehostet ist (standardmäßig gesperrt): Deshalb wird die Signatur mit dem Crypto-Knoten berechnet. - Die Benachrichtigung an Ihr WhatsApp geht als Vorlage raus, nie als freier Text: Außerhalb des 24-Stunden-Fensters lehnt Meta sie ab. Ohne genehmigte Vorlage nutzen Sie E-Mail.
- Die automatischen Nachrichten der App (Begrüßung, Abwesenheit) gehen ebenfalls vom Handy aus. Das konnten wir nicht messen: Wenn Sie sie aktiviert haben, zählen sie womöglich als Ihre Antwort und lassen den Bot verstummen.
- Service ist der freie Text, mit dem Sie innerhalb von 24 Stunden nach der letzten Nachricht Ihres Kunden antworten. Seit dem 1. Oktober 2026 berechnet Meta ihn pro zugestellter Nachricht (in seiner Preistabelle derselbe Betrag wie der Utility-Tarif des jeweiligen Landes), ebenso Utility-Nachrichten, die bei offenem Fenster gesendet werden. Die ersten 1.000 Servicenachrichten pro Nummer und Monat sind kostenlos; danach berechnet Meta jede Antwort und benötigt Ihre in Meta hinterlegte Karte. Das berechnet Meta, nicht WAIA Connect: Ihre Testphase bleibt kostenlos. Das 24-Stunden-Fenster gibt es weiterhin, und es entscheidet, ob Sie freien Text senden können. Connect schlägt auf keine Bot-Antwort etwas auf.
Lebt Ihr Bot in einer Google-Tabelle?
Wenn Sie n8n nicht nutzen und Ihren Bot auf einer Tabelle aufgebaut haben, gibt es den Ratgeber zu Google Sheets. Die genaue Struktur jedes Ereignisses steht unter Den Webhook empfangen.
Quellen (abgerufen am 29.09.2026)
Verbinden Sie noch heute Ihre erste Nummer
Von Meta verifizierter Technologieanbieter. Coexistence mit einem Klick.
Jetzt starten