Ein Fachhändler für Werkstattbedarf führt einen breiten Katalog, und ein Teil davon ist Gefahrgut: Bremsenreiniger in der Sprühdose, Lack auf Lösemittelbasis, Batterien, Klebstoffe, Desinfektionsmittel. Im Warenwirtschaftssystem stehen die Angaben vollständig, weil sie dort für Lieferschein und Beförderungspapier gebraucht werden. Im Shop steht davon nichts. Der Warenkorb rechnet Versandkosten wie bei Schrauben, der Checkout bietet den Luftweg an, und die Sendung fällt am Verladetor auf. Dieser Artikel beschreibt, welche Felder aus dem Sicherheitsdatenblatt und aus dem Gefahrgutstamm in den Shop gehören, wie der Warenkorb Mengen über Positionen hinweg addiert und wo die Zuständigkeit der Schnittstelle endet. Wer ERP und Shop in der Industrie verbindet, entscheidet an dieser Stelle, ob der Onlinekanal versandfähige Aufträge erzeugt oder Klärfälle.
Das Wichtigste in Kürze
- Das Sicherheitsdatenblatt ist die Datenquelle, nicht das Bauchgefühl: Es umfasst 16 Abschnitte, und Abschnitt 14 trägt die Transportangaben (EUR-Lex).
- Abschnitt 14 ist bereits eine fertige Feldliste. Die Unterabschnitte 14.1 bis 14.7 lassen sich eins zu eins auf Artikelfelder im Shop abbilden (EUR-Lex).
- Die UN-Nummer ist eine vierstellige Identifizierungsnummer mit vorangestelltem Kürzel und taugt deshalb als technischer Schlüssel im Artikelstamm (EUR-Lex).
- Der Shop entscheidet nicht über einzelne Positionen, sondern über die Summe: Nettomengen und Bruttomassen werden je Sendung addiert, bevor Versandart und Zuschlag feststehen.
- Ab dem 1. Juli 2026 sind bei Fernabsatzangeboten die Kennzeichnungselemente nach Artikel 17 der CLP-Verordnung beim Angebot deutlich und erkennbar anzugeben (EUR-Lex).
- Die Schnittstelle liefert Daten und Regeln; die gefahrgutrechtliche Beurteilung bleibt beim Unternehmen, das versendet.
Zwei Regelwerke, ein Artikelstamm
Im Sprachgebrauch verschwimmen zwei Dinge, die getrennt geregelt sind. Gefahrstoffrecht beschreibt das Produkt: Einstufung, Kennzeichnung, Verpackung und das Sicherheitsdatenblatt. Gefahrgutrecht beschreibt den Zustand während der Beförderung: UN-Nummer, Versandbezeichnung, Klasse, Verpackungsgruppe. Ein Artikel kann als Gefahrstoff eingestuft sein und trotzdem kein Gefahrgut darstellen, und es gibt Güter, die im Transport streng geregelt sind, ohne im Betrieb als Gefahrstoff aufzufallen. Für die Schnittstelle heißt das: Es sind zwei Feldgruppen mit unterschiedlichen Quellen, unterschiedlichen Pflegezyklen und unterschiedlichen Empfängern im Shop. Wer beides in ein einziges Kennzeichen presst, verliert genau die Information, die der Versand später braucht.
Der praktische Einstieg ist das Sicherheitsdatenblatt, weil es beide Welten in einem Dokument führt und weil es formal festgelegt ist. Anhang II der REACH-Verordnung in der Fassung der Verordnung (EU) 2020/878 schreibt vor, dass das Sicherheitsdatenblatt 16 Abschnitte enthält (EUR-Lex). Diese Struktur ist der Grund, warum sich Gefahrgutdaten überhaupt maschinell übernehmen lassen: Abschnitt 2 trägt die Kennzeichnung, Abschnitt 9 die physikalischen Eigenschaften, Abschnitt 14 die Transportangaben. Wenn Sie eine Warenwirtschaft an den Shop anbinden, ist die Abschnittsnummer der stabilste Anker für das Mapping, den dieses Themenfeld zu bieten hat.
Stammdaten aus dem Datenblatt
UN-Nummer, Versandbezeichnung, Klasse, Verpackungsgruppe und Umweltgefahren stammen aus Abschnitt 14. Sie ändern sich selten, aber sie ändern sich: mit jeder neuen Version des Datenblatts. Die Versionsnummer und das Revisionsdatum gehören deshalb mit in den Produktdaten-Pfad aus dem PIM.
Kennzeichnung nach CLP
Signalwort, Piktogramme, Gefahren- und Sicherheitshinweise gehören zum Produkt und damit auf die Produktseite. Sie stammen aus Abschnitt 2 des Datenblatts und sind für den Kunden die sichtbare Seite der Einstufung, während die Transportfelder im Hintergrund arbeiten.
Mengen je Verkaufseinheit
Nettomenge und Bruttomasse je Verkaufseinheit sind die Rechengrundlage für jede Mengengrenze. Ohne sie kann der Warenkorb nicht summieren, und ohne Summe lässt sich keine Versandart bestimmen. Diese Felder liegen im ERP, nicht im Datenblatt.
Abschnitt 14 ist die fertige Feldliste
Wer eine Feldliste für den Artikelstamm sucht, muss sie nicht erfinden. Anhang II gliedert Abschnitt 14 in die Unterabschnitte 14.1 bis 14.7 und benennt sie einzeln: UN-Nummer oder ID-Nummer, ordnungsgemäße UN-Versandbezeichnung, Transportgefahrenklassen, Verpackungsgruppe, Umweltgefahren, besondere Vorsichtsmaßnahmen für den Verwender und Massengutbeförderung auf dem Seeweg (EUR-Lex). Diese sieben Punkte sind die Zielspalten. Alles Weitere ist Ableitung. Die Übung ist damit dieselbe wie bei jeder anderen Feldzuordnung zwischen ERP und Shop: Quellenfeld benennen, Zielfeld benennen, Wertebereich festlegen, Verhalten bei leerem Wert festlegen.
- 14.1 UN-Nummer – die vierstellige Identifizierungsnummer des Stoffs, Gemischs oder Erzeugnisses mit vorangestelltem Kürzel (EUR-Lex). Im Shop ein Textfeld mit fester Länge, kein Zahlenfeld: die führende Null in UN 0333 überlebt eine numerische Spalte nicht.
- 14.2 Ordnungsgemäße Versandbezeichnung – die amtliche Benennung aus dem Verzeichnis der gefährlichen Güter, nicht der Marketingname des Artikels. Sie steht später im Beförderungspapier und gehört deshalb unverändert übernommen.
- 14.3 Transportgefahrenklassen – anzugeben sind die Klassen und die Nebengefahren, die dem Stoff auf Grundlage der ausgehenden Hauptgefahr zugeordnet wurden (EUR-Lex). Im Datenmodell also zwei Felder, nicht eines.
- 14.4 Verpackungsgruppe – die Nummer wird bestimmten Stoffen je nach ihrer Gefährlichkeit zugewiesen (EUR-Lex). Sie ist optional, weil sie nicht für jede Klasse vergeben wird; ein leeres Feld ist hier ein gültiger Wert und kein Pflegefehler.
- 14.5 Umweltgefahren – ein Kennzeichen, das im Seeverkehr über die Bezeichnung als Meeresschadstoff mitentscheidet und damit über die zulässige Versandart.
- 14.6 Besondere Vorsichtsmaßnahmen – Freitext aus dem Datenblatt. Er gehört in die Kommissionierung und in den Lieferschein, nicht auf die Produktseite.
- 14.7 Massengutbeförderung auf dem Seeweg – für Stückgut im Onlinehandel in der Regel ohne Belang, im Datenmodell aber vorzusehen, damit die Übernahme des Datenblatts vollständig bleibt.
Auffällig ist, was in dieser Liste fehlt: die Menge. Abschnitt 14 beschreibt die Eigenschaft des Stoffs, nicht die Größe der Sendung. Die Nettomenge je Verkaufseinheit, die Bruttomasse je Versandstück und die Anzahl der Versandstücke stehen im Artikelstamm des ERP, und ohne diese drei Werte bleibt jede Gefahrgutlogik im Shop eine Anzeige ohne Rechenweg. Es lohnt sich, sie im selben Feldblock zu führen wie die Transportangaben, damit die Schnittstelle sie in einem Zug übergibt.
Feldnamen einmal festlegen und durchhalten
hazard.un_number, hazard.transport_class, hazard.packing_group, hazard.net_quantity_per_unit. Wichtig ist weniger die Schreibweise als die Verabredung, dass jedes Feld genau einen Ursprung hat. Führt der Shop einen eigenen Haken Gefahrgut ja/nein neben den übernommenen Feldern, entstehen zwei Wahrheiten, die auseinanderlaufen. Der Haken darf abgeleitet sein, aber er darf nicht gepflegt werden. In der Middleware ist das eine Regel von drei Zeilen, im Shop-Backend eine dauerhafte Fehlerquelle.Was der Shop aus den Feldern baut
Die Felder sind kein Selbstzweck. Sie steuern vier Entscheidungen, die der Shop treffen muss, bevor ein Auftrag entsteht: welche Versandarten angeboten werden, welcher Zuschlag greift, in welche Länder geliefert wird und ob eine Position mit einer anderen im selben Karton reisen darf. Jede dieser Entscheidungen hat ein Fehlerbild, wenn das zugrunde liegende Feld leer ist, und jedes dieser Fehlerbilder tritt erfahrungsgemäß erst im Versand auf, also spät. Die Anbindung an die Versand- und Logistik-Schnittstellen übernimmt die Werte dann unverändert, weshalb ein Pflegefehler im Artikelstamm bis auf das Beförderungspapier durchschlägt.
| Feld | Wirkung im Shop | Fehlerbild, wenn es fehlt |
|---|---|---|
| UN-Nummer und Klasse | Filtert die angebotenen Versandarten und markiert die Position im Warenkorb | Der Kunde wählt eine Versandart, die für die Sendung nicht in Betracht kommt |
| Verpackungsgruppe | Beeinflusst Verpackungsvorgabe und Zusammenpackverbote | Zwei Positionen landen im selben Karton, die getrennt gehören |
| Nettomenge je Einheit | Grundlage für die Summenbildung über den Warenkorb | Die Freistellung für begrenzte Mengen wird geschätzt statt gerechnet |
| Bruttomasse je Versandstück | Bestimmt Zuschlag und Grenzwertprüfung je Sendung | Der Zuschlag fehlt in der Kalkulation und wird nachträglich berechnet |
| Umweltgefahren | Sperrt oder erlaubt den Seeweg und Inselziele | Eine Sendung erreicht das Zielgebiet nicht und läuft zurück |
| Version des Datenblatts | Steuert, welches Dokument der Kunde herunterlädt | Der Kunde erhält eine überholte Fassung und meldet sich beim Vertrieb |
Die letzte Zeile wird gern übersehen. Das Sicherheitsdatenblatt ist ein versioniertes Dokument, und die Version gehört an den Artikel, nicht in einen Ordner. Im Shop bedeutet das ein Dokumentenfeld mit Kennung, Version und Revisionsdatum, gefüllt aus dem ERP, sowie einen Verweis auf die Datei. So bleibt nachvollziehbar, welche Fassung ein Kunde zu welchem Zeitpunkt bekommen hat, ohne dass jemand einen Dateinamen vergleichen muss.
Mengen addieren statt Positionen zählen
Die eigentliche Rechenaufgabe steckt nicht im Artikel, sondern im Warenkorb. Ob eine Sendung als begrenzte Menge verschickt werden kann, hängt an der Summe über alle betroffenen Positionen, nicht an der einzelnen Dose. Drei Dosen Lack zu 750 Millilitern, zwei Flaschen Reiniger zu einem Liter und eine Sprühdose ergeben eine Nettomenge, die der Shop kennen muss, bevor er eine Versandart anbietet. Dieselbe Umrechnung, die bei Mengeneinheiten und Gebinden gebraucht wird, wird hier zur Voraussetzung für eine Versandentscheidung: Verkaufseinheit mal Faktor ergibt Nettomenge, Nettomenge plus Verpackung ergibt Bruttomasse.
Dass diese Summe nicht nur intern gebraucht wird, zeigt das deutsche Gefahrgutrecht. Der Absender hat den Beförderer vor der Beförderung in nachweisbarer Form über die Bruttomasse der in begrenzten Mengen zu versendenden gefährlichen Güter zu informieren (Bundesministerium der Justiz). Die Zahl, die der Warenkorb für die Versandart braucht, ist damit dieselbe Zahl, die später in der Kommunikation mit dem Beförderer auftaucht. Wer sie im Shop berechnet, hat sie im Versand bereits vorliegen.
{
"sku": "LAC-2001-750",
"name": "Kunstharzlack seidenmatt, 750 ml",
"hazard": {
"is_dangerous_goods": true,
"un_number": "UN1263",
"proper_shipping_name": "FARBE",
"transport_class": "3",
"subsidiary_risk": null,
"packing_group": "III",
"environmental_hazard": false,
"limited_quantity": true,
"net_quantity_per_unit": 0.75,
"net_quantity_uom": "L",
"gross_weight_per_unit": 0.94,
"sds_document_id": "SDB-LAC-2001",
"sds_version": "4.2",
"sds_revision_date": "2026-03-11"
},
"clp": {
"signal_word": "Achtung",
"pictograms": ["GHS02", "GHS07"],
"h_statements": ["H226", "H336"],
"p_statements": ["P210", "P261", "P280"],
"euh_statements": ["EUH066"]
}
}Der Datensatz zeigt die Trennung, um die es geht: hazard beschreibt den Transportzustand, clp die Kennzeichnung des Produkts. Beide Blöcke stammen aus derselben Quelle, wandern aber an verschiedene Stellen im Shop. Die Felder net_quantity_per_unit und gross_weight_per_unit sind die einzigen, die der Warenkorb multipliziert; alles andere wird verglichen oder angezeigt. Genau deshalb sollten sie eine feste Einheit tragen und nicht als Freitext geführt werden.
Eine Sendung, zwei Summen
Kennzeichnung gehört ins Angebot
Die Transportfelder arbeiten im Hintergrund, die Kennzeichnung nach der CLP-Verordnung arbeitet auf der Produktseite. Artikel 17 Absatz 1 listet die Elemente auf, die ein Kennzeichnungsetikett trägt: Name, Anschrift und Telefonnummer des Lieferanten, Nennmenge, Produktidentifikatoren, Gefahrenpiktogramme, Signalwörter, Gefahrenhinweise, Sicherheitshinweise und ein Abschnitt für ergänzende Informationen, also acht Angaben von Buchstabe a bis Buchstabe h (EUR-Lex). Diese Angaben liegen im ERP als Codes vor: H- und P-Sätze als Kürzel, Piktogramme als GHS-Nummern. Der Shop macht daraus Bild und Text.
Für den Fernabsatz kommt eine ausdrückliche Vorgabe hinzu. Nach Artikel 48a der CLP-Verordnung sind bei Stoffen und Gemischen, die im Fernabsatz in Verkehr gebracht werden, die in Artikel 17 genannten Kennzeichnungselemente beim Angebot deutlich und erkennbar anzugeben (EUR-Lex). Die Vorschrift wurde mit der Verordnung (EU) 2024/2865 eingefügt und gilt ab dem 1. Juli 2026 (EUR-Lex). Praktisch heißt das: Die Kennzeichnungselemente gehören in die Produktdaten und werden aus dem ERP gefüllt, nicht als Bilddatei in eine Beschreibung geklebt. Der Aufwand ähnelt dem, den Verpackungsdaten nach der PPWR verursachen: nicht schwierig, aber flächig über den ganzen Katalog.
- Signalwort, Piktogramme, H-Sätze und P-Sätze als eigene Felder übernehmen statt als Fließtext in der Beschreibung.
- Piktogramme als Codes speichern und im Shop auf hinterlegte Grafiken abbilden, damit ein Wechsel der Darstellung keinen Datenlauf auslöst.
- Ergänzende EUH-Hinweise mitführen, weil sie zu den Kennzeichnungselementen gehören und im Angebot sichtbar sein sollen.
- Das Sicherheitsdatenblatt als Dokument mit Version und Revisionsdatum verknüpfen und ohne Anmeldung erreichbar halten.
- Nennmenge und Verkaufseinheit auf der Produktseite ausweisen, damit Angebot und Etikett dieselbe Größe nennen.
Beschränkte Stoffe und Lieferländer
Neben Gefahrgut- und Gefahrstoffrecht greift eine dritte Ebene in den Verkauf ein, sobald bestimmte Chemikalien im Sortiment liegen. Beschränkte Ausgangsstoffe für Explosivstoffe dürfen Mitgliedern der Allgemeinheit weder bereitgestellt noch von diesen verbracht, besessen oder verwendet werden (EUR-Lex). Maßgeblich ist dabei die Konzentration: Für Wasserstoffperoxid nennt Anhang I der Verordnung (EU) 2019/1148 einen Grenzwert von 12 % w/w (EUR-Lex). Für den Shop ist das keine juristische Feinheit, sondern eine Feldfrage. Ohne Konzentrationsangabe am Artikel kann die Sortimentssteuerung diese Fälle nicht von der Ware trennen, die jeder kaufen darf.
Technisch ist die Lösung dieselbe wie bei kundenbezogenen Sortimenten: Ein Kennzeichen am Artikel trifft auf eine Eigenschaft des Kontos, und die Sichtbarkeit ergibt sich aus beidem. Der Artikel trägt Stoff, Konzentration und ein Kennzeichen für den beschränkten Verkauf, das Konto trägt den Kundentyp und das Lieferland. Der Shop blendet die Position aus oder verweigert die Bestellung, und die Middleware protokolliert die Entscheidung. Damit bleibt nachvollziehbar, warum ein Artikel für ein bestimmtes Konto nicht bestellbar war.
Übergabe an die Versandschnittstelle
Am Ende der Kette steht die Übergabe an den Versand. Hier zeigt sich, ob die Felder sauber getrennt wurden: Die Versandschnittstelle erwartet je Position eine UN-Nummer, eine Klasse, gegebenenfalls die Verpackungsgruppe und die Nettomenge, dazu je Sendung die Summen und die gewählte Versandart. Zeitstempel spielen dabei eine größere Rolle, als es zunächst wirkt, weil Abholzeiten und Fristen an lokalen Zeiten hängen; die Fallstricke stehen im Beitrag zu Zeitstempeln in ERP-Schnittstellen.
# Zuordnung der Gefahrgutfelder auf die Versandschnittstelle
sendung:
versandart: ${regel.versandart} # strasse | seefracht | abholung
gefahrgut: ${position.hazard.is_dangerous_goods}
positionen:
- un_nummer: ${position.hazard.un_number}
klasse: ${position.hazard.transport_class}
verpackungsgruppe: ${position.hazard.packing_group}
begrenzte_menge: ${position.hazard.limited_quantity}
netto_menge: ${position.menge * position.hazard.net_quantity_per_unit}
netto_einheit: ${position.hazard.net_quantity_uom}
summen:
netto_gesamt_l: ${summe.netto_liter}
brutto_gesamt_kg: ${summe.brutto_kilogramm}
regeln:
- wenn: summe.brutto_kilogramm > grenzwert.lq_brutto
dann: versandart = spedition, zuschlag = gefahrgut_stueckgut
- wenn: lieferland not in freigabe.laender
dann: position_sperren = trueZwei Dinge sind an dieser Zuordnung wichtig. Erstens rechnet die Regel mit Summen und nicht mit Positionen, weil die Grenzwerte an der Sendung hängen. Zweitens steht die Entscheidung als Regel da und nicht als Programmcode im Shop-Theme, damit sie sich ändern lässt, ohne die Oberfläche anzufassen. Wo eine solche Regelschicht neu gebaut wird, ist die API-Entwicklung der richtige Ort dafür: eine Schnittstelle, die Summen und Entscheidung zurückgibt, ist im Shop, im Kundenkonto und im Backoffice gleichermaßen verwendbar.
Wo die Schnittstelle aufhört
Pflege, Versionen und Zuständigkeit
Gefahrgutdaten altern anders als Preise. Sie ändern sich selten, aber wenn sie sich ändern, hat die Änderung Gewicht: eine neue Einstufung, ein neues Datenblatt, ein anderer Lieferant für dasselbe Vorprodukt. Deshalb braucht der Datenfluss zwei Eigenschaften. Er muss die Version mitführen, damit erkennbar bleibt, welcher Stand im Shop liegt, und er muss Änderungen als Ereignis behandeln, nicht als stillen Überschreibvorgang. Dieselbe Denkweise trägt die Führung von Chargen und Seriennummern, wo ebenfalls nicht der aktuelle Wert allein zählt, sondern seine Herkunft.
Zuständigkeiten gehören schriftlich festgelegt, und zwar je Feld. Die Transportangaben pflegt in der Regel die Fachabteilung, die auch das Datenblatt verwaltet. Die Mengen je Verkaufseinheit pflegt die Stammdatenpflege im ERP. Die Darstellung im Shop verantwortet der Onlinekanal, ohne die Werte zu ändern. Diese Aufteilung klingt selbstverständlich, wird aber häufig erst nach dem ersten Klärfall aufgeschrieben. Ein kurzer Feldkatalog mit Quelle, verantwortlicher Stelle und Prüfregel ist erfahrungsgemäß der wirksamste Teil des Projekts.
Die Verpackungsgruppennummer wird bestimmten Stoffen je nach ihrer Gefährlichkeit zugewiesen.
Fehlerbilder, die sich wiederholen
Die folgenden Punkte tauchen in Projekten wieder auf, unabhängig von der Branche. Sie haben gemeinsam, dass sie im Shop unauffällig sind und erst im Versand oder in der Reklamation sichtbar werden. Wer sie vorab abräumt, spart den Umweg über die Klärung. In Sortimenten mit vielen Lieferanten, wie sie in der ERP-Integration im Großhandel üblich sind, lohnt sich zusätzlich eine Vollständigkeitsprüfung über den ganzen Katalog, bevor der Kanal öffnet.
- Ein Haken statt einer Feldgruppe.
Gefahrgut ja/neinbeantwortet keine der vier Entscheidungen im Checkout. Der Haken darf abgeleitet werden, er darf nicht die Datenquelle sein. - Die UN-Nummer als Zahl. Führende Nullen verschwinden in numerischen Spalten, und aus UN 0333 wird 333. Textfeld mit fester Länge und Prüfregel.
- Mengen ohne Einheit. Ein Feld
Menge: 0,75ohne Einheit ist unbrauchbar, und im ungünstigen Fall wird es zur Grundlage einer falschen Summe. - Datenblatt ohne Version. Ein PDF im Medienordner ohne Versionsnummer lässt sich nicht gegen den ERP-Stand prüfen. Die Version gehört als Feld an den Artikel.
- Länderlogik nur im Checkout. Wenn die Sperre erst im letzten Schritt greift, hat der Kunde den Warenkorb schon gefüllt. Die Einschränkung gehört sichtbar an die Produktseite.
- Import ohne Vollständigkeitsprüfung. Ein Lauf, der leere Gefahrgutfelder stillschweigend übernimmt, macht aus einem Pflegefehler ein Versandproblem. Fehlende Pflichtfelder sperren die Position besser, als sie sie durchlassen.
Der Aufwand für eine saubere Gefahrgutstrecke liegt selten in der Technik. Er liegt in der Entscheidung, welche Felder verbindlich sind, wer sie pflegt und was passieren soll, wenn eines davon leer ist. Sind diese drei Fragen beantwortet, ist die Schnittstelle in überschaubarer Zeit gebaut, und der Shop verkauft Gefahrgut mit derselben Selbstverständlichkeit wie den Rest des Sortiments.
Quellen und Regelwerke
Verwandte Artikel
LMIV im Shop: Pflichtangaben für Lebensmittel aus dem ERP
Zutaten, Allergene und Nährwerte kommen aus dem Artikelstamm, Haltbarkeit und Losnummer aus der Charge: wie beide Pflichtdatensätze sauber in den Shop kommen.
Zeitumstellung: Zeitstempel in ERP-Schnittstellen prüfen
In der Umstellungsnacht erscheint eine Stunde zweimal. Wie Zeitstempel, Deltaabfragen und Zeitpläne zwischen Shop und ERP eindeutig bleiben – mit Prüfplan.
Rahmenverträge und Kontraktabrufe im B2B-Shop abbilden
Rahmenverträge und Kontraktabrufe zwischen Shop, Middleware und Warenwirtschaft: Datenmodell, Restmenge, Kontraktpreis, Laufzeit und der Weg in den Beleg.