CSV ist trotz moderner Schnittstellen eines der häufigsten Austauschformate im E-Commerce. Lieferanten, Plattformen und Tools liefern Daten regelmäßig als CSV-Datei. Wer diese Dateien manuell verarbeitet, verliert Zeit und riskiert Fehler. Dieser Ratgeber zeigt, wie sich CSV-Importe automatisieren und zuverlässig in JTL-Prozesse einbinden lassen.
Für wen ist das Thema relevant?
Relevant ist das Thema für Händler und Unternehmen, die regelmäßig CSV-Dateien einlesen – etwa Lieferantenpreislisten, Produktdaten oder Bestandslisten. Gelöst wird das Problem manueller, wiederkehrender Importe und der typischen Fehler, die dabei entstehen.
Warum CSV weiterhin relevant ist
CSV ist einfach aufgebaut, universell unterstützt und leicht zu erzeugen. Fast jedes System kann CSV exportieren, weshalb es als kleinster gemeinsamer Nenner im Datenaustausch dient. Für flache, tabellarische Daten ist es gut geeignet; bei verschachtelten Strukturen ist XML oft die bessere Wahl.
Typische Datenquellen
- Lieferantenpreislisten mit Artikeln und Einkaufspreisen,
- Bestandslisten mit Verfügbarkeiten,
- Produktdaten von Herstellern,
- Exporte aus Drittsystemen und Tools.
Stolperfallen: Trennzeichen, Encodings und Formate
CSV ist nicht gleich CSV. In der Praxis sorgen vor allem diese Punkte für Probleme:
Trennzeichen
Komma, Semikolon oder Tabulator – je nach Quelle und Region unterscheidet sich das Trennzeichen. Wird es falsch interpretiert, verschieben sich Spalten.
Encodings
Unterschiedliche Zeichenkodierungen (etwa UTF-8 oder ältere Encodings) führen zu falsch dargestellten Umlauten und Sonderzeichen. Das korrekte Encoding muss erkannt oder festgelegt werden.
Zahlen- und Datumsformate
Dezimaltrennzeichen und Datumsformate variieren. Werte sollten beim Import normalisiert werden, damit Preise und Datumsangaben korrekt übernommen werden.
Spaltenmapping und Datenbereinigung
Beim Spaltenmapping werden die CSV-Spalten den JTL-Feldern zugeordnet. Da Lieferanten unterschiedliche Spaltennamen und Reihenfolgen nutzen, ist ein dokumentiertes Mapping je Quelle nötig. Bei der Datenbereinigung werden Werte normalisiert, überflüssige Leerzeichen entfernt und Formate vereinheitlicht.
Preislogik, Bestände und Fehlerbehandlung
Bei Preisen sind Logiken für Rundungen, Währungen oder Aufschläge zu berücksichtigen. Bestände bzw. Verfügbarkeiten sollten plausibilisiert werden. Fehlerhafte Zeilen werden protokolliert und ausgenommen, sodass ein einzelner Fehler nicht den gesamten Import stoppt. Wie Lieferantendaten insgesamt angebunden werden, behandelt der Beitrag Lieferanten an JTL anbinden.
Automatisierung
CSV-Dateien lassen sich zeitgesteuert aus einem festgelegten Bezugsweg einlesen und verarbeiten. Für den verlässlichen Betrieb sind Validierung, Fehlerbehandlung und Monitoring wichtig. Steht statt einer Datei ein API-Zugang bereit, kann eine individuelle API-Anbindung sinnvoller sein.
Häufige Fehler
- Falsch erkanntes Trennzeichen, das Spalten verschiebt.
- Falsches Encoding mit fehlerhaften Sonderzeichen.
- Fehlendes Spaltenmapping je Quelle.
- Keine Normalisierung von Zahlen- und Datumsformaten.
- Keine Fehlerbehandlung, sodass einzelne Zeilen den Import blockieren.
Praxisbeispiel (exemplarisch)
Das folgende Szenario ist ein konstruiertes Beispiel und beschreibt keinen konkreten Kunden. Ein Händler erhält wöchentlich eine CSV-Preisliste mit Semikolon als Trennzeichen und deutschem Zahlenformat. Über einen automatisierten Import werden Encoding und Trennzeichen korrekt erkannt, Preise normalisiert und gültige Zeilen in JTL übernommen. Fehlerhafte Zeilen werden zur Prüfung protokolliert. Der manuelle Aufwand entfällt.
Checkliste für automatisierte CSV-Importe
- Trennzeichen und Encoding je Quelle geklärt
- Spaltenmapping dokumentiert
- Zahlen- und Datumsformate normalisiert
- Validierungs- und Bereinigungsregeln definiert
- Preislogik festgelegt
- Fehlerprotokoll und Monitoring eingerichtet
- Import zeitgesteuert automatisiert
Fazit
Automatisierte CSV-Importe sind ein verlässlicher Weg, wiederkehrende Datenlieferungen ohne manuellen Aufwand in JTL zu übernehmen. Entscheidend sind der korrekte Umgang mit Trennzeichen und Encodings, ein sauberes Spaltenmapping und konsequente Validierung. Gemeinsam mit XML-Importen und der Lieferantenanbindung entsteht ein durchgängiger Datenfluss, den wir im Rahmen der Individualprogrammierung umsetzen.