WooCommerce API: Produktdaten und Bestände sauber synchronisieren
Eine Verbindung zum Shop ist schnell eingerichtet. Verlässlich wird sie erst durch eindeutige Zuordnung, klare Datenhoheit und kontrollierte Wiederholungen.

Produktdaten aus einer Warenwirtschaft in WooCommerce zu übernehmen kann viele wiederkehrende Eingaben vermeiden. Die eigentliche Herausforderung liegt selten nur im ersten API-Aufruf. Entscheidend ist, welche Quelle welches Feld bestimmen darf, wie Produkte eindeutig zugeordnet werden und was nach einer fehlgeschlagenen Übertragung passiert.
Vor der Schnittstelle die Datenhoheit klären
Listen Sie zunächst die Daten auf, die übertragen werden sollen: Artikelnummer, Preis, Bestand, Beschreibung, Bilder, Varianten oder Kategorien. Für jedes Feld wird festgelegt, welches System führend ist. Die Warenwirtschaft kann beispielsweise Bestand und Einkaufseinheiten liefern, während die Redaktion im Shop Beschreibung und Bilder pflegt.
Ein Import darf dann nicht bei jeder Ausführung alle Produktfelder überschreiben. Er sollte nur die vereinbarten Daten verändern. Diese Trennung ist besonders wichtig, wenn mehrere Systeme denselben Artikel kennen, aber unterschiedliche Aufgaben erfüllen. Die technische Verbindung muss die fachliche Regel abbilden.
| Feld | Führende Quelle | Regel bei Abweichung |
|---|---|---|
| Artikelnummer | Warenwirtschaft | Zuordnung prüfen, nicht ungefragt neu erzeugen |
| Verfügbarer Bestand | Vereinbartes Bestandsmodell | Reservierungen und offene Aufträge berücksichtigen |
| Verkaufspreis | Festgelegte Preisquelle | Währung und Steuerdarstellung prüfen |
| Produktbeschreibung | Shop-Redaktion | Beim Bestandsabgleich unverändert lassen |
| Produktbilder | Freigegebene Medienquelle | Nur korrekt zugeordnete und nutzbare Medien übernehmen |
Produkt-ID, SKU und Varianten auseinanderhalten
WooCommerce verwendet eigene numerische Kennungen. Eine Artikelnummer aus der Warenwirtschaft ist nicht automatisch identisch mit dieser Produkt-ID. Die Integration braucht eine stabile Zuordnung, zum Beispiel zwischen externer Artikelkennung, SKU und WooCommerce-ID. Wie diese Zuordnung erstmals hergestellt und später geprüft wird, gehört zum Konzept.
Variable Produkte und ihre Varianten werden gesondert betrachtet. Ein Elternprodukt beschreibt beispielsweise ein Modell, einzelne Varianten dagegen Größen oder Farben. Die REST API stellt dafür eigene Variations-Endpunkte unter dem jeweiligen Produkt bereit. Ein Bestand kann je nach Konfiguration am Produkt oder an einzelnen Varianten verwaltet werden; ein einziges pauschales Bestandsfeld reicht deshalb nicht für jedes Sortiment.
API-Zugang mit passenden Rechten einrichten
Die WooCommerce-REST-API dokumentiert die Verwaltung von Produkten und Varianten in der Version wc/v3. Für eine Integration können Schlüssel mit Lese-, Schreib- oder Lese-/Schreibzugriff erstellt werden. Zusätzlich gelten die Rechte des zugehörigen WordPress-Benutzers. Nur einen Schlüssel zu besitzen hebt diese Berechtigungen nicht auf.
Verwenden Sie eine verschlüsselte Verbindung und speichern Sie Zugangsdaten in einer dafür vorgesehenen serverseitigen Konfiguration. Geheimnisse gehören weder in öffentliche Webseiten noch in frei zugängliche Beispiel-URLs. Eine separate Integration sollte eigene, widerrufbare Zugangsdaten erhalten. Verfügbare Endpunkte, Hosting-Regeln und Schutzmechanismen werden mit einem begrenzten Test geprüft.
Änderungen übertragen, statt immer alles neu anzulegen
Ein sinnvoller Ablauf liest die Quelldaten, prüft die Zuordnung und entscheidet danach zwischen Aktualisierung, Anlage oder manueller Klärung. Wenn ein Produkt bereits zugeordnet ist, wird es gezielt aktualisiert. Eine Wiederholung desselben Vorgangs sollte nicht unbemerkt ein zweites Produkt erzeugen.
- Änderung mit einer stabilen externen Kennung übernehmen.
- Produkt oder Variante eindeutig im Shop zuordnen.
- Pflichtfelder, Formate und führende Datenquelle prüfen.
- Nur die tatsächlich betroffenen Felder übertragen.
- Antwort und zurückgegebene Kennung prüfen.
- Ergebnis speichern und unklare Fälle sichtbar zur Bearbeitung geben.
Bei größeren Listen müssen alle Ergebnisseiten berücksichtigt werden. WooCommerce dokumentiert dafür Pagination sowie Gesamtzahlen in Response-Headern. Stapelverarbeitung und Begrenzungen werden an Hosting, Datenmenge und angeschlossene Dienste angepasst. Es gibt keinen universellen Durchsatzwert, den jede Installation zuverlässig erreicht.
Webhooks melden Ereignisse, ersetzen aber keinen Datenabgleich
Webhooks können den Start einer Verarbeitung auslösen, wenn im Shop ein passendes Ereignis eintritt. Der Empfänger sollte die Herkunft prüfen und die Verarbeitung nachvollziehbar annehmen. WooCommerce dokumentiert dafür unter anderem eine Signatur des Inhalts. Wiederholte oder verspätete Ereignisse müssen ebenfalls sinnvoll behandelt werden.
Ein zusätzlicher gezielter Abgleich kann helfen, Abweichungen zu erkennen, die durch Ausfälle oder Änderungen außerhalb des erwarteten Ablaufs entstanden sind. Wie häufig er läuft und welche Quelle bei Konflikten gewinnt, wird fachlich festgelegt. Ein Webhook allein macht eine bidirektionale Synchronisation noch nicht konfliktfrei.
Bestände brauchen eine eindeutige Bedeutung
„Bestand“ kann Lagerbestand, verkaufbare Menge oder eine bereits um Reservierungen bereinigte Zahl meinen. Stimmen diese Bedeutungen zwischen Warenwirtschaft und Shop nicht überein, kann ein technisch erfolgreicher Import fachlich falsch sein. Klären Sie daher, welche Buchungen zu welchem Zeitpunkt berücksichtigt werden und wo Bestellungen den Bestand verändern.
Besonders sorgfältig muss ein Ablauf geprüft werden, wenn beide Systeme Bestände verändern. Eine blinde gegenseitige Überschreibung kann neue Verkäufe oder Reservierungen verlieren. Häufig ist ein klar führendes System mit abgestimmten Ereignissen verständlicher als zwei gleichberechtigte Bestandsquellen.
Hypothetisches Beispiel: Ein abgegrenzter Sortimentsbereich
Ein Shop möchte zunächst Bestand und Preis einer Produktgruppe übernehmen. Beschreibungen und Bilder bleiben in WooCommerce. Der Pilot arbeitet mit eindeutig zugeordneten Artikeln und einigen bewusst gewählten Varianten. Preisabweichungen und unbekannte Artikelnummern werden zur Prüfung zurückgehalten.
Dieser Umfang ist ein mögliches Einstiegskonzept, keine behauptete Referenz. Bei vorhandenen API-Zugängen, Beispieldaten und klaren Regeln lässt sich eine erste Verbindung als Prototyp zügig erproben. Vollständiges Sortiment, Sonderpreise, mehrere Lager oder eine Datenmigration werden danach separat eingeplant.
Fehlerwege und Verantwortung gehören zur Übergabe
Testen Sie einen ungültigen Schlüssel, eine unbekannte Produktkennung, ein nicht erreichbares Zielsystem und die erneute Zustellung desselben Ereignisses. Nicht jeder Fehler sollte beliebig oft wiederholt werden: Eine fehlende Berechtigung braucht eine andere Reaktion als eine kurzfristige Unterbrechung. Nach einem unklaren Schreibversuch muss zuerst geprüft werden, ob die Änderung bereits angekommen ist.
Ich verbinde bei PHIT.ONL WordPress und WooCommerce mit Ihren Geschäftsprozessen. Nennen Sie Warenwirtschaft, Datenfelder und gewünschten Ablauf – wir grenzen eine verlässliche erste Integration ab.




