Letzten Monat saß ich vor zwei Bildschirmen. Links der Produktfeed eines Kunden, sauber gepflegt: Waschmittel, 1,5 Liter, 7,49 €, Grundpreis 4,99 € pro Liter. Rechts dieselbe Seite im Shop, live. Dort stand 7,49 € pro Liter. Der Feed hatte recht. Das Frontend log. Und abgemahnt wird nicht der Feed.
Diesen Fall unterschätzen die meisten. Man exportiert eine Datei, prüft eine Zeile, sieht die richtige Zahl, hakt das Thema ab. Nur sieht der Kunde die Datei nie. Er sieht die Seite. Und wenn dort eine andere Zahl steht als die, die stimmen müsste, nützt Ihnen der korrekte Feed vor Gericht wenig.
Erst die Pflicht, dann die Panne
Kurz, damit wir vom Gleichen reden. Die Preisangabenverordnung verlangt bei Waren, die nach Gewicht, Volumen, Länge oder Fläche verkauft werden, neben dem Gesamtpreis den Grundpreis: je Kilogramm, Liter, Kubikmeter, Meter oder Quadratmeter. Er muss in unmittelbarer Nähe des Endpreises stehen, und zwar überall dort, wo der Endpreis auftaucht. Produktseite, Kategorie, Suche, Warenkorb. Neu ist das Thema nicht. Der fehlende oder falsche Grundpreis gehört seit Jahren zu den häufigsten Abmahngründen im Onlinehandel. Warum ein fehlendes Feld nicht nur Sichtbarkeit, sondern auch eine Abmahnung kosten kann, steht ausführlich in Pflichtangaben im Onlineshop.
Der Punkt ist: Die Rechnung selbst ist trivial. 7,49 € für 1,5 Liter sind 4,99 € pro Liter, das schafft jede Maschine in Millisekunden. Wenn der Grundpreis im Frontend trotzdem falsch ist, liegt das fast nie an der Rechnung. Es liegt an dem, was die Rechnung frisst.
Drei Stellen, an denen es kippt
In der Praxis kippt der Grundpreis fast immer an einer von drei Stellen. Nicht am Gesetz. An den Daten.
Die Mengeneinheit.Das häufigste Problem und das langweiligste. Im Feed steht die Nettomenge mal als "1,5 L", mal als "1500 ml", mal als "1,5" ohne Einheit, mal als "1,5 Liter" mitten im Fließtext der Beschreibung. Solange Menge und Einheit sauber und maschinenlesbar in eigenen Feldern liegen, rechnet das System richtig. Klebt die Einheit im Beschreibungstext oder fehlt sie ganz, greift der Shop zu einem Standard, meistens "1 Stück", und plötzlich steht der Endpreis als Grundpreis da. Genau mein Waschmittel von oben. 7,49 € pro Liter statt 4,99 €, weil das System die 1,5 nie als Volumen erkannt hat.
Der Variantenbezug. Ein Kaffee, 500 g, gibt es als ganze Bohne und gemahlen. Zwei Varianten, ein Grundpreis: 15,80 € pro Kilogramm bei 7,90 € Verkaufspreis. Klingt einfach. Kompliziert wird es, sobald die Menge am Elternprodukt hängt und die Variante sie nicht erbt. Oder umgekehrt: Die 500 g stehen an der Variante, der Grundpreis wird aber aus einem leeren Elternfeld berechnet und landet bei null. Multipacks sind der Klassiker. 3 × 500 g Kaffee sind 1,5 kg, nicht 500 g. Rechnet Ihr Shop den Grundpreis aus der Einzelmenge statt aus dem Gebinde, ist er um den Faktor drei daneben. Wie man solche Varianten überhaupt sauber aus einzelnen Lieferantenzeilen zusammenfasst, zeigt Einzelartikel zu Varianten zusammenfassen.
Die Ausspielung. Die bösartigste, weil sie sich am besten versteckt. Der Grundpreis ist korrekt berechnet und liegt sauber im Produkt. Nur zeigt das Template ihn auf der Produktseite an und in der Kategorieübersicht nicht. Oder im Warenkorb nicht. Oder im Marktplatz-Listing nicht. Er muss überall dort stehen, wo der Endpreis steht. Der Händlerbund ist da deutlich: Selbst wenn Sie die Angabe korrekt hinterlegen, das Frontend sie aber nicht sichtbar ausspielt, bleiben Sie haftbar. Eine technische Beschränkung Ihres Shops oder des Marktplatzes entlastet Sie nicht.
Warum der Feed trotzdem sauber sein kann
Das ist die Paradoxie vom Anfang. Der Feed ist eine flache Momentaufnahme eines Felds. Das Frontend ist das Ergebnis aus Feld plus Template plus Variantenlogik plus Rundung plus Einheitenerkennung. Zwischen der richtigen Zahl in der Datei und der Zahl auf dem Bildschirm liegen vier, fünf Verarbeitungsschritte, und jeder davon kann sie stillschweigend verbiegen. Genau derselbe Effekt trifft übrigens die Marktplatz-Feeds, wie Produktfeed für Amazon, Google Shopping und OTTO im Detail zeigt.
Deshalb prüfe ich Grundpreise nie an der Exportdatei. Ich prüfe sie da, wo der Kunde und der Abmahner hinschauen. Auf der gerenderten Seite.
Ein kleines Beispiel, wie schnell dieselbe 500-g-Packung Kaffee vier verschiedene Grundpreise erzeugt, obwohl der Feed nur eine Menge kennt:
| Was im Shop passiert | Angezeigter Grundpreis | Richtig? |
|---|---|---|
| Menge "500 g" sauber im Mengenfeld | 15,80 € / kg | ja |
| Menge nur im Beschreibungstext, Feld leer | 7,90 € / Stück | nein, Fallback greift |
| 3er-Gebinde, gerechnet aus Einzelmenge | 15,80 € / kg statt 5,27 € / kg | nein, Gesamtmenge fehlt |
| Korrekt berechnet, Template zeigt ihn nur auf der Detailseite | in Kategorie: gar keiner | nein, Ausspielung fehlt |
Eine Datenlücke, vier Ausgänge. Bei einem Produkt sehen Sie es. Bei fünftausend nicht mehr.
Eine Datenlücke, vier Ausgänge. Bei einem Produkt fällt Ihnen das auf. Bei fünftausend nicht mehr. Und genau die stillen Fälle werden abgemahnt, nicht die, die Sie ohnehin sehen.
Wo saubere Daten das Problem an der Wurzel lösen
Der Reflex ist, das Template zu reparieren. Manchmal stimmt das auch, bei der reinen Ausspielung. Aber zwei der drei Ursachen sitzen nicht im Template. Sie sitzen in den Daten, die reinlaufen, und dort lösen sie sich dauerhaft. So gehe ich einen Katalog auf Grundpreis durch:
Der letzte Punkt macht Handarbeit sinnlos. Sie klicken zwanzig Produkte am Freitagabend durch und merken trotzdem nicht, dass Lieferant C seit dem letzten Feed die Nettomenge in einer neuen Spalte liefert und seitdem bei vierhundert Artikeln der Grundpreis auf den Stück-Fallback gekippt ist. Genau da entsteht die Lücke, die keiner sieht, bis ein Umschlag im Briefkasten liegt. Wie eine Ebene aus laufender Datenqualität genau solche stillen Verschiebungen abfängt, lesen Sie separat.
Zwischen der richtigen Zahl in der Datei und der Zahl auf dem Bildschirm liegen vier, fünf Verarbeitungsschritte, und jeder davon kann sie stillschweigend verbiegen.
Wie wir das angehen
Damit es ehrlich bleibt: Wir sind keine Anwälte, und dieser Text ist keine Rechtsberatung. Ob eine Angabe im Einzelfall rechtlich genügt, sagt Ihnen Ihre Rechtsberatung, nicht wir. Was wir aus der Welt schaffen, ist die mechanische Ursache hinter den meisten falschen Grundpreisen.
Eine Frage stelle ich jedem, der glaubt, bei ihm sei alles sauber. Öffnen Sie ein Multipack in Ihrem Shop, nicht den Feed, die echte Seite. Steht der Grundpreis dort auf die Gesamtmenge im Gebinde gerechnet oder auf eine einzelne Packung? Wenn Sie kurz nachdenken müssen, haben Sie Ihre Antwort.
Erzählen Sie uns in einer halben Stunde, wie Ihre Produktdaten heute von den Lieferanten bis in Shop und Marktplatz wandern, und wir sagen Ihnen ehrlich, welche Grundpreise sich sauber aus Menge und Einheit ableiten lassen und welche echte Redaktion brauchen. Warum dieselbe Feldlücke auch ganze Marktplatz-Listings kippt, steht in Warum OTTO Listings ablehnt. Wie aus verstreuten Lieferantendateien überhaupt erst ein sauberer Katalog mit einer Wahrheit pro Feld wird, zeigt Produktdaten zusammenführen zum Golden Record. Und welche Automatisierungen in SyncRefine schon eingebaut sind, sehen Sie unter Automatisierungen.


