Zum Inhalt springen
All articles
Setup

E-Commerce (WooCommerce und Magento)

Synchronisieren Sie Kunden und Bestellungen aus Ihren WooCommerce- oder Magento-Shops mit dem CRM über Ihren eigenen Shop (BYO-Modell).

Neben Shopify synchronisiert das CRM auch WooCommerce- und Magento-Shops (BYO-Modell: Sie bringen Ihren eigenen Shop mit). Jeder Kunde wird zu einem Kontakt und jede Bestellung zu einem Verkaufsauftrag. Es entstehen keine Kosten, keine Marge und keine Vermittlung auf unserer Seite: Die Daten kommen direkt aus Ihrem Shop. Die Integration startet inaktiv: Es passiert nichts, bis Sie die Felder ausfüllen und aktivieren. Die Geheimnisse werden verschlüsselt im CRM gespeichert und nie wieder angezeigt.

Voraussetzungen

  • WooCommerce: ein WordPress-/WooCommerce-Shop mit Administratorzugriff (um Webhooks unter WooCommerce → Settings → Advanced → Webhooks zu erstellen).
  • Magento (Adobe Commerce): Zugriff, um ein Modul, eine Integration oder einen Observer zu installieren/konfigurieren, das/der für jeden Kunden/jede Bestellung JSON per POST sendet (Magento verfügt nicht über standardisierte native Webhooks).
  • In Sellio: Administratorzugriff, um die Zugangsdaten zu speichern und die Integration unter Einstellungen → Integrationen zu aktivieren.

WooCommerce

WooCommerce sendet native Webhooks. Sie erstellen die Webhooks in Ihrem Shop mit Verweis auf die CRM-URL und definieren ein "Secret"; WooCommerce signiert jeden Aufruf mit diesem Secret (HMAC-SHA256, Header X-WC-Webhook-Signature), und das CRM prüft die Signatur, bevor synchronisiert wird.

  1. Öffnen Sie im CRM Einstellungen → Integrationen und suchen Sie die Karte "E-Commerce (WooCommerce)".
  2. Füllen Sie die Shop-URL (optional, nur zur Referenz) und ein Webhook-Secret (eine von Ihnen gewählte Zeichenfolge) aus und klicken Sie auf "Zugangsdaten speichern".
  3. Kopieren Sie die angezeigte "Webhook-URL (WooCommerce)".
  4. Gehen Sie in Ihrem Shop zu WooCommerce → Settings → Advanced → Webhooks und erstellen Sie einen Webhook für JEDES Thema: Customer created, Customer updated, Order created, Order updated. Fügen Sie bei jedem die CRM-URL als Delivery URL ein und verwenden Sie dasselbe Secret, das Sie im CRM gespeichert haben.
  5. Kehren Sie zum CRM zurück und klicken Sie auf "Aktivieren".

Magento (Adobe Commerce)

Magento verfügt nicht über standardisierte native Webhooks. Sie konfigurieren ein Modul/eine Integration (oder einen Observer), das/der für jeden Kunden oder jede Bestellung einen JSON-POST an die CRM-URL sendet. Der POST wird über ein Secret authentifiziert, auf zwei mögliche Arten (verwenden Sie die, die Ihr Modul unterstützt): eine HMAC-SHA256-Signatur des Bodys in Base64 im Header X-Magento-Signature, oder das Secret selbst im Klartext im Header X-Magento-Secret.

  1. Öffnen Sie im CRM Einstellungen → Integrationen und suchen Sie die Karte "E-Commerce (Magento)".
  2. Füllen Sie die Shop-URL (optional) und ein Authentifizierungs-Secret (eine von Ihnen gewählte Zeichenfolge) aus und klicken Sie auf "Zugangsdaten speichern".
  3. Kopieren Sie die angezeigte "Webhook-URL (Magento)".
  4. Konfigurieren Sie Ihr Magento-Modul/Ihre Magento-Integration so, dass es für jeden Kunden und jede Bestellung einen POST (JSON) an diese URL sendet und dabei das Secret im Header X-Magento-Signature (HMAC-Signatur) oder X-Magento-Secret (Klartextwert) mitsendet.
  5. Kehren Sie zum CRM zurück und klicken Sie auf "Aktivieren".

