Import/Export: Artikel

Artikel

Beim Importieren von Artikeln musst Du beachten, dass jeder Artikel einen Namen, Artikelnummer, Hersteller, Steuersatz und einen Preis benötigt um als korrekter Datensatz angelegt zu werden. Außerdem sollte beachtet werden, dass Verknüpfungen zu anderen Artikeln nur möglich sind, wenn es diese bereits im System gibt.

Allgemeine Hinweise

Die csv-Datei muss UTF8 codiert sein. Bevor ein Import in das Live-System vorgenommen wird, sollte ein Datenbankbackup vorgenommen werden. In jedem Fall empfiehlt sich auch den Import zuvor in einer Testumgebung oder im Staging-System zu prüfen.

Basis Artikel

Beim Import von Artikeln müssen wir unterscheiden zwischen der Aktualisierung und der Neuanlage von Artikeln. Bei der Aktualisierung müssen nur die Plichtfelder ordernumber, mainnumber und der Preis vorhanden sein, sowie die zu aktualisierenden Felder. Für die korrekte Neuanlage müssen auch die Felder supplier, name, tax, price gefüllt werden. Um den Artikel korrekt im Frontend anzuzeigen sollte diesem direkt eine Kategorie zugewiesen, sofern diese bereits bekannt ist, und das Kennzeichen active auf 1 gesetzt werden. Erst dann wird der erstellte Artikel korrekt im Frontend und Backend angezeigt.

Die Funktion Export von Artikeln bietet zusätzlich folgende Filtermöglichkeiten:

Varianten exportieren: Sollen Varianten exportiert werden Ja/Nein

Limitierung: Nur die gegebene Anzahl an Artikeln exportieren

Versatz: Nach der gegebenen Anzahl an Artikeln den Export beginnen

Kategorie: Nun Artikel aus der gegebenen Kategorie exportieren



Unterstützte Felder inkl. Beschreibung

Datensatz: Article

Feldname Beschreibung Gültige Werte Besonderheiten
articleID Artikel ID, dieses Feld ist der Datenbank Primary Key und muss zwingend einmalig sein! nummerisch Optional
name Artikel-Name Text Pflichtfeld für Neuanlage
description Kurzbeschreibung des Artikels Text Optional
descriptionLong Lange Beschreibung des Artikels Text Optional
date Einstellungsdatum Datum Optional
pseudoSales Pseudo Verkäufe nummerisch Optional
topSeller Topseller boolean Optional
metaTitle Meta-Titel Text Optional
keywords Keywords nText Optional
changeTime Änderungsdatum Datum Optional
priceGroupId ID der Preisgruppe nummerisch Optional, auszulesen aus s_core_pricegroups
priceGroupActive Preisgruppe aktiv boolean Optional
lastStock Abverkauf boolean Optional
crossBundleLook crossBundleLook boolean Optional
notification Email-Benachrichtigung boolean Optional
template Template Text Optional
mode Modus nummerisch Optional
availableFrom Verfügbar ab Datum Optional
availableTo Verfügbar bis Datum Optional
supplierId Hersteller-Id nummerisch Optional
supplierName Hersteller Text Pflichtfeld bei Anlage
taxId Steuer-ID nummerisch Optional
tax Steuersatz Text Pflichtfeld bei Anlage
filterGroupId Eigenschaften-Gruppe-ID nummerisch Optional
filterGroupName Eigenschaften Gruppe Text Optional
variantId Artikel-Detail ID nummerisch Optional
ordernumber Artikelnummer alphanummerisch Pflichtfeld
mainnumber Artikelnummer des Hauptartikels alphanummerisch Pflichtfeld
kind Typ nummerisch Optional
additionalText Zusatztext für Varianten Text Optional
inStock Bestand nummerisch Optional; Bitte nutze niemals dieses Feld bei Importen, wenn Du Shopware ERP powered by Pickware nutzt sondern die Pickware-Profiltypen
active Aktiv boolean Optional
stockMin Mindestbestand nummerisch Optional
weight Gewicht nummerisch Optional
position Position nummerisch Optional
width Weite nummerisch Optional
height Höhe nummerisch Optional
length Länge nummerisch Optional
ean EAN Text Optional
unitId Maßeinheit ID nummerisch Optional
purchaseSteps Staffelung nummerisch Optional
minPurchase Mindestabnahme nummerisch Optional
maxPurchase Maximalabnahme nummerisch Optional
purchaseUnit Kaufeinheit nummerisch Optional
referenceUnit Grundeinheit nummerisch Optional
PackUnit Verpackungseinheit Text Optional
releaseDate Veröffentlichungs-Datum Datum Optional
shippingTime Lieferzeit nummerisch Optional
shippingFree Versandkostenfrei boolean Optional
supplierNumber Hersteller-Nummer Text Optional
purchasePrice Einkaufspreis nummerisch Optional
attributeAttr#(1-20) Attributfeld Text Optional

