Produktdaten in einem Magento-Shop entstehen selten in Magento selbst. Sie stammen aus einem ERP-System, aus Lieferantentabellen oder aus Ordnern mit Bildern, die jemand manuell aktualisiert. Ein PIM-System verbindet diese Quellen mit dem Shop, sodass der Katalog eine einzige verlässliche Datenquelle widerspiegelt. Diese Verbindung ist das, was als Magento PIM Integration bezeichnet wird.
Die Arbeit dreht sich weniger um die API als vielmehr um Datenmodellierung. Ein Connector kopiert gerne alles, was das PIM sendet. Deshalb konzentriert sich die eigentliche Arbeit darauf, festzulegen, welches System wofür verantwortlich ist, Felder auf Magento-Struktur abzubilden und die Synchronisation für große Katalogvolumen stabil zu halten. Hier erfahren Sie, wie das System funktioniert und wo es typischerweise Probleme gibt.
Was eine Magento PIM Integration verbindet
Das PIM speichert Produktinhalte und reichert sie an. Magento zeigt sie an und verkauft sie. Die Integration bewegt Daten zwischen den beiden Systemen – entweder nach Plan oder in annähernder Echtzeit.
Die Richtung hängt von Ihrem Setup ab. Die meisten Teams übertragen Daten vom PIM zu Magento, da das PIM das Mastersystem ist. Einige führen eine bidirektionale Synchronisation durch, sodass Daten aus Magento, wie Bestellungen und Kundendatensätze, in die andere Richtung fließen.
Klären Sie eine Sache, bevor Sie etwas verbinden: Entscheiden Sie, welches System für jedes Feld verantwortlich ist. Wenn sowohl das ERP als auch das PIM den Besitz über den Preis beanspruchen, gewinnt der letzte Schreibvorgang und Sie erhalten Werte, die ständig wechseln.
Welche Daten werden synchronisiert
Eine typische Magento PIM Integration hält die folgenden Daten synchron:
- Produkte, einschließlich einfacher Produkte und konfigurierbarer Produkte mit ihren Varianten
- Attribute und ihre Werte (Spezifikationen, Materialien, Abmessungen, Marketingtexte)
- Attribute-Sets, die Attribute für jede Produktfamilie gruppieren
- Kategorien und Kategoriezuordnungen
- Preise, einschließlich Staffelpreisen oder kundengruppen-spezifischen Preisen, falls verwendet
- Bestandsmengen und Verfügbarkeitsstatus
- Bilder und andere digitale Assets
- Sortierreihenfolge, wie Produkte innerhalb einer Kategorie oder Attribute innerhalb eines Produkts
Bestellungs- und Kundendaten können ebenfalls synchronisiert werden, meist aber als Add-on statt als Standard. Bei AtroCore beispielsweise gehören Produkt-, Preis-, Bestands-, Kategorien- und Bildsynchronisation zum Basispaket, während Kunden- und Bestellsynchronisation optionale Extras sind.
Wie eine Magento PIM Integration läuft
Magento REST API Keine Dateiablagerungen, keine manuellen Importe. Ein Connector liest aus dem PIM, ordnet die Felder Magentos Struktur zu und schreibt über die API. Einige Teams verwenden für große einmalige Lasten noch immer CSV- oder XML-Batch-Dateien. Middleware oder eine iPaaS sitzt in der Mitte, wenn mehrere Systeme gleichzeitig miteinander kommunizieren müssen.
Die zeitliche Planung spaltet sich in zwei Muster. Echtzeitsynchronisation überträgt eine Änderung in dem Moment, in dem sie stattfindet – ideal für Preise und Bestände. Geplante Synchronisation läuft stündlich oder nächtlich für umfangreichere Inhalte wie Beschreibungen und Bilder. Ein fähiger Connector ermöglicht es Ihnen, beide zu kombinieren, jeweils für einzelne Feeds.
AtroCore's PIM Magento Integration ist Feed-basiert. Jeder Datentyp ist ein eigener Feed mit eigenem Zeitplan, und Feeds können gruppiert werden, sodass zusammenhängende Daten zusammen ankommen. Diese Gruppierung verhindert, dass ein Produkt und seine Bilder zeitlich versetzt ankommen.
Volumen ist der Punkt, an dem nachlässig gestaltete Integrationen zusammenbrechen. Das Schreiben jedes Produkts als separaten API-Aufruf bedeutet einen vollständigen Magento-Bootstrap pro Datensatz. Das Auslösen einer Neuindexierung nach jedem Schreiben verschärft das Problem zusätzlich. Ein Entwickler-Benchmark zum Synchronisieren von 5.000 Produkten als 5.000 separate Aufrufe dauerte etwa 17 Minuten, während die gleiche Last durch einige Dutzend Bulk-Anfragen nur Sekunden dauerte. Nehmen Sie diese Zahlen als Illustration, nicht als Garantie. Ihre Ergebnisse hängen von Hardware, Katalogkomplexität und davon ab, wie viele Attributverknüpfungen jedes Produkt benötigt. Die Richtung bleibt jedoch konsistent: Batchen Sie die Schreibvorgänge und schalten Sie betroffene Indexer während einer großen Last in den geplanten Modus, damit Magento am Ende einmal statt tausendmal neuindexiert. In dem gleichen Benchmark war diese Verschiebung ein großer Teil des Leistungsgewinns. Die eine unbedingte Voraussetzung ist, dass die Message-Queue-Consumer hinter Bulk-Operationen laufen müssen, sonst meldet die API Erfolg, während tatsächlich nichts verarbeitet wird.
Was Magento von anderen Plattformen unterscheidet
Magento speichert Produkte nicht so wie die meisten Plattformen. Es verwendet ein Entity-Attribute-Value-Modell, bei dem jeder Attributwert in einer eigenen Zeile lebt, statt in einer festen Spalte. Dieses Design ermöglicht es einem Katalog, tausende von Attributen über sehr unterschiedliche Produkttypen hinweg zu tragen, ohne das Datenbankschema zu ändern. Es bedeutet aber auch, dass ein Connector Attributcodes, Eingabetypen und Geltungsbereich verstehen muss, nicht nur Feldbezeichnungen.
Attribute-Sets fügen eine weitere Ebene hinzu. Jedes Produkt gehört zu einem Attribute-Set, das definiert, welche Felder es hat. Ein PIM, das Magento mit Daten versorgt, muss seine eigenen Produktfamilien dem richtigen Set zuordnen, sonst landen Attribute nirgendwo.
Store-Views sind der Punkt, an dem Magento für internationale Anbieter glänzt. Die Plattform bietet native Multi-Store- und Multi-Sprachen-Unterstützung, und ein Attribut kann global sein, auf eine Website begrenzt oder auf eine einzelne Store-View begrenzt. Übersetzungen und lokale Werte werden auf Store-View-Ebene angebunden. Dies gibt echte Kontrolle und erzeugt echte Mapping-Arbeit. Gehostete Plattformen handhaben Lokalisierung normalerweise einfacher und überlassen Ihnen weniger zum Konfigurieren.
Produkttypen haben ihre eigenen Regeln. Ein konfigurierbares Produkt ist ein übergeordneter Datensatz plus untergeordnete einfache Produkte, verbunden durch konfigurierbare Attribute, die vom Typ Dropdown mit globalem Geltungsbereich sein müssen. Bündel- und Gruppenprodukte verhalten sich anders. Ein Connector, der nur einfache Produkte kennt, wird einen konfigurierbaren Katalog beschädigen.
Dann gibt es noch den Server. Magento Open Source läuft auf Infrastruktur, die Sie kontrollieren. PHP-Version, RAM und Queue-Worker beeinflussen alle, wie schnell die Synchronisation läuft. Massenlasten von mehreren tausend Produkten benötigen echten RAM für PHP und tatsächlich laufende Async-Consumer. Auf einer gehosteten Plattform wie Shopify denken Sie nie über so etwas nach. Der Kompromiss besteht in strengeren API-Rate-Limits und viel weniger Kontrolle über das Datenmodell.
In der Praxis gibt Ihnen Magento mehr Struktur und mehr Kontrolle. Die Integration erbt beides.
Wo Integrationen schiefgehen
Hersteller kommen mit der gleichen Ausgangssituation zu uns, viel häufiger als nicht. Spezifikationen liegen im ERP, Marketingtexte sitzen in Word-Dateien, Bilder sind auf einem gemeinsamen Laufwerk und Magento speichert eine vierte Kopie, die immer ein wenig veraltet ist. Niemand vertraut vollständig einer einzelnen Quelle. Bevor diese Unternehmen ein PIM hatten, bedeutete jede Produktaktualisierung, dass jemand aus dem ERP exportierte, es in Excel bereinigt und manuell importierte – was langsam ist und leicht schiefgehen kann. Ein PIM behebt den Workflow, aber nur, wenn die zugrunde liegenden Daten in Ordnung sind.
Ein Connector kopiert schlechte Daten genauso gewissenhaft wie gute Daten. Bereinigen Sie die Daten zuerst, dann verbinden Sie.
Attribute-Mapping ist normalerweise die erste Hürde. Magento-Attributcodes sind feste Strings. Ein Feld namens „colour" im PIM und „color" in Magento verbinden sich nicht, bis jemand sie mapped. Multiplizieren Sie das mit ein paar hundert Attributen und Mapping wird der Großteil des Projekts.
Ein praktisches Beispiel zeigt, wie solch ein Problem gelöst wird. Angenommen, das PIM speichert die Farbe als Freitextfeld, colour, mit dem Wert „Navy Blue". Magento speichert die Farbe als Select-Attribut, color, mit einer festen Optionsliste, wo „Navy" die Options-ID 51 trägt. Der erste Feed läuft und der Connector überträgt den Rohstring. Magento passt „Navy Blue" zu keiner Option, also lädt das Produkt ohne gesetzte Farbe. Im Shop fehlt das Farbmuster und da color das Attribut ist, das das konfigurierbare Produkt steuert, erscheint der Größen- und Farbenwähler nie. Die API gab derweil eine saubere Erfolgsmeldung aus, also sah auf der Connector-Seite nichts beschädigt aus.
Die Lösung läuft in vier Schritten. Erstens: Map colour im PIM zu color in Magento, damit die Felder überhaupt verbunden sind. Zweitens: Übersetz den Wert – normalisieren Sie „Navy Blue" zu „Navy" und lösen Sie ihn zu Options-ID 51, oder konfigurieren Sie den Connector so, dass er die Option automatisch erstellt, wenn er einen Wert findet, den Magento nicht kennt. Drittens: Bestätigen Sie, dass color auf Dropdown-Eingabetyp mit globalem Geltungsbereich gesetzt ist, da ein konfigurierbares Attribut beides sein muss. Viertens: Führen Sie den Feed erneut aus und überprüfen Sie ein Variantenprodukt: Das untergeordnete Produkt trägt nun Option 51, das übergeordnete Produkt zeigt den Wähler und das Farbmuster wird gerendert. Dieses einzelne Attribut erforderte Mapping, Werttransformation und eine Geltungsbereichsprüfung, um korrekt zu landen. Der größte Teil eines Projekts besteht darin, dieses Muster über die Attribute zu wiederholen, die tatsächlich wichtig sind.
Konfigurierbare Produkte sind die zweite Hürde. Wenn das PIM Varianten nicht so modelliert, wie Magento es erwartet, spalten sich übergeordnete und untergeordnete Datensätze auf, und die Storefront zeigt lose einfache Produkte statt eines Größen- und Farbwählers.
Store-View-Geltungsbereich erschwert Lokalisierung. Schieben Sie eine übersetzte Beschreibung, ohne den richtigen Geltungsbereich zu setzen, und Sie überschreiben den Standardwert für jede Sprache gleichzeitig.
Durchsatz und Indexierung kommen als nächstes. Schreiben Sie Produkte einzeln und lösen Sie eine Neuindexierung bei jedem aus, und der Shop verlangsamt sich. Bulk-Endpoints und geplante Indexierung lösen das, solange die Queue-Consumer laufen. Stille Queues sind ein klassischer Fehler: Die API gibt Erfolg zurück und die Produkte erscheinen nie.
Bidirektionale Synchronisation erhöht das Konfliktrisiko. Wenn beide Systeme das gleiche Feld bearbeiten können, benötigen Sie einen klaren Besitzer oder eine Zeitstempel-Regel. Ohne eine solche Regel springen Werte zwischen den zwei Systemen hin und her.
Ein PIM für Magento wählen
Es gibt kein einziges bestes PIM für Magento. Die Eignung hängt von Katalogsgröße, wie viel Sie selbst hosten und vom Budget ab. Einige, die gut mit Magento verbunden sind:
- AtroPIM (AtroCore): Open-Source-PIM mit konfigurierbarer, Feed-basierter Magento PIM Integration, die Produkte, digitale Assets und benutzerdefinierte Entitäten verarbeitet. Geeignet für Teams, die Kontrolle und Flexibilität ohne Enterprise-Lizenzierung wünschen.
- Akeneo: Weit verbreitet, stark bei Vollständigkeitsregeln und Datenverwaltung, mit reifem Magento-Connector. Die Kosten steigen in den Enterprise-Tiers.
- Pimcore: Vereint PIM und DAM in einem Open-Source-Stack, nützlich, wenn Sie Produktdaten und Medien zusammen verwalten möchten.
- Sales Layer: Cloud-PIM gebaut um Plug-and-Play-Connectoren und schnelles Setup.
Passen Sie das Tool zum Katalog, nicht zum Prospekt. Ein 500-SKU-Einzelshop und ein 50.000-SKU-mehrsprachiger Hersteller haben kaum etwas gemeinsam, was sie von einem Connector benötigen.
Eine kurze Checkliste vor dem Start
- Bestimmen Sie vor der Verbindung das Mastersystem für jedes Feld
- Bereinigen und deduplizieren Sie die Produktdaten im PIM zuerst
- Mappen Sie jeden Attributcode und jeden Attribute-Set, nicht nur die offensichtlichen
- Bestätigen Sie, dass der Connector Ihre Produkttypen handhabt, einschließlich konfigurierbarer, Bündel- und Gruppenprodukte
- Setzen Sie den Attribut-Geltungsbereich für jede Store-View und Sprache korrekt
- Verwenden Sie Bulk-Endpoints und geplante Indexierung für große Lasten
- Prüfen Sie, dass Queue-Consumer laufen, und überwachen Sie den Status jedes Feeds
Magento PIM Integration ist größtenteils eine Datenmodellierungsübung, die sich als API verkleidet. Machen Sie Besitz und Mapping richtig, dimensionieren Sie die Infrastruktur für Ihren Katalog, und die Synchronisation selbst wird zu einer routinemäßigen Hintergrundaufgabe.