WooCommerce-Bestellungen mit einem Sound, den du nicht überhörst

WooCommerce schickt dir eine E-Mail bei neuen Bestellungen – und die landet im selben Postfach wie alles andere. WooCommerce hat aber auch Webhooks eingebaut, ganz ohne Plugin. Einen davon aufs Handy zu richten dauert etwa zwei Minuten.

WooCommerce hat Webhooks eingebaut

Das überrascht viele Shop-Betreiber, die zuerst nach einem Benachrichtigungs-Plugin suchen. Webhooks sind Teil des WooCommerce-Kerns, unter WooCommerce → Einstellungen → Erweitert → Webhooks. Ein Klick auf Webhook hinzufügen öffnet ein kurzes Formular:

  • Name – eine Bezeichnung für dich. Leer gelassen bekommt er einen Namen mit Zeitstempel.
  • Status – Aktiv stellt zu, Pausiert stoppt vorübergehend, Deaktiviert heißt, er wurde wegen Fehlern gestoppt.
  • Thema – das auslösende Ereignis. Verfügbar sind Gutschein-, Kunden-, Bestell- und Produkt-Events, dazu Aktion für beliebige WordPress-Hooks. Erweiterungen können weitere ergänzen.
  • Aktions-Event – erscheint nur, wenn das Thema Aktion ist; hier benennst du einen Hook wie woocommerce_add_to_cart.
  • Lieferungs-URL – wohin das Payload geht.
  • Geheimer Schlüssel – erzeugt einen Hash jeder Zustellung, der in den Request-Headern mitreist. Leer gelassen wird der Consumer-Secret des aktuellen API-Benutzers verwendet.

Wird ein Webhook als Aktiv gespeichert, geht sofort ein Ping an die Lieferungs-URL – du weißt also gleich, ob es funktioniert.

Richte ihn auf dein Handy

Ein Webhooky-Endpunkt ist eine URL, die jeden HTTP-POST annimmt und daraus eine Push-Benachrichtigung macht. Genau das will WooCommerce im Feld Lieferungs-URL:

  1. Leg in der Webhooky-App einen Endpunkt an. Nenn ihn Shop-Bestellung, setz als Nachricht z. B. „Neue Bestellung im Shop“, wähl den Sound cash_register oder ka_ching, kopier die URL.
  2. Geh in WordPress zu WooCommerce → Einstellungen → Erweitert → Webhooks → Webhook hinzufügen.
  3. Status auf Aktiv, Thema Bestellung erstellt wählen, URL in die Lieferungs-URL einfügen, speichern.

WooCommerce postet die vollständige Bestellung als JSON. Webhooky muss sie nicht lesen – weil der Body kein Feld title oder message hat, greift der Fallback auf Titel, Text und Sound, die du eingestellt hast. Dein Handy macht Kassa-Geräusch, sobald eine Bestellung reinkommt, auf allen Geräten, auf denen du angemeldet bist.

Ein Detail, das hier wichtiger ist als anderswo

WooCommerce wertet jede Antwort außer 2xx, 301 oder 302 als Fehlschlag – und nach mehr als fünf Fehlschlägen in Folge deaktiviert es den Webhook automatisch. Das ist ein wirklich unangenehmer Fehlerfall: Deine Bestellbenachrichtigungen hören auf, stillschweigend, und nichts sagt dir Bescheid. (Die Schwelle lässt sich mit dem Filter woocommerce_max_webhook_delivery_failures ändern, aber kaum jemand fasst sie an.)

Genau deshalb antwortet Webhooky immer mit 200 – auch wenn du die 100 Benachrichtigungen des Gratis-Tarifs aufgebraucht hast. Du bekommst dann eine separate Meldung über das erreichte Limit, aber WooCommerce sieht weiterhin einen gesunden Endpunkt und deaktiviert den Webhook nie. Falls du einen Woo-Webhook je auf etwas richtest, das bei Problemen 402 oder 500 zurückgibt: Schau nach ein paar Tagen in der Webhook-Liste nach dem Status.

Welche Themen einen eigenen Endpunkt verdienen