Minimaler Import zur Artikelanlage

Dieser Import enthält nur die wichtigsten Felder um einen Artikel-Import durchzuführen(ordernumber, mainnumber,supplier, name, tax, price). Sobald diese Felder beinhaltet sind kann ein Artikel neu angelegt werden, zur Korrekten Anzeige im Frontend sollten noch eine Kategorie und das Feld "Aktiv" gefüllt werden. 

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Artikel minimal (default_articles_minimal)". 
Eine Beispiel XML-Datei findest Du hier: ArticleMinimal.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: AricleMinimal.csv

Standard Profil

Dieses Profil liefert alle Felder, welche für eine Neuanlage eines Artikels benötigt werden, sowie die meisten sinnvollen Detail-Felder. Sofern Eigenschaften, Übersetzungen oder Bilder mit im-/exportiert werden sollen müssen diese über die jeweiligen Datensatzen hinzugefügt werden.

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Artikel (default_articles)". 
Eine Beispiel XML-Datei findest Du hier: Article.xml
Eine Beispiel CSV-Datei kannst Du hier finden: Article.csv


Artikel komplett

Dieses Profil enthält alle möglichen sinnvollen Felder und erweiterten Datensätze wie Preise, Varianten, Eigenschaften usw. 

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Artikel komplett (default_articles_complete)". 
Eine Beispiel XML-Datei findest Du hier: ArticleComplete.xml
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleComplete.csv

Varianten

Bei der Anlage von Varianten ist zu beachten, ob Varianten zu einem bestehenden Artikel hinzugefügt werden, oder ob ein neuer Artikel angelegt wird, welcher Varianten haben soll. Es ist nicht möglich Varianten über einen Import zu entfernen, oder bestehende Nicht-Varianten-Artikel zu einem Varianten-Artikel zusammenzufügen. Ob eine Variante die Vorauswahl ist oder nicht wird durch den Knoten "kind" bestimmt, dieser kann den Wert 1 für die Vorauswahl und 2 für alle weiteren Varianten haben. Es darf immer nur eine Variante bei kind eine 1 erhalten, also Vorauswahl-Variante sein.

Unterstützte Felder inkl. Beschreibung

Datensatz: Configurator

Feldname Beschreibung Gültige Werte Besonderheiten
variantId Artikel-Detail ID nummerisch Optional
configOptionId Options-ID alphanummerisch Optional
configOptionName Optionsname Text Pflichtfeld
configOptionPosition Position der Option nummeric Optional
configGroupId Gruppen-ID nummerisch Optional
configGroupName Gruppen-Name Text Pflichtfeld
configGroupDescription Beschreibung der Gruppe Text Optional
configSetId Set-ID nummerisch Optional
configSetName Set-Name Text Optional
configSetType Set-Type nummerisch Optional

Artikelvarianten Neuanlage Minimal

Um einen Varianten-Artikel zu erstellen, muss zusätzlich der Datensatz configurator hinzugefügt werden (im Standardprofil enthalten). Wichtig sind hier vor allem die Knoten configuratorGroupName und configuratorOptionName die im CSV-Export zu einer gemeinsamen Spalte configuratorOptions zusammengesetzt werden. Der Aufbau ist hier so: Gruppe:Option. Bitte beachte auch die Hinweise zu möglichen Fehlerquellen weiter unten. 

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Artikelvarianten minimal (default_article_variants_minimal)". 
Eine Beispiel XML-Datei findest Du hier: ArticleVariantsMinimal.xml
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleVariantsMinimal.csv

Bilder

Um Bilder zu importieren dient der Datensatz image. Es ist zu unterscheiden, ob ein Bild via URL oder ein Bild aus dem Media Manager importiert werden soll.

Aktuell ist ein Export von Bildern via CLI nicht möglich.

Unterstützte Felder inkl. Beschreibung

Datensatz: Image

Aktuell können sowohl bestehende Bilder aus der Medienverwaltung über diesen Datensatz zugewiesen werden, als auch neue Bilder angelegt werden. Für einen separaten Bildimport muss das Profil article images genutzt werden, welches zusätzliche Bildoptionen bietet.

Feldname Beschreibung Gültige Werte Besonderheiten
id id aus s_article_images nummerisch Optional
variantId Artikel-Detail ID nummerisch Optional
articleId Artikel-ID nummerisch Optional
path Name des Artikelbildes Text Optional
imageUrl HTTP-Link zum Bild Text Erforderlich bei Neuanlage des Bildes
main Vorschaubild boolean Pflichtfeld
mediaId mediaID nummerisch Pflichtfeld, Auszulesen aus der s_media
thumbnail Thumbnail nummerisch Optional