Von Magento erwartetes JSON-Format. Für Kunden: { "type": "customer", "id", "email", "firstname", "lastname", "telephone", "street", "city", "region", "country_id" }. Für Bestellungen: { "type": "order", "increment_id" (oder "entity_id"), "grand_total", "order_currency_code", "status", "customer_email", "customer_id", "customer_firstname", "customer_lastname" }. Das Feld "type" (customer oder order) bestimmt das Mapping; fehlende Felder werden leer.

Was bei jedem Ereignis passiert

  • Kunde (customer.created/updated in Woo; type "customer" in Magento): Der Kunde wird als Kontakt erstellt oder aktualisiert, abgeglichen per E-Mail. Das CRM speichert die Shop-Kunden-ID (woo_customer_id / magento_customer_id), um Duplikate bei erneuter Zustellung zu vermeiden.
  • Bestellung (order.created/updated in Woo; type "order" in Magento): Die Bestellung wird als Verkaufsauftrag erstellt oder aktualisiert (Nummer, Betrag, Währung und Status), verknüpft mit dem entsprechenden Kontakt, sofern dieser existiert. In Woo wird "completed" zu "fakturiert" und "cancelled/refunded/failed" zu "storniert"; in Magento wird "complete/closed/invoiced" zu "fakturiert" und "canceled/holded" zu "storniert"; der Rest wird "bestätigt".
💡 Die Synchronisierung ist idempotent: Sendet der Shop dasselbe Ereignis erneut, aktualisiert das CRM den vorhandenen Datensatz, statt einen neuen zu erstellen (es identifiziert den Datensatz anhand der externen ID). Es werden nur die Felder aktualisiert, die aus dem Shop kommen; was Sie manuell im CRM bearbeitet haben, bleibt erhalten.

Behandeln Sie die Webhook-URLs und die Secrets als geheim. Aufrufe mit ungültiger Signatur/ungültigem Secret werden abgelehnt. Wenn Sie versuchen zu aktivieren, ohne das Secret auszufüllen, bleibt die Integration inaktiv, und es wird nichts synchronisiert, bis alles vorhanden ist.

So testen Sie

  1. WooCommerce: Bearbeiten Sie unter WooCommerce → Settings → Advanced → Webhooks einen Webhook und prüfen Sie die "Webhook logs", nachdem Sie einen Testkunden/eine Testbestellung erstellt haben; prüfen Sie im CRM Kontakte/Verkaufsaufträge.
  2. Magento: Lösen Sie Ihren Observer/Ihre Integration für einen Testkunden und eine Testbestellung aus (JSON-POST mit dem Feld "type") und prüfen Sie die Datensätze im CRM.
  3. Senden Sie dasselbe Ereignis erneut und bestätigen Sie, dass das CRM aktualisiert (nicht dupliziert), da der Schlüssel die externe ID ist.

Fehlerbehebung

  • WooCommerce: ungültige Signatur: Das "Secret" des Webhooks im Shop muss GLEICH dem im CRM gespeicherten Webhook-Secret sein (HMAC-SHA256, Header X-WC-Webhook-Signature). Geben Sie auf beiden Seiten denselben Wert erneut ein.
  • Magento: Aufruf abgelehnt: Senden Sie das Secret korrekt, entweder den HMAC-SHA256 des Bodys in Base64 im Header X-Magento-Signature ODER das Klartext-Secret im Header X-Magento-Secret (verwenden Sie, was Ihr Modul unterstützt).
  • Es wird nicht synchronisiert: Prüfen Sie, ob die Webhooks/POSTs Kunde UND Bestellung (erstellt/aktualisiert) abdecken und auf die richtige "Webhook-URL" verweisen; prüfen Sie, ob die Integration aktiviert ist.
  • Magento: leere Felder im CRM: Prüfen Sie das erwartete JSON (Kunde: id/email/firstname/lastname...; Bestellung: increment_id/grand_total/order_currency_code/status/customer_email...). Das Feld "type" (customer/order) bestimmt das Mapping.
  • 404 bei der URL: Integration deaktiviert oder Token geändert. Reaktivieren Sie sie und kopieren Sie die URL erneut.

Open this article inside the system

Read it and want to see it working?

The account is free and the whole manual is available inside the system, with an assistant that answers from this very content.

Kostenloses Konto erstellen
E-Commerce (WooCommerce und Magento) · Sellio