Im wachsenden E-Commerce entscheidet die Geschwindigkeit der Datenpflege über Marge und Kundenzufriedenheit. Wenn Lieferanten täglich neue Preislisten, geänderte Bestände oder Auslaufartikel per FTP oder E-Mail schicken, wird das manuelle Einpflegen über die Benutzeroberfläche schnell zum personellen Flaschenhals.
Besonders in sortimentsstarken Branchen – wie etwa im spezialisierten Teile- und Zubehörhandel (ein typisches Szenario, das wir beispielsweise bei Kunden wie bully-performance / ehemals SUB-Motorradteile mit über 15.000 aktiven Artikeln gelöst haben) – führt manuelle Tipparbeit unweigerlich zu zwei gravierenden Problemen:
- Veraltete Einkaufspreise: Preissteigerungen der Hersteller werden erst Tage später im System erfasst. Bei Verkäufen im Shop zahlt der Händler im schlimmsten Fall drauf.
- Überverkäufe (Overselling): Ein Artikel ist beim Großhändler vergriffen, steht im Shop aber noch als lieferbar. Stornierungen, negative Google-Bewertungen und verärgerte Kunden sind die Folge.
In diesem Leitfaden zeige ich Ihnen die technische Architektur, wie Sie die JTL-Ameise über die Befehlszeile (CLI) zeitgesteuert automatisieren, welche typischen Fehlerquellen auftreten und ab wann ein individuelles Regelwerk sinnvoller ist.
Die Architektur: Wie ein automatisierter Import-Flow funktioniert
Ein stabiler Import besteht typischerweise aus fünf getrennten Phasen, die sequenziell nachts oder in festen Intervallen ablaufen:
[1. FTP / HTTP Feed]
│ (Download via SFTP / cURL / Skript)
▼
[2. Lokaler Staging-Ordner]
│ (Format-Prüfung, Encoding-Check & Backup)
▼
[3. JTL-Ameise CLI]
│ (Ausführung mit vordefinierter Vorlage)
▼
[4. JTL-Wawi MSSQL-Datenbank]
│ (Synchronisation mit Onlineshop & Marktplätzen)
▼
[5. Logging & Fehler-Alert] (Benachrichtigung bei Abweichungen)
Schritt 1: Das Import-Profil in der JTL-Ameise vorbereiten
Bevor wir eine Zeile Code ausführen, muss in der grafischen Oberfläche der JTL-Ameise eine Importvorlage erstellt und abgespeichert werden:
- Öffnen Sie die JTL-Ameise und wählen Sie den Menüpunkt Import -> Artikel -> Artikeldaten.
- Laden Sie eine typische Beispieldatei des Lieferanten.
- Eindeutiger Identifikator: Wählen Sie die
Lieferanten-Artikelnummeroder dieEAN / Barcodeals Identifikationskriterium. Wenn Sie über die Lieferanten-Artikelnummer aktualisieren, muss der passende Standardlieferant bzw. die Lieferantenzuordnung korrekt hinterlegt sein, damit die Artikel eindeutig gefunden werden. - Felder zuordnen: Weisen Sie mindestens folgende Spalten zu:
- Artikelnummer / EAN
- Einkaufspreis Netto (EK)
- Lagerbestand (oder Lieferantenbestand)
- Lieferanten-Bestand / Lieferzeit
- Import-Einstellungen prüfen: Legen Sie fest, wie vorhandene Artikel aktualisiert werden und wie JTL-Ameise mit fehlenden oder nicht enthaltenen Datensätzen umgehen soll. Beachten Sie: Die
Standardwertedienen vor allem beim Neuanlegen von Datensätzen und ersetzen nicht pauschal leere Werte bei bestehenden Artikeln. - Vorlage speichern: Speichern Sie die Konfiguration unter einem prägnanten Namen ab, z. B.
Lieferant_Motorrad_Tagesbestand. Notieren Sie zusätzlich die von JTL-Ameise vergebene Vorlagen-ID (z. B.IMP01) – diese wird später für den CLI-Aufruf benötigt.
Schritt 2: Automatisierter Download via Batch / SFTP
Lieferantendaten liegen meist auf einem externen FTP-Server bereit. Um die Datei nachts um 03:00 Uhr herunterzuladen, eignet sich ein einfaches WinSCP-Skript oder ein schlankes Python-Tool:
# winscp_script.txt
open sftp://lieferant_user:Passwort123@sftp.grosshaendler.de/ -hostkey="<SSH-HOSTKEY-FINGERPRINT>"
cd /export/daily/
get produkte_bestand.csv C:\JTL_Import\staging\produkte_aktuell.csv
exit
Aufgerufen wird das Skript über eine einfache Windows-Batch-Datei (fetch_and_import.bat):
@echo off
set LOGFILE=C:\JTL_Import\logs\import_%date%.log
echo [%time%] Starte FTP-Download... >> %LOGFILE%
"C:\Program Files (x86)\WinSCP\WinSCP.com" /script=C:\JTL_Import\winscp_script.txt >> %LOGFILE%
if %ERRORLEVEL% NEQ 0 (
echo [%time%] FEHLER beim Download! Abbruch. >> %LOGFILE%
exit /b 1
)
Schritt 3: Der CLI-Befehl der JTL-Ameise
Sobald die Datei im Verzeichnis C:\JTL_Import\staging\ liegt, kann die JTL-Ameise headless (ohne GUI) gestartet werden. Je nach gebuchter JTL-Edition bzw. Paketkonfiguration steht die CMD-Line-Version möglicherweise nicht zur Verfügung.
Die Syntax für den Aufruf lautet:
echo [%time%] Starte JTL-Ameise Import... >> %LOGFILE%
"C:\Program Files (x86)\JTL-Software\JTL-wawi-ameise.exe" ^
--server=localhost\JTLWAWI ^
--database=eazybusiness ^
--dbuser=sa ^
--dbpass=IhrDatenbankPasswort ^
--templateid=IMP01 ^
--inputfile=C:\JTL_Import\staging\produkte_aktuell.csv ^
--log=C:\JTL_Import\logs\ameise_import.log
echo [%time%] Import beendet mit Code %ERRORLEVEL% >> %LOGFILE%
Wichtiger Sicherheitshinweis: Zugangsdaten gehören nicht in öffentlich zugängliche Ordner oder Repositories. Beschränken Sie den Zugriff auf Batch-Dateien und Konfigurationen auf die benötigten Windows-Benutzer und verwenden Sie beim SFTP-Zugriff den echten SSH-Hostkey-Fingerprint statt einer pauschalen Vertrauensfreigabe.
Die 3 gefährlichsten Fallstricke im Alltag
In der Theorie klingt dieser Ablauf simpel. In der Praxis bei Händlern mit 10.000 bis 50.000 Artikeln sehen wir in unserer IT-Praxis regelmäßig folgende Ausfälle:
1. Zeichensatz-Chaos: UTF-8 vs. ANSI / Windows-1252
Lieferanten exportieren ihre CSVs teilweise in wechselnden Encodings. Ist in der Importvorlage ein anderes Datei-Encoding eingestellt als die tatsächlich gelieferte Datei verwendet, können Sonderzeichen oder Feldinhalte falsch eingelesen werden.
- Folge: Datensätze können fehlerhaft verarbeitet oder Zuordnungen unbrauchbar werden.
- Lösung: Das erwartete Encoding in der Importvorlage fest definieren und die Datei vor dem produktiven Import validieren bzw. bei Bedarf automatisiert in ein einheitliches Format konvertieren.
2. Spaltenverschiebung durch neue Attribute
Der Hersteller fügt plötzlich eine Spalte für „Hersteller-Gewährleistung“ ein oder ändert die Reihenfolge bestehender Spalten. Wenn eine gespeicherte Importvorlage dadurch nicht mehr zur Struktur der Datei passt, können Werte falschen Datenbankfeldern zugeordnet werden.
- Folge: Im schlimmsten Fall entstehen falsche Bestände, Lieferzeiten oder Preiskalkulationen im Onlineshop.
- Lösung: Vor jedem produktiven Import Spaltenanzahl, Kopfzeile und erwartete Feldstruktur automatisiert gegen ein bekanntes Schema prüfen.
3. Hängende Prozesse im Windows-Aufgabenplaner
Bleibt ein Import etwa durch einen Datenbank-Lock, eine Verbindungsstörung oder einen unerwarteten Fehler hängen, kann der nächste geplante Lauf parallel starten und weitere Probleme verursachen. Deshalb sollten Laufzeitbegrenzung, Prozessprüfung und Fehler-Alert Teil der Automatisierung sein.
Wann Standard-Skripte an Grenzen stoßen: Der Weg zu VendorHive
Ein statisches Skript funktioniert gut, solange ein einziger Lieferant eine saubere, verlässliche Datei liefert.
Sobald ein Händler jedoch:
- 3 bis 10 verschiedene Großhändler hat,
- unterschiedliche Margenstaffeln je nach Warengruppe automatisch berechnen muss,
- Lieferanten-Dateien per REST-API, FTP, Mail-Anhang und XML gemischt einlaufen,
- und bei fehlerhaften Preisen (z. B. Kommafehler: 1,50 € statt 150,00 €) ein automatischer Schutzgreifer eingreifen muss,
reichen einfache Batch-Dateien nicht mehr aus.
Genau aus dieser praktischen Herausforderung heraus haben wir bei SNBL IT unser System VendorHive entwickelt: Eine intelligente Daten-Middleware, die Lieferantendaten vorab validiert, Ausreißer filtert, Preisregeln anwendet und die bereinigten Daten anschließend an den vorgesehenen Importprozess von JTL-Wawi oder per API/Webhook an Systeme wie Shopify und WooCommerce übergibt.
Fazit: Zeit sparen und Fehlerquote deutlich senken
Die Automatisierung der JTL-Ameise kann für wachsende Händler ein großer Hebel sein:
- Deutlich weniger manuelle Klickarbeit bei wiederkehrenden Importen.
- Weniger Überverkäufe durch regelmäßige, automatisierte Bestandsabgleiche.
- Aktuellere Einkaufspreise und Margen, weil Preisänderungen schneller ins System übernommen werden.
Benötigen Sie Unterstützung bei Ihrer JTL-Infrastruktur?
Haben Sie Lieferanten mit wechselnden Dateiformaten, bricht Ihr Import regelmäßig ab oder wollen Sie Ihren Bestandsabgleich auf Echtzeit umstellen?
Als IT-Spezialist für E-Commerce und ERP-Schnittstellen im Raum Bremen & Niedersachsen analysiere ich gerne Ihre aktuellen Workflows.
Kostenlosen Workflow-Check anfragen · Mehr zu unseren Schnittstellen-Lösungen