WhatsApp-Bestellupdates aus WooCommerce senden
Legen Sie in WooCommerce einen Webhook für Bestellereignisse an, der auf einen Receiver zeigt, etwa einen n8n-Workflow oder eine kleine PHP-Route. Der Receiver prüft die Signatur von WooCommerce, kontrolliert, ob der Kunde WhatsApp-Nachrichten zugestimmt hat, und sendet über die Cloud API ein genehmigtes Template, mit der phone number id und dem Token der verbundenen Nummer.
WooCommerce deaktiviert einen Webhook nach mehr als fünf aufeinanderfolgenden fehlgeschlagenen Zustellungen.
Der Header enthält einen Base64-codierten HMAC-SHA256 der Payload, gebildet mit dem Secret des Webhooks.
Außerhalb eines Kundenservice-Fensters können nur vorab genehmigte Template-Nachrichten gesendet werden.
Wie löst eine WooCommerce-Bestellung eine WhatsApp-Nachricht aus?
Über einen WooCommerce-Webhook und einen Receiver. Legen Sie in WooCommerce unter Einstellungen, Erweitert, Webhooks einen Webhook mit einem Bestell-Topic an, etwa „Bestellung erstellt“ oder „Bestellung aktualisiert“, dazu eine Zustell-URL und ein Secret. WooCommerce sendet die Bestellung dann bei jedem Ereignis als JSON an diese URL.
Die Payload ist fest vorgegeben und lässt sich deshalb nicht direkt an die Cloud API richten. Dazwischen sitzt ein Receiver: ein n8n-Webhook-Node, eine Route in der PHP-Anwendung des Shops oder ein beliebiger kleiner Service. Er liest die Bestellung, entnimmt die Telefonnummer des Kunden und die Angaben, die die Nachricht braucht, und stellt eine einzige HTTPS-Anfrage an den Messages-Endpoint der Cloud API für die verbundene Nummer, mit dem Zugriffstoken der Nummer als Bearer-Token.
Das Topic order.updated ist nicht an einen bestimmten Status gebunden. Der Receiver sollte daher das Feld status der Bestellung lesen und nur einmal pro Statuswechsel senden, der ihn interessiert. WooCommerce stellt standardmäßig im Hintergrund über wp-cron zu, deshalb kann die Nachricht der Bestellung mit kurzer Verzögerung folgen.
Woher weiß der Receiver, dass die Anfrage vom Shop stammt?
Aus der Signatur von WooCommerce. Jede Zustellung trägt einen Header X-WC-Webhook-Signature, einen Base64-codierten HMAC-SHA256 der rohen Payload, berechnet mit dem Secret, das Sie am Webhook hinterlegt haben. Der Receiver berechnet denselben Hash über den empfangenen Body, vergleicht und weist alles ab, was nicht übereinstimmt.
Das ist das eigene Secret des Shops. Anders als bei der Signatur von Meta auf eingehenden WhatsApp-Nachrichten lässt sich diese Signatur also prüfen. Vergleichen Sie in konstanter Zeit und hashen Sie den rohen Body, bevor ein Framework ihn parst, denn neu codiertes JSON ergibt einen anderen Hash.
Antworten Sie schnell mit einem 2xx. WooCommerce wertet jede Antwort, die nicht 2xx, 301 oder 302 ist, als Fehler und deaktiviert den Webhook nach mehr als fünf Fehlern in Folge. Ein Receiver, der wegen eines Deployments ausfällt oder langsam ist, weil er vor der Antwort auf Meta wartet, kann die Nachrichten des Shops abschalten, ohne dass es jemand bemerkt.
Was kann der Shop senden, und wann?
Ein genehmigtes Template, immer dann, wenn der Shop zuerst schreibt. Das 24-Stunden-Kundenservice-Fenster von Meta öffnet sich nur, wenn der Kunde der Nummer schreibt. Eine Bestellbestätigung oder ein Versandupdate geht also vom Unternehmen aus, und Freitext wird abgelehnt. Legen Sie für jedes Update ein Utility-Template an, warten Sie die Genehmigung ab und senden Sie es mit Name und Sprache, wobei Bestellnummer und weitere Angaben als Parameter übergeben werden.
Meta verlangt außerdem ein Opt-in: Der Kunde hat seine Nummer angegeben und zugestimmt, von diesem Unternehmen auf WhatsApp zu hören. Ein Kontrollkästchen im Checkout, das an der Bestellung gespeichert wird, ist der einfachste Nachweis, und der Receiver sollte es vor dem Senden prüfen.
Sobald der Kunde antwortet, ist die Unterhaltung gewöhnliches Coexistence. Die Antwort erscheint in der WhatsApp Business App auf dem Telefon des Shops, das Fenster ist für Freitext geöffnet, und das Team antwortet aus der App wie gewohnt.
Häufige Fehler
- Den Cloud-API-Aufruf ausführen, bevor WooCommerce eine Antwort erhält. Ein langsamer oder fehlgeschlagener Versand zählt gegen den Webhook, der nach mehr als fünf Fehlern deaktiviert wird.
- Geparstes JSON statt des rohen Body hashen. Die Signatur stimmt nie überein, und jede echte Zustellung wird abgewiesen.
- Bei jeder order.updated-Zustellung senden. Das Topic ist nicht an einen Status gebunden. Ohne Nachverfolgung, welcher Statuswechsel schon gemeldet wurde, erhalten Kunden doppelte Nachrichten.
Verbinden Sie die Nummer des Shops auf easycoexistence.com und tragen Sie phone number id und Token aus dem Dashboard in den Receiver ein. Ab US$ 9 pro Nummer und Monat, mit wachsender Nummernzahl sinkend bis US$ 1, die ersten 3 Tage kostenlos.
Häufig gestellte Fragen
Brauche ich dafür ein WordPress-Plugin?
Nein. Die eingebauten Webhooks von WooCommerce und ein Receiver genügen, und der Receiver kann eine Route in derselben PHP-Anwendung sein.
Wer bezahlt die Bestellnachrichten?
Meta rechnet den Nachrichtenversand direkt mit dem Unternehmen über dessen eigenes WhatsApp-Business-Konto ab, und EasyCoexistence schlägt nie etwas auf.
Kann das Team das Telefon weiterhin nutzen?
Ja. Coexistence hält die WhatsApp Business App auf der Nummer des Shops funktionsfähig, und das vom Shop gesendete Template erscheint im Verlauf.
Was tun, wenn ein Webhook deaktiviert wurde?
Beheben Sie den Receiver und setzen Sie den Status des Webhooks in WooCommerce wieder auf „Aktiv“. Bestellungen, die während der Deaktivierung entstanden sind, haben keine Nachricht ausgelöst.
Weiterlesen
Bereit für den Start?
Richten Sie WhatsApp Coexistence in wenigen Minuten statt Monaten ein. Die App funktioniert weiterhin auf dem Telefon.
Kostenlose Testphase startenVerifiziert am