CSV-Import & Export · mehrsprachig, mit Mapping
Komplette Mehrsprachigkeit in einer Datei. Custom Fields als einzelne Spalten. Match per Artikelnummer, ID oder EAN. Mit Profilen, Datentyp-Erkennung und Batch-Sync.
Spaltenkonvention für Übersetzungen
Statt für jede Sprache eine eigene Datei: alle Sprachen in EINER CSV. Pro Sprache wird eine eigene Spalte angelegt. Spaltennamen folgen dem Muster:
name_de-DE,name_en-GB— Standard-Felder pro Sprachecf_meinFeld_de-DE,cf_meinFeld_en-GB— Custom Fields pro Sprache
Beim Import werden Sprach-Spalten automatisch erkannt. Vorhandene Übersetzungen werden ergänzt, nicht überschrieben (JSON-Merge). Leere Zellen führen nicht zu Datenverlust — sie werden ignoriert.
Custom Fields als einzelne Spalten
Custom Fields, die in der Konfigmatrix unter „Custom Fields" einzeln aktiviert sind, bekommen im Export jeweils eine eigene Spalte (cf_meinFeld). Beim Import werden sie direkt erkannt — kein JSON-Blob mehr.
Unterstützte Typen: Text, Zahl, Boolean, Datum, Auswahl, Mehrfachauswahl (Pipe-separiert), JSON.
Vordefinierte Export-Profile
Sofort einsetzbare Spaltensets für typische Use-Cases — anpassbar, als neues Profil speicherbar:
- Stammdaten — Artikelnummer, Name, EAN, Hersteller
- SEO — Meta-Daten in allen Sprachen
- Preise & Lager — alle Preisfelder + Bestand + Grundpreis + Einkaufspreis brutto/netto getrennt
- Eigenschaften & Custom Fields — Properties + alle aktiven CF-Spalten
- Cross-Selling — alle Streams pro Produkt
- Übersetzungen — alle Sprachen für alle übersetzbaren Felder
- Bilder — Cover + Galerie als URLs
Preis-Spalten — Brutto und Netto getrennt
Für den Einkaufspreis stehen zwei getrennte Spalten zur Verfügung:
purchasePrice_gross— Einkaufspreis brutto (inkl. MwSt.)purchasePrice_net— Einkaufspreis netto (exkl. MwSt.)
Beim Import sind alle Kombinationen möglich:
- Nur Brutto angegeben → Netto wird über die Steuerklasse automatisch berechnet
- Nur Netto angegeben → Brutto wird über die Steuerklasse automatisch berechnet
- Beide angegeben → Werte werden 1:1 übernommen
- Legacy-Spalte
purchasePrice→ bleibt rückwärtskompatibel (als Brutto interpretiert)
Alias-Erkennung
Der Importer erkennt auch deutsche und englische Schreibweisen automatisch:
ek_brutto,einkaufspreis_brutto,cost_gross,purchase_price_gross→ werden aufpurchasePrice_grossgemapptek_netto,einkaufspreis_netto,cost_net,purchase_price_net→ werden aufpurchasePrice_netgemappt
CSV-Export
- Spalten beliebig auswählbar
- Spalten-Trenner: Komma, Semikolon, Tab
- Dezimaltrennzeichen: Punkt (12.50) für internationales Excel, Komma (12,50) für deutsches Excel
- Encoding: UTF-8 mit oder ohne BOM
- Aktive Filter berücksichtigen — Filter aus dem CSV-Modal werden auf den Export angewandt
- Varianten-Export als eigene Zeilen — pro Profil oder global aktivierbar
Spalte „Einheit (Name)"
Zusätzlich zur Einheit-ID wird die Produkteinheit als Klarname exportiert („Liter", „Kilogramm", „Stück") — Excel-freundlich, ohne UUID-Übersetzung. Im Profil „Preise & Lager" ist der Klarname als Standard aktiviert.
CSV-Import
Ablauf
- Datei hochladen (Drag-and-Drop oder File-Picker) oder URL zu CSV/TSV/XML eingeben
- Vorschau der ersten Zeilen prüfen
- Spalten-Mapping anzeigen — automatische Erkennung anhand der Header
- Mapping anpassen falls Spaltennamen abweichen
- Datentyp-Erkennung-Vorschau prüfen
- Import-Modus wählen: nur aktualisieren, nur erstellen, oder beides
- Trockenlauf (Dry-Run) zeigt: wie viele neu, wie viele Update, wie viele übersprungen
- Echter Import mit Progress-Bar und ETA — abbrechbar
Match-Logik
- Artikelnummer (
productNumber) — Standard - ID (UUID)
- EAN
Auflösung per Artikelnummer oder EAN
Felder die normalerweise eine UUID erwarten (parentId, mainVariantId) können beim Import auch über Artikelnummer oder EAN aufgelöst werden — UUIDs sind nicht zwingend nötig. Lookup-Cache verhindert doppelte Treffer.
Auto-Erkennung „Einheit"
Der Importer erkennt sowohl „Einheit (Name)" als auch „Produkteinheit" als Spaltennamen automatisch und löst Klarnamen wie „Liter" oder „Kilogramm" in die korrekte Einheit-ID auf. Auch Pluralformen werden erkannt.
Automatische Lookups
Beim Import werden fehlende Entitäten automatisch erstellt: Hersteller, Tags, Kategorien, Steuerklassen, Lieferzeiten, Eigenschaften und Produkteinheiten.
Datentyp-Erkennung
- Boolean:
1/0,true/false,ja/nein,aktiv/inaktiv - Datum: ISO (
2026-05-15) und deutsche Notation (15.05.2026) - Zahl: Komma oder Punkt als Dezimaltrenner, Tausender-Trenner werden erkannt
- Array: Pipe-Separator (
|) bei Multi-Select-Custom-Fields - JSON: bei komplexen Feldern
Spalten-Mapping
Falls CSV-Header nicht mit Shopware-Feldnamen übereinstimmen, kann das Mapping manuell überschrieben werden. Per Drag-and-Drop zwischen CSV-Spalte und Shopware-Feld. Mapping als Vorlage speicherbar — pro User oder shopweit.
Import-Protokoll
Jeder Import wird unter PIM → Import-Historie protokolliert:
- Zeitstempel, User, Anzahl Datensätze
- Erfolge (neu / aktualisiert / übersprungen)
- Fehler mit Zeilennummer und Begründung
- Download der originalen CSV-Datei (30 Tage Aufbewahrung)
Berechtigungen
staw_pim.csv_import. Nicht-Superadmins sehen den Tab nicht. Export-Tab wird ausgeblendet, wenn staw_pim.csv_export fehlt.