Alles Wichtige zum BMEcat
Praxisleitfaden zur Erstellung, Validierung und Optimierung von BMEcat-Katalogen für Lieferanten auf simple system
Inhaltsverzeichnis
Was ist ein BMEcat?
BMEcat ist ein standardisiertes, XML-basiertes Austauschformat für elektronische Produktkataloge. Der Name steht für Bundesverband Materialwirtschaft, Einkauf und Logistik e.V. – catalog. Der Standard wurde 1999 vom BME in Zusammenarbeit mit führenden Unternehmen und Forschungseinrichtungen entwickelt und ist das dominierende Katalogaustauschformat im deutschsprachigen und europäischen B2B-eCommerce.
Ein BMEcat ermöglicht den automatisierten Austausch von Produktdaten zwischen Lieferanten und einkaufenden Unternehmen bzw. Beschaffungsplattformen wie simple system. Der Katalog enthält strukturierte Informationen zu Artikeln – von Artikelnummern und Beschreibungen über Preise und Bestelleinheiten bis hin zu Bildern und Datenblättern.
Warum BMEcat?
Im Gegensatz zu proprietären Formaten (z. B. Excel-Listen) bietet BMEcat eine einheitliche Struktur, die von allen Beteiligten automatisiert verarbeitet werden kann. Das bedeutet weniger manuelle Fehler, schnellere Katalogaktualisierungen und eine höhere Datenqualität. Für simple system ist BMEcat das einzige akzeptierte Format für den Katalog-Upload.
Grundstruktur eines BMEcat
- HEADER - Enthält Metadaten zum Katalog: Katalog-ID, Sprache, Währung, Lieferanteninformationen, Gültigkeitszeitraum (wird von simple system nicht genutzt).
- TRANSAKTIONSBEREICH - Enthält die eigentlichen Produktdaten und Warengruppen. Es gibt drei Transaktionstypen, welche sich in der Verarbeitung auf simple system nicht unterscheiden:
-
T_NEW_CATALOG – Überträgt einen vollständig neuen Katalog
-
T_UPDATE_PRODUCTS – Aktualisiert einzelne Produkte in einem bestehenden Katalog
-
T_UPDATE_PRICES – Aktualisiert ausschließlich Preise
-
Für simple system wird in der Regel "T_NEW_CATALOG" verwendet, da bei jedem Upload der komplette Katalog neu übertragen wird.
Unterschiede zwischen BMEcat Version 1.2 und 2005
Der auffälligste Unterschied betrifft die Benennung der Elemente. In Version 1.2 werden Produkte als „Article" bezeichnet, in Version 2005 als „Product":
| Konzept | BMEcat 1.2 | BMEcat 2005 |
|---|---|---|
| Artikelnummer des Lieferanten | SUPPLIER_AID | SUPPLIER_PID |
| Kundenartikelnummer | BUYER_AID | BUYER_PID |
| Herstellerartikelnummer | MANUFACTURER_AID | MANUFACTURER_PID |
| Artikeldetails | ARTICLE_DETAILS | PRODUCT_DETAILS |
| Artikelmerkmale | ARTICLE_FEATURES | PRODUCT_FEATURES |
| Bestelldetails | ARTICLE_ORDER_DETAILS | PRODUCT_ORDER_DETAILS |
| Preisdetails | ARTICLE_PRICE_DETAILS | PRODUCT_PRICE_DETAILS |
| Artikelpreis | ARTICLE_PRICE | PRODUCT_PRICE |
Funktionale Unterschiede
BMEcat 1.2 ist die ältere, schlankere Version. Sie eignet sich gut für einfache Produktkataloge mit Standardpreisen und ist abwärtskompatibel zu BMEcat 1.01. Die meisten simple-system-Lieferanten nutzen diese Version erfolgreich.
BMEcat 2005 bietet darüber hinaus erweiterte Möglichkeiten: Unterstützung konfigurierbarer Produkte, dynamische Preismodelle (Preisformeln, Preisfaktoren), erweiterte Logistikinformationen, verbesserte Mehrsprachigkeit und Internationalisierung sowie Unterstützung von Multilieferantenkatalogen.
Für die meisten Lieferanten auf simple system reicht BMEcat 1.2 vollkommen aus. Die Pflichtfelder und unterstützten Felder sind in beiden Versionen nahezu identisch – simple system liest dieselben Informationen aus. Version 2005 empfiehlt sich, wenn erweiterte Preismodelle oder konfigurierbare Produkte benötigt werden.
Wie kann ein BMEcat erstellt werden?
Es gibt mehrere Wege, einen BMEcat-Katalog zu erstellen:
- PIM-Systeme (Product Information Management)
Professionelle PIM-Systeme (z. B. Akeneo, Contentserv, mediacockpit, Stibo STEP) bieten integrierte BMEcat-Exportfunktionen. Diese Systeme eignen sich für Unternehmen mit großen Produktsortimenten und regelmäßigen Katalogaktualisierungen. - ERP-Systeme (Enterprise Resource Planning)
Viele ERP-Systeme (SAP, Microsoft Dynamics, etc.) verfügen über Module oder Erweiterungen für den BMEcat-Export. Prüfen Sie, ob Ihr ERP diese Funktionalität bietet. - Kostenpflichtiger Katalogservice von simple system
Wenn Sie nicht in der Lage sind, selbst einen BMEcat zu erstellen, bietet simple system einen kostenpflichtigen Katalogservice an. simple system kann Sie auch mit Servicepartnern verbinden, die die Katalogerstellung für Sie übernehmen. Kontaktieren Sie dafür das Vendor Management unter vendormanagement@simplesystem.com. - Sepia BMEcat Converter (Drittanbieter)
Der Sepia BMEcat Converter ist ein kostenloses Open-Source-Tool, das die Erstellung eines BMEcat aus einer Excel-Datei ermöglicht. Er wird von vielen simple-system-Lieferanten genutzt und ist das empfohlene Tool für Lieferanten ohne eigenes PIM-System.- Funktionsweise: Sie pflegen Ihre Produktdaten in einer Excel-Vorlage und konvertieren diese mit Hilfe des Converters anschließend in eine gültige BMEcat-XML-Datei.
- Voraussetzungen: Microsoft Excel (ab Version 2000) oder LibreOffice/OpenOffice.
- Download und Installation: Der Converter ist verfügbar unter sepia.de.
- Spezialisierte Katalogsoftware
Anbieter wie nexoma, e-proCAT oder Pro3Con bieten spezialisierte Software für die Erstellung und Validierung von BMEcat-Katalogen an.
Welche Felder werden für simple system ausgelesen?
Die folgende Übersicht zeigt alle von simple system unterstützten Felder, aufgeteilt nach Datengruppen. Pflichtfelder sind mit "Ja" gekennzeichnet.
Artikelstammdaten
| Feld (1.2/2005) | Pflicht | Datentyp | Max. Zeichen | Beschreibung |
|---|---|---|---|---|
|
SUPPLIER_AID /SUPPLIER_PID |
Ja | STRING | 32 | Ihre Artikelnummer (alphanumerisch). Doppelte Nummern: nur der erste Artikel wird importiert. |
| BUYER_AID/BUYER_PID | Nein | STRING | 32 | Kundenartikelnummer |
|
MANUFACTURER_AID /_PID |
Nein | STRING | 32 | Herstellerartikelnummer |
| MANUFACTURER_NAME | Ja | STRING | 40 | Name des Herstellers |
| EAN | Nein | STRING | 13 | EAN-Nummer |
| DESCRIPTION_SHORT | Ja | STRING | 130 | Artikelname |
| DESCRIPTION_LONG | Nein | STRING | 64.000 | Ausführliche Artikelbeschreibung |
| DELIVERY_TIME | Ja | NUMBER | – | Standardlieferzeit in Tagen |
<ARTICLE_DETAILS>
<SUPPLIER_AID>123456</SUPPLIER_AID>
<BUYER_AID>ABC-789</BUYER_AID>
<MANUFACTURER_AID>M-001122</MANUFACTURER_AID>
<MANUFACTURER_NAME>Beispiel Hersteller GmbH</MANUFACTURER_NAME>
<EAN>4006381333931</EAN>
<DESCRIPTION_SHORT>Name des Artikels</DESCRIPTION_SHORT>
<DESCRIPTION_LONG>Ausführliche und lange Artikelbeschreibung mit allen relevanten Details.</DESCRIPTION_LONG>
<DELIVERY_TIME>3</DELIVERY_TIME>
</ARTICLE_DETAILS>
Klassifikation
| Feld (1.2 / 2005) | Pflicht | Beschreibung |
|---|---|---|
| REFERENCE_FEATURE_SYSTEM_NAME | Ja | Version des ECLASS‑Systems (z. B. ECLASS‑5.1). Für simple system können Sie eine Version Ihrer Wahl nutzen. Schreibweise: ECLASS‑x.y |
| REFERENCE_FEATURE_GROUP_ID | Ja | 8‑stellige ECLASS‑Klasse für das Produkt (z. B. 40010101 oder 40-01-01-01) |
| KEYWORD | Nein | Suchbegriffe (max. 50 Zeichen pro Keyword, mehrere möglich) |
<ARTICLE_FEATURES>
<REFERENCE_FEATURE_SYSTEM_NAME>ECLASS-5.1</REFERENCE_FEATURE_SYSTEM_NAME>
<REFERENCE_FEATURE_GROUP_ID>40010101</REFERENCE_FEATURE_GROUP_ID>
<!-- optional mehrere KEYWORD-Einträge -->
<KEYWORD>Schraube</KEYWORD>
<KEYWORD>Edelstahl</KEYWORD>
<KEYWORD>M4x20</KEYWORD>
</ARTICLE_FEATURES>
Bestellinformationen
| Feld (1.2 / 2005) | Pflicht | Datentyp | Beschreibung |
|---|---|---|---|
| QUANTITY_MIN | Nein (Default: 1) | INTEGER | Mindestbestellmenge. Darf nicht 0 sein oder kleiner/gleich QUANTITY_INTERVAL (Artikel wird nicht importiert). Es gibt eine Warnung, wenn der Wert nicht ein Vielfaches von QUANTITY_INTERVAL ist. |
| QUANTITY_INTERVAL | Nein (Default: 1) | INTEGER | Mengenschritt (Bestellschrittweite). |
| ORDER_UNIT | Ja | PUNIT | Bestelleinheit (z. B. PCE). Max. 3 Zeichen; muss einer internationalen Mengeneinheit entsprechen. Unterstützte Mengeneinheiten |
| NO_CU_PER_OU | Nein (Default: 1) | NUMBER | Anzahl der Inhaltseinheiten pro Bestelleinheit. Beispiel: Bierkasten mit 24 Flaschen = 24. |
| CONTENT_UNIT | Nein (Default: PCE) | PUNIT | Maßeinheit der Inhaltseinheiten. |
<ARTICLE_ORDER_DETAILS>
<QUANTITY_MIN>1</QUANTITY_MIN>
<QUANTITY_INTERVAL>1</QUANTITY_INTERVAL>
<ORDER_UNIT>PCE</ORDER_UNIT>
<NO_CU_PER_OU>24</NO_CU_PER_OU>
<CONTENT_UNIT>PCE</CONTENT_UNIT>
</ARTICLE_ORDER_DETAILS>
Preisinformationen
| Feld (1.2 / 2005) | Pflicht | Datentyp | Beschreibung |
|---|---|---|---|
| PRICE_TYPE | Ja | – | Erlaubte Werte: net_list, net_customer. Wird als Attribut angegeben: <ARTICLE_PRICE price_type="net_list"> |
| PRICE_AMOUNT | Ja | NUMBER | Artikelpreis. Max. 2 Dezimalstellen, Dezimaltrenner: Punkt. Keine Tausendertrennzeichen. Artikel mit 0 € werden nicht importiert. |
| LOWER_BOUND | Nein | NUMBER | Untere Mengengrenze für Staffelpreise. Für Staffelpreise: weitere Zeile mit gleicher SUPPLIER_AID und anderem Preis. |
| PRICE_QUANTITY | Nein | NUMBER | Menge, für die der Preis gilt. Muss Vielfaches oder Bruchteil der Bestelleinheit sein. |
| PRICE_CURRENCY | Nein (Default: EUR) | CURRENCIES | Währung, falls nicht gefüllt: EUR. |
<ARTICLE_PRICE_DETAILS>
<!-- Standardpreis -->
<ARTICLE_PRICE price_type="net_list">
<PRICE_AMOUNT>12.50</PRICE_AMOUNT>
<PRICE_CURRENCY>EUR</PRICE_CURRENCY>
<PRICE_QUANTITY>1</PRICE_QUANTITY>
</ARTICLE_PRICE>
<!-- Staffelpreis Beispiel -->
<!-- Standardpreis (Staffel 1 ab Menge 1) -->
<ARTICLE_PRICE price_type="net_list">
<LOWER_BOUND>1</LOWER_BOUND>
<PRICE_AMOUNT>12.50</PRICE_AMOUNT>
<PRICE_CURRENCY>EUR</PRICE_CURRENCY>
<PRICE_QUANTITY>1</PRICE_QUANTITY>
</ARTICLE_PRICE>
<!-- Staffelpreis 2 (ab 10 Stück) -->
<ARTICLE_PRICE price_type="net_list">
<LOWER_BOUND>10</LOWER_BOUND>
<PRICE_AMOUNT>11.00</PRICE_AMOUNT>
<PRICE_CURRENCY>EUR</PRICE_CURRENCY>
<PRICE_QUANTITY>1</PRICE_QUANTITY>
</ARTICLE_PRICE>
</ARTICLE_PRICE_DETAILS>
Features/Merkmale (Produkteigenschaften)
Features werden unter anderem für die Filterfunktion auf der Plattform genutzt.
| Feld (1.2 / 2005) | Pflicht | Max. Zeichen | Beschreibung |
|---|---|---|---|
| FNAME | Nein | 60 | Name des Merkmals (eindeutig innerhalb des Artikels) |
| FVALUE | Nein | 60 | Wert des Merkmals (Einfach- oder Mehrfachwert) |
| FUNIT | Nein | 20 | Maßeinheit des Merkmals |
<ARTICLE_FEATURES>
<!-- Merkmal 1 -->
<FEATURE>
<FNAME>Länge</FNAME>
<FVALUE>20</FVALUE>
<FUNIT>mm</FUNIT>
</FEATURE>
<!-- Merkmal 2 -->
<FEATURE>
<FNAME>Material</FNAME>
<FVALUE>Edelstahl</FVALUE>
</FEATURE>
<!-- Merkmal 3 (Beispiel Mehrfachwert) -->
<FEATURE>
<FNAME>Farbe</FNAME>
<FVALUE>Rot</FVALUE>
<FVALUE>Schwarz</FVALUE>
</FEATURE>
</ARTICLE_FEATURES>
Medien / MIME-Daten
| Feld (1.2 / 2005) | Pflicht | Beschreibung |
|---|---|---|
| MIME_SOURCE | Ja (mind. 1 Bild pro Artikel empfohlen) | Pfad und Dateiname oder URL zum Medium. Der Dateipfad muss mit dem Bildverzeichnis im Zielsystem übereinstimmen. |
| MIME_TYPE | Nein | Medientyp, z. B. application/pdf, image/jpeg, image/gif, text/html, text/plain, url. |
| MIME_PURPOSE | Nein | Verwendungszweck: normal, data_sheet, safety_data_sheet, others, detail, thumbnail, icon, logo. |
| MIME_DESCRIPTION | Nein | Beschreibung des Mediums (z. B. „Produktbild“, „Datenblatt“, „Sicherheitsdatenblatt“). |
<MIME_INFO>
<!-- Empfohlenes Hauptbild (als URL) -->
<MIME>
<MIME_SOURCE>https://example.com/images/produkt_123_main.jpg</MIME_SOURCE>
<MIME_TYPE>image/jpeg</MIME_TYPE>
<MIME_PURPOSE>normal</MIME_PURPOSE>
<MIME_DESCRIPTION>Produktbild</MIME_DESCRIPTION>
</MIME>
<!-- Detailbild lokal (optional) -->
<MIME>
<MIME_SOURCE>images/produkt_123_detail.jpg</MIME_SOURCE>
<MIME_TYPE>image/jpeg</MIME_TYPE>
<MIME_PURPOSE>detail</MIME_PURPOSE>
<MIME_DESCRIPTION>Detailaufnahme</MIME_DESCRIPTION>
</MIME>
<!-- Datenblatt als URL -->
<MIME>
<MIME_SOURCE>https://example.com/docs/produkt_123_datenblatt.pdf</MIME_SOURCE>
<MIME_TYPE>application/pdf</MIME_TYPE>
<MIME_PURPOSE>data_sheet</MIME_PURPOSE>
<MIME_DESCRIPTION>Datenblatt (PDF, Online)</MIME_DESCRIPTION>
</MIME>
</MIME_INFO>
Unterstützte Mengeneinheiten (ORDER_UNIT / CONTENT_UNIT)
simple system unterstützt folgende Einheitencodes:
| Code | Englisch | Deutsch |
|---|---|---|
| PCE | piece | Stück |
| EA | piece | Stück |
| C62 | piece | Stück |
| ST | piece | Stück |
| MTR | meter | Meter |
| KGM | kilogram | Kilogramm |
| BG | bag | Sack |
| BO | bottle | Flasche |
| CT | carton | Karton |
| PA | packet | Paket |
| PK | pack | Pack |
| PR | pair | Paar |
| PU | tray | Tray |
| RL | reel | Rolle |
| RO | roll | Rolle |
| SA | sack | Sack |
| CR | crate | Kiste |
Wird eine nicht unterstützte Einheit verwendet, wird diese übernommen, jedoch ohne Übersetzung angezeigt.
Häufige Fehlerquellen und Lösungen
Allgemeine Fehler
| Fehler | Ursache | Lösung |
|---|---|---|
| Katalog wird abgelehnt | Fehlende Pflichtfelder | Stellen Sie sicher, dass alle Pflichtfelder (SUPPLIER_AID/PID, MANUFACTURER_NAME, DESCRIPTION_SHORT, DELIVERY_TIME, ORDER_UNIT, REFERENCE_FEATURE_SYSTEM_NAME, REFERENCE_FEATURE_GROUP_ID, PRICE_TYPE, PRICE_AMOUNT, mindestens ein MIME_SOURCE) gefüllt sind. |
| XML ist nicht valide | Syntaxfehler im XML | Nutzen Sie einen XML‑Validator oder das Validierungstool von simple system. Häufige Fehler: nicht geschlossene Tags, falsche Verschachtelung, ungültige Sonderzeichen. |
| Artikel werden nicht importiert | Doppelte SUPPLIER_AID/PID | Jede Artikelnummer darf nur einmal vorkommen (Ausnahme: mehrere Preisstaffeln unter derselben Artikelnummer). |
| Fehlende Produktgruppe | Kein ECLASS angegeben | REFERENCE_FEATURE_SYSTEM_NAME und REFERENCE_FEATURE_GROUP_ID sind Pflichtfelder und müssen für jeden Artikel angegeben werden. |
Fehler auf Feldebene
| Feld | Fehlertyp | Beschreibung & Lösung |
|---|---|---|
| SUPPLIER_AID/PID | Zu lang / Duplikat | Max. 32 Zeichen. Bei Duplikaten wird nur der erste Artikel importiert. Stellen Sie eindeutige Artikelnummern sicher. |
| DESCRIPTION_SHORT | Zu lang | Max. 130 Zeichen. Kürzen Sie auf das Wesentliche: Produkttyp, Modell, Farbe, Material. |
| DESCRIPTION_LONG | HTML‑Fehler | Erlaubte Tags: <b>, <i>, <p>, <br>, <u>, <li>, <ul>. Nicht erlaubte Tags werden inkl. Inhalt gelöscht. Nicht geschlossene Tags führen dazu, dass der gesamte Inhalt ignoriert wird. |
| MANUFACTURER_NAME | Zu lang | Max. 40 Zeichen. |
| DELIVERY_TIME | Falsches Format | Muss eine Ganzzahl sein. Keine Buchstaben, keine Kommas. |
| PRICE_AMOUNT | Format-Fehler | Dezimaltrenner: Punkt (13.99). Max. 2 Dezimalstellen. Keine Tausender-Trennzeichen. 0 ist nicht erlaubt. |
| QUANTITY_MIN | Ungültiger Wert | Muss eine Ganzzahl > 0 sein. Keine Kommas oder Tausenderpunkte. Warnung, wenn nicht Vielfaches von QUANTITY_INTERVAL. Wert 0 führt zu Fehler. |
| ORDER_UNIT | Nicht erkannte Einheit | Nutzen Sie gültige Einheiten-Codes (z. B. PCE, EA, MTR …). Max. 3 Zeichen. |
| REFERENCE_FEATURE_SYSTEM_NAME | Falsche Schreibweise | Exakte Schreibweise nötig: ECLASS-x.y (z. B. ECLASS‑5.1). Bindestrich und Punkt sind Pflicht. |
| REFERENCE_FEATURE_GROUP_ID | Falsches Format | Muss 8-stellig sein (z. B. 40010101 oder 40-01-01-01). |
| MIME_SOURCE | Dateiname stimmt nicht überein | Der Dateiname muss exakt dem hochgeladenen Medium entsprechen (inkl. Groß‑/Kleinschreibung). |
| PRICE_TYPE | Falscher Wert | Erlaubt: net_list, net_customer |
| FNAME/FVALUE | Nicht geschlossene Struktur | Merkmale müssen vollständig sein: FNAME + FVALUE, optional FUNIT. Unvollständige FEATURE‑Blöcke werden ignoriert. |
Strukturelle Fehler
-
Zeichenkodierung: BMEcat-Dateien sollten in UTF-8 kodiert sein.
-
MIME_ROOT: Von der Angabe einer MIME_ROOT im Header wird abgeraten. Wenn dennoch verwendet, müssen alle Bildpfade relativ zu diesem Root sein.
-
Staffelpreise: Für Artikel mit Staffelpreisen fügen Sie eine weitere Zeile mit derselben SUPPLIER_AID/PID und dem neuen Preis bei anderem LOWER_BOUND hinzu.
FAQ
Was ist ein BMEcat?
Ein BMEcat ist ein standardisiertes XML-Format für den Austausch von Produktkatalogen im B2B-Bereich und die Grundlage für den Katalog-Upload auf simple system.
Welche BMEcat-Version soll ich verwenden?
Für die meisten Anwendungsfälle reicht BMEcat 1.2 aus. BMEcat 2005 wird nur bei erweiterten Anforderungen benötigt.
Welche Felder sind zwingend erforderlich?
Wichtige Pflichtfelder sind u. a. SUPPLIER_AID, DESCRIPTION_SHORT, MANUFACTURER_NAME, DELIVERY_TIME, ORDER_UNIT, ECLASS sowie Preisangaben.
Warum werden Artikel oder der Katalog nicht importiert?
Häufige Ursachen sind fehlende Pflichtfelder, doppelte Artikelnummern, falsche Preisformate oder ungültige ECLASS-Angaben.
Wie kann ich einen BMEcat erstellen, wenn ich kein System habe?
Sie können Tools wie den Sepia Converter nutzen oder den Katalogservice von simple system in Anspruch nehmen.
Brauchen Sie Hilfe?
Sie haben Fragen zum BMEcat? Unser technischer Support hilft Ihnen gerne weiter.
E-Mail: support@simplesystem.com
Telefon: +49 (0) 89 / 998 2987 00
Telefonische Servicezeiten
Montag–Donnerstag: 08:00–16:00 Uhr
Freitag: 08:00–15:00 Uhr