Leg pro Thema einen Endpunkt an und gib jedem seinen eigenen Sound – das ist der Punkt, an dem es die E-Mail schlägt:

  • Bestellung erstellt – die Kassa. Das will jeder.
  • Bestellung aktualisiert – nützlich bei Statuswechseln, laut wenn sie dich nicht interessieren.
  • Kunde erstellt – ein leiserer Ton; schön, um zu merken, dass der Shop wächst.
  • Produkt aktualisiert – lohnt sich, wenn mehrere Leute am Katalog arbeiten.
  • Aktion → woocommerce_low_stock – nachbestellen, bevor ein Produkt ausverkauft ist.

Wenn du Bestellnummer und Summe willst

Die Benachrichtigung oben sagt „eine Bestellung ist da“. Für „#1482 · 74,90 €“ muss etwas das Payload lesen – also ein kleiner Handler dazwischen. WooCommerce schickt das komplette Bestellobjekt, es gibt also nichts nachzuladen, nur umzuformen und weiterzureichen:

export async function onWooOrder(req, res) {
  res.sendStatus(200);                       // erst quittieren - fünf Fehler deaktivieren den Hook

  const order = req.body;
  await fetch(process.env.WEBHOOKY_URL, {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      title: "🛒 Neue Bestellung",
      message: `#${order.number} · ${order.total} ${order.currency}`,
      sound: "cash_register",
    }),
  });
}

Quittiere, bevor du arbeitest – aus demselben Grund wie oben: Ein langsamer Handler zählt als fehlgeschlagene Zustellung, und fünf davon schalten den Webhook ab.

Ganz ohne Code? Zapier, Make oder IFTTT

Wenn du die erweiterten Einstellungen lieber nicht anfassen willst: Jedes größere Automatisierungs-Tool hat einen WooCommerce-Trigger. Trigger auf neue Bestellung bauen, Aktion Webhooks → POST auf deine Webhooky-URL hinzufügen, Bestellnummer und Summe in die Nachricht mappen. Du bekommst die Details, ohne etwas zu schreiben; dafür wird nach Zeitplan abgefragt, rechne also mit Minuten statt Sekunden.

Warum nicht einfach die Bestell-E-Mails?

Die meisten Shop-Betreiber nutzen beides. Die E-Mail ist der Beleg, der Push mit eigenem Sound ist der Alarm. Der Unterschied zeigt sich an einem Samstagnachmittag, wenn du nicht am Schreibtisch sitzt – eine E-Mail ist eine von vierzig, eine Registrierkasse ist unverwechselbar. Jeder Endpunkt führt außerdem seine eigene Historie, durch die du zurückscrollen kannst, und es gibt kein Konto anzulegen: App installieren, Endpunkt erstellen, URL einfügen.

Jetzt bei Google Play Laden im App Store

Häufige Fragen

Hat WooCommerce Webhooks ohne Plugin?

Ja. Webhooks sind Teil des WooCommerce-Kerns, unter WooCommerce → Einstellungen → Erweitert → Webhooks. Für Bestell-, Kunden-, Gutschein- und Produkt-Themen braucht es keine Erweiterung.

Wie bekomme ich eine Push-Benachrichtigung bei neuen WooCommerce-Bestellungen?

Leg einen Webhook mit dem Thema Bestellung erstellt an und setz als Lieferungs-URL eine URL, die dich benachrichtigt. Ein Webhooky-Endpunkt macht aus diesem POST einen Push mit eigenem Sound – ohne Server und ohne Plugin.

Warum funktioniert mein WooCommerce-Webhook nicht mehr?

WooCommerce zählt jede Antwort außer 2xx, 301 oder 302 als Fehlschlag und deaktiviert einen Webhook nach mehr als fünf Fehlschlägen in Folge automatisch. Prüf den Status in der Webhook-Liste – steht dort „Deaktiviert“, ist das der Grund.

Kann ich einen Sound für neue WooCommerce-Bestellungen bekommen?

Über die Bestell-E-Mails nicht, über einen Webhook schon. Richte das Thema Bestellung erstellt auf einen Benachrichtigungs-Endpunkt mit Sound-Unterstützung und weise eine Registrierkasse zu; Webhooky hat 40 Sounds, pro Endpunkt oder pro Nachricht wählbar.