Um einem bestehenden Artikel ein Bild über einen HTTP-Link hinzu zu fügen, kann dieses Profil verwendet werden. 

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Artikelbilder über URL (default_article_images_url)". 
Eine Beispiel XML-Datei findest Du hier: ArticleImageURL.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleImageURL.csv 

Similars/ Ähnliche Artikel

Der Datensatz similar ist für die ähnlichen Artikel zuständig. Die Verknüpfung erfolgt hier über die Spalte "ordernumber", also die Artikelnummer des Produktes.

Unterstützte Felder inkl. Beschreibung

Datensatz: Similar

Feldname Beschreibung Gültige Werte Besonderheiten
ordernumber Bestellnummer des Artikels alphanummerisch  
mainnumber Bestellnummer des Hauptartikels alphanummerisch  
similarId Artikle-ID des/der ähnlichen Artikel nummerisch Optional (mehrere Artikel werden mit einem Pipe getrennt)

Minimal zuweisen von Similars zu bestehendem Artikel

Dieses Profil kann verwendet werden, wenn einem bestehenden Artikel, in diesem Beispiel SW10002.3, ein bestehender ähnlicher Artikel zugewiesen werden soll. 

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Ähnliche Artikel (default_similar_articles)". 
Eine Beispiel XML-Datei findest Du hier: ArticleSimilar.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleSimilar.csv 

Neuanlage von Artikel und ähnlichem Artikel

In diesem Profil werden zwei neue Artikel erstellt, zwischen denen eine Ähnliche-Artikel-Beziehung besteht. Hier muss zunächst der ähnliche Artikel erstellt weren, damit dieser dem zweiten neuen Artikel zugewiesen werden kann. 

Das Profil für diesen Import kann hier heruntergeladen werden: ArticleNewSimilar.json 
Eine Beispiel XML-Datei findest Du hier: ArticleNewSimilar.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleNewSimilar.csv 

Zubehörartikel

Mithilfe des Datensatzs accessory kannst Du Zubehörartikel importieren. Auch hier wird die Bestellnummer als Referenz verwendet.

Unterstützte Felder inkl. Beschreibung

Datensatz: Accessory

Feldname Beschreibung Gültige Werte Besonderheiten
accessoryId Accessory-ID nummerisch Optional
ordernumber Bestellnummer alphanummerisch Bestellnummern der Zubehör-Artikel mit einem Pipe getrennt
articleId Artikel-ID nummerisch Optional

Minimal zuweisen von Accessories zu bestehendem Artikel

Mit diesem Profil werden einem bestehenden Artikel bestehende Zubehörartikel zugewiesen. Es sind nur die IDs der jeweiligen Artikel nötig um die Verknüpfung herzustellen. 

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Artikel Zubehör (default_article_accessories)". 
Eine Beispiel XML-Datei findest Du hier: ArticleAccessory.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleAccessory.csv 

Neuanlage von Artikel und Zubehörartikel

In diesem Profil werden zwei neue Artikel erstellt, zwischen denen eine Zubehör-Artikel-Beziehung besteht. Hier muss zunächst der Zubehörartikel erstellt werden, damit dieser dem zweiten neuen Artikel zugewiesen werden kann. In diesem Profil werden zwei neue Artikel erstellt, zwischen denen eine Ähnliche-Artikel-Beziehung besteht. Hier muss zunächst der ähnliche Artikel erstellt weren, damit dieser dem zweiten neuen Artikel zugewiesen werden kann. 

Das Profil für diesen Import kann hier heruntergeladen werden: ArticleNewAccessory.json 
Eine Beispiel XML-Datei findest Du hier: ArticleNewAccessory.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleNewAccessory.csv 

Preise

Mit diesem Profil kannst Du Kundengruppen-Preise importieren. Hierzu dient der Datensatz Price (bereits im Standardprofil enthalten). Wenn Preise für eine andere Kundengruppe als EK importiert werden möchten, ist zwingend der Knoten priceGroup für das Profil notwendig. Für jede Kundengruppe wird im CSV-Export eine neue Preisspalte übergeben. Du kannst also mit price_EK oder price_H die Preise für unterschiedliche Kundengruppen importieren. Dieser Datensatz ist zwingend notwendig um einen neuen Artikel importieren zu können, da der Preis eine Mindestangabe ist.

Über den Import können keine Staffelpreise am Artikel entfernt oder angepasst werden, bspw. Änderungen an den einzelnen Staffeln. Die Staffelpreise sollten nur über das gesonderte Profil Artikelpreise importiert werden und nicht über die allgemeinen Artikel-Profile. Informationen zu dem Artikelpreis-Profil findest Du hier.

Unterstützte Felder inkl. Beschreibung

Datensatz: Price

Feldname Beschreibung Gültige Werte Besonderheiten
variantId Artikel-Detail ID nummerisch Optional
articleId Artikel-ID nummerischer Optional
price Artikelpreis nummerisch Verkaufspreis
pseudoPrice Pseudopreis nummerisch Optional
priceGroup Kundengruppe nummerischer Wert Kürzel der Kundengruppe

Preise aktualisieren bei bestehendem Artikel

Mit diesem Profil werden Kundengruppen-Preise zu einem bestehenden Artikel importiert. Hierzu dient der Datensatz Price

Das Profil für diesen Import kann hier heruntergeladen werden: ArticlePrices.json 
Eine Beispiel XML-Datei findest Du hier: ArticlePrices.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticlePrices.csv 

Eigenschaften

Um Eigenschaften zu importieren dient der Datensatz Properties. Es können auch Eigenschaften angegeben werden, welche noch nicht vorhanden sind. Diese werden dann im Zuge des Imports neu erstellt. Die beiden Knoten propertyValueName und propertyOptionName werden im CSV-Export und Import zu einer Spalte propertyValueName zusammengefasst. Der Aufbau ist hier so: Gruppe:Option. Eigenschaften lassen sich ab Version 1.0.2 importieren.

Unterstützte Felder inkl. Beschreibung

Datensatz: PropertyValues

Feldname Beschreibung Gültige Werte Besonderheiten
articleId ID des Artikels nummerisch Optional
propertyGroupName Name des Eigenschaften-Sets Text Pflichtfeld
propertyValueId Artikel-ID nummerisch Optional
propertyValueName Name der Eigenschaften-Option Text Pflichtfeld
propertyValuePosition Positionsnummer nummerisch Optional
propertyOptionName Name der Eigenschaften-Gruppe Text Pflichtfeld

Eigenschaften aktualisieren bei bestehendem Artikel

Dieses Profil dient dazu Eigenschaften bei einem bestehenden Artikel zu aktualisieren. 

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Artikel Eigenschaften hinzufügen (default_article_properties)". 
Eine Beispiel XML-Datei findest Du hier: ArticleProperties.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleProperties.csv 

 

Neuanlage mit noch nicht bestehenden Eigenschaften

Mit diesem Profil wird ein Artikel neu angelegt, welchem neue Eigenschaften zugewiesen werden. 

Das Profil für diesen Import kann hier heruntergeladen werden: ArticlePropertiesNew.json 
Eine Beispiel XML-Datei findest Du hier: ArticlePropertiesNew.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticlePropertiesNew.csv 

 

Kategorien

Der Datensatz category dient der Kategoriezuordnung. Eine Verknüpfung zur Kategorie ist nur über die Kategorie-ID möglich. Diese kann bspw. über das Kategoriemodul im Backend ausgelesen werden. Mehrere Kategorien werden durch ein Pipe getrennt.

Unterstützte Felder inkl. Beschreibung

Datensatz: Category

Feldname Beschreibung Gültige Werte Besonderheiten
categoryId Kategorie-ID nummerisch Pflichtfeld
categoryPath Kategorie-Pfad text Optional
articleId Artikel-ID nummerisch Optional

Kategorie hinzufügen zu bestehendem Artikel

Dieses Profil dient dazu bei einem bestehenden Artikel eine weitere Kategorie hinzuzufügen. 

Das Profil zu diesem Import kannst Du aus der Liste der Standard-Profile auswählen unter dem Namen "Artikel Kategorien (default_article_categories)". 
Eine Beispiel XML-Datei findest Du hier: ArticleCategories.xml 
Eine Beispiel CSV-Datei kannst Du hier finden: ArticleCategories.csv 

 

Mögliche Fehlerquellen und Lösungsansätze

configuratorGroup

Im Standard des Import-Export-Moduls werden im Import die Optionen und Gruppen der Varianten durch einen Doppelpunkt getrennt. Wenn nun ein Doppelpunkt im Gruppen-Namen enthalten ist, kann dies zu Fehlern im Import führen, da der Importer nicht mehr definieren kann, wo die Option anfängt. (Bspw. Bitte auswählen::rot). In diesem Fall kann man mit den Conversions im Export arbeiten und dann für die Spalte configGroupName eine Conversion anlegen. Hier reicht es aus mit einem Replace zu arbeiten: {$configGroupName|replace:":":""}

Im Anschluss kannst Du die Gruppe dann wieder über die Datenbank anpassen und ein ":" hinzufügen. Hierzu musst Du nur die Spalte name in der Tabelle s_article_configurator_groups anpassen.