Import der Produkte

URL des Webservice : https://sws.spartoo.de/mp/xml_import_products.php

Dieser Webservice dient dazu, jegliche Produktinformation auf der Webseite von Spartoo zu aktualisieren.

Für jede gesendete Produkt-ID wird der Webservice einen Fehlercode zurückschicken, der angibt, ob alles ordnungsgemäß funktioniert hat. Bei fatalen Fehlern wird die ID nicht erstellt (fatal), bei anderen Fehlern schon (warning). Bei letzteren wird aber empfohlen sie zu korrigieren.

Häufigkeit der Anrufe:
- Wenn dieser Webservice benutzt wird um einen kompletten UpLoad des Katalogs zu machen, bitten wir Sie diesen nur ein Mal alle 6 Std. zu benutzen.
- Wenn dieser Webservice benutzt wird um teilweise einen UpLoad (nur für einige Produkte zu machen), akzeptieren wir eine maximale Häufigkeit von einem Anruf alle 10 Minuten.

Dieser Webservice funktioniert im Modus "Aktualisierung" und nicht im Modus "Überschreibung". Das heißt, dass die Produkte die nicht in die XML-Datei geschickt werden, nicht gelöscht werden.
Um ein Produkt von der Webseite zu entfernen, müssen Sie seinen Lagerbestand auf 0 setzen.

Liste der Parameter

Die Parameter dieses Webservice müssen unbedingt per POST übertragen werden

Parameter Beschreibung
partenaire Muss Ihre Benutzeridentifizierung enthalten:
xml XML-Zeichenfolge die die Produktliste enthält


Optionale Parameter, die in POST übertragen werden kann

Paramètre Beschreibung
Stärke_Beschreibung Bitte eine 1 setzen wenn Sie die Update-Produktbeschreibungen aktivieren wollen: löschen der vorhandenen Beschreibungen, bearbeiten der Beschreibung eines Produktes, das nicht mehr am Lager ist (Null-Inventar Produkt), etc.
force_overwrite Bitte die Zahl 1 einsetzen wenn Sie einen Integrationsfehler korrigieren möchten. Beachten Sie dass direkt im Anschluss der Katalog ohne overwrite zu gesendet werden muss.


Format des XML-Parameters


Die Textfelder müssen durch CDATA Tags geschützt sein, wenn sie Sonderzeichen enthalten, durch die das XML ungültig wird.
Die Textfelder müssen durch CDATA Tags geschützt sein wenn Sie Sonderzeichen enthalten, durch die die XML-Datei ungültig wäre.

Format für ein Land

<root>
	<products>
		<product>
			<reference_partenaire>string</reference_partenaire>
			<product_name>string</product_name>
			<manufacturers_name>string</manufacturers_name>
			<product_sex>char</product_sex>
			<product_price>float</product_price>
			<product_quantity>int</product_quantity>
			<color_id>int</color_id>
			<product_style>int</product_style>
			<product_description>string</product_description>
			<product_color>string</product_color>
			<heel_height>float</heel_height>
			<country_origin>int</country_origin>
			<code_hs>int</code_hs>
			<size_list>
				<size>
					<size_name>string</size_name>
					<size_quantity>int</size_quantity>
					<size_reference>string</size_reference>
					<ean>string</ean>
					<code_hs>int</code_hs>
					<product_price>float</product_price>
					<discount>
						<startdate>timestamp</startdate>
						<stopdate>timestamp</stopdate>
						<price_discount>float</price_discount>
						<rate>int</rate>
						<sales/>
					</discount>
				</size>
				<!-- ... Mehrere "size" Tags möglich ... -->
			</size_list>
			<product_composition>int</product_composition>
			<voering_composition>int</voering_composition>
			<first_composition>int</first_composition>
			<zool_composition>int</zool_composition>
			<photos>
				<url1>url</url1>
				<url2>url</url2>
				<url3>url</url3>
				<url4>url</url4>
				<url5>url</url5>
				<url6>url</url6>
				<url7>url</url7>
				<url8>url</url8>
			</photos>
			<discount>
				<startdate>timestamp</startdate>
				<stopdate>timestamp</stopdate>
				<price_discount>float</price_discount>
				<rate>int</rate>
				<sales>0/1</sales>
			</discount>
			<extra_infos>
				<info>
					<id>int</id>
					<value>float</value>
				</info>
				<!-- ... Mehrere "info" Tags möglich ... -->
			</extra_infos>
			<selections>
				<selection>int</selection>
				<!-- ... Mehrere "selection" Tags möglich ... -->
			</selections>
		</product>
		<!-- ... Mehrere "product" Tags möglich ... -->
	</products>
</root>


Format für mehrere Länder

<root>
	<products>
		<product>
			<reference_partenaire>string</reference_partenaire>
			<manufacturers_name>string</manufacturers_name>
			<product_sex>char</product_sex>
			<product_quantity>int</product_quantity>
			<color_id>int</color_id>
			<product_style>int</product_style>
			<heel_height>float</heel_height>
			<country_origin>int</country_origin>
			<code_hs>int</code_hs>
			<languages>
				<language>
					<code>string</code>
					<product_name>string</product_name>
					<product_description>string</product_description>
					<product_color>string</product_color>
					<product_price>float</product_price>
					<discount>
						<startdate>timestamp</startdate>
						<stopdate>timestamp</stopdate>
						<price_discount>float</price_discount>
						<rate>int</rate>
						<sales />
					</discount>
				</language>
				<!-- ... Mehrere "language" Tags möglich ... -->
			</languages>
			<size_list>
				<size>
					<size_name>string</size_name>
					<size_quantity>int</size_quantity>
					<size_reference>string</size_reference>
					<ean>string</ean>
					<code_hs>int</code_hs>
					<languages>
						<language>
							<code>string</code>
							<product_price>float</product_price>
							<discount>
								<startdate>timestamp</startdate>
								<stopdate>timestamp</stopdate>
								<price_discount>float</price_discount>
								<rate>int</rate>
								<sales/>
							</discount>
						</language>
						<!-- ... Mehrere "language" Tags möglich ... -->
					</languages>
				</size>
				<!-- ... Mehrere "size" Tags möglich ... -->
			</size_list>
			<product_composition>int</product_composition>
			<voering_composition>int</voering_composition>
			<first_composition>int</first_composition>
			<zool_composition>int</zool_composition>
			<photos>
				<url1>url</url1>
				<url2>url</url2>
				<url3>url</url3>
				<url4>url</url4>
				<url5>url</url5>
				<url6>url</url6>
				<url7>url</url7>
				<url8>url</url8>
			</photos>
			<extra_infos>
				<info>
					<id>int</id>
					<value>float</value>
				</info>
				<!-- ... Mehrere "info" Tags möglich ... -->
			</extra_infos>
			 <selections>
				<selection>int</selection>
				<!-- ... Mehrere "selection" Tags möglich ... -->
			</selections>
		</product>
		<!-- ... Mehrere "product" Tags möglich ... -->
	</products>
</root>


Beschreibung der Felder der Eingangs-XML


Tag Beschreibung Erforderlich
reference_partenaire Produktkennung des Händlers. Es ist die SKU, die ein Produkt einer Marke in einer bestimmten Farbe identifiziert
Die Produktkennung darf nur alphanumerische Zeichen sowie die Zeichen - (Bindestrich) _ (Unterstrich) und . (Punkt).
Ja
product_name Modellname
Es darf nicht die Kategorie, Farbe oder Marke des Produkts enthalten
Es sollte auch keine Zeichen oder HTML-Tags enthalten
Nein
manufacturers_name Markenname des Produkts Ja
code_idu Produkt-UDI-Code (siehe AGEC-Gesetz) Nein
product_sex Geschlecht des Produkts
> Siehe mögliche Werte
Ja
product_price Produktpreis in Euro (nicht erforderlich für die Preise der Größen) Ja/ Nein
color_id Farbe für Menüfilter
Wenn es nicht angegeben ist, wird das Produkt nicht angezeigt wenn ein Kunde einen Filter auf die Farbe verwendet
> Siehe mögliche Werte
Nein
product_style Produktkategorie
> Siehe mögliche Werte
Ja
product_description Produktbeschreibung. Erscheint auf dem Produktblatt. Nein
product_color Freitextfeld für Farbe. Erscheint auf dem Produktblatt. Nein
product_quantity Gesamtbestand eines Produkts
Wird ignoriert, wenn ein oder mehrere size_quantity-Tags für das Produkt erkannt werden.
Für One-Size-fits-all-Produkte ist ein product_quantity-Tag obligatorisch, wenn das size_quantity-Tag nicht ausgefüllt ist.
Nein
size Liste der Größen und deren Bestand.
Optional für Produkte ohne Größen ( Taschen / Accessoires ). Sonst ist es obligatorisch.
Ja / Nein
Größenname Größenname
> Siehe mögliche Werte
Ja
Größe_Menge Für jede Größe muss der Lagerbestand angegeben werden.
Um ein Produkt zu deaktivieren, muss der Bestand auf 0 gesetzt werden.
Wenn der Bestand bei 0 liegt, wird das Produkt deaktiviert und erscheint nicht mehr auf Spartoo.
Ja
size_reference Produkthinweis auf Größe.
Dieses Feld wird nur verwendet, um beim Export von Bestellungen oder Retouren zurückgegeben zu werden. Es empfiehlt sich, diese Referenz zu generieren, indem Sie die Felder reference_partner und size_name mit einem Unterstrich "_" verketten.
Nein
ean EAN von Produkt zu Größe
Obligatorisch für den Logistikdienst
Nein / Ja
Bilder Liste der Fotos und ihrer URL.
Mindestens ein Foto ist Pflicht.
Wir empfehlen mindestens 3 Fotos. Wir können maximal 8 Fotos integrieren.
Das Foto wird nur einmal hochgeladen und dann auf unseren Servern gespeichert, nachdem es auf Spartoo-Abmessungen angepasst wurde.
Fotos müssen im jpg-Format vorliegen, quadratisch und mindestens 350x350 Pixel groß sein. Wenn sie größer oder gleich 800 x 800 Pixel sind, wird es einen möglichen Zoom auf der Website geben.
Ja
url1, url2 ... url8 Links zu Fotos
Sie müssen uns einen Link zu jedem Foto zur Verfügung stellen. Der Dateiname darf nur alphanumerische Zeichen sowie die Zeichen „-“ (Bindestrich), „_“ (Unterstrich) enthalten und "." (Punkt). Leerzeichen und Akzentbuchstaben (z. B. é, à und ñ) sind nicht erlaubt.
Ja
country_origin Herkunftsland des Produkts
> Siehe mögliche Werte
Nein
code_hs Produktzollcode Nein
Absatzhöhe Absatzhöhe in Zentimetern (cm). Nur für Damenschuhe. Sie müssen einen Punkt verwenden, um die Einheit von den Dezimalstellen zu trennen (Beispiel: 1.5). Nein
Produktzusammensetzung Zusammensetzung des Produktstamms. Nur für Schuhe und Taschen
> Siehe mögliche Werte
Nein
voering_composition Zusammensetzung der Produktauskleidung. Nur für Schuhe und Taschen
> Siehe mögliche Werte
Nein
first_composition Zusammensetzung der Einlegesohle des Produkts. Nur für Schuhe
> Siehe mögliche Werte
Nein
zool_composition Zusammensetzung der Laufsohle des Produkts. Nur für Schuhe
> Siehe mögliche Werte
Nein
Rabatt Ermöglicht es Ihnen, einen Rabatt auf das Produkt oder die Größe anzuwenden.
Das Feld Preis im Feld Rabatt ist für den prozentualen Preisnachlass aus dem Feld Produktpreis.
Das Feld price_discount des Felds discount betrifft den rabattierten Preisnachlass des Produkts.fixed. Der angezeigte prozentuale Rabatt wird berechnet.
Wenn beide Felder vorhanden sind, hat das Feld price_discount Vorrang vor dem Feld rate.
Wenn der Rabatt sofort gewährt wird, muss das Feld Startdatum nicht angegeben werden. Wenn das Tag sales angegeben ist, handelt es sich bei der Aktion um eine Verkaufsaktion. Ansonsten handelt es sich um eine klassische Promotion. Durch die Angabe dieses Parameters können Produkte während der Verkaufsperioden auf der Verkaufsseite vorhanden sein.
Nein
zusätzliche_info Ermöglicht die Angabe zusätzlicher Informationen je nach Produkttyp.
Jede Information besteht aus einer ID ( > Werte anzeigen ) und einem Wert in numerischer Form.
Nein
Auswahl Ermöglicht es Ihnen, die Nutzungskontexte des Produkts anhand einer Liste von IDs zu spezifizieren.
Der Satz verfügbarer Kontexte wird hier bereitgestellt.
Nein


Beispiel XML-Parameter

<root>
	<products>
		<product>
			<reference_partenaire>98</reference_partenaire>
			<product_name><![CDATA[ALL STAR HI]]></product_name>
			<manufacturers_name><![CDATA[Converse]]></manufacturers_name>
			<product_sex>M</product_sex>
			<product_price>64.99</product_price>
			<product_quantity>5</product_quantity>
			<color_id>8</color_id>
			<product_style>10010</product_style>
			<product_description><![CDATA[Das Modell Chuck Taylor All Star von Converse ist ein außergewöhnliches Modell: Ein absolutes Must-Have. 
Dieser hohe Sneaker mit einem Schaft aus Stoff und einem klassischen unifarbenen Aufdruck ist zeitlos und immer modisch!
]]></product_description>
			<product_color><![CDATA[rot]]></product_color>
			<country_origin>73</country_origin>
			<code_hs>64059090</code_hs>
			<size_list>
			 <size>
				<size_name>38</size_name>
				<size_quantity>4</size_quantity>
				<size_reference>98_38</size_reference>
				<ean>123456789011></ean>
			 </size>
			 <size>
				<size_name>39</size_name>
				<size_quantity>1</size_quantity>
				<size_reference>98_39</size_reference>
				<ean>123456789012></ean>
			 </size>
			</size_list>
			<product_composition>4</product_composition>
			<photos>
				<url1>https://imgext.spartoo.com/photos/98/98/98_350_A.jpg</url1>
				<url2>https://imgext.spartoo.com/photos/98/98/98_350_B.jpg</url2>
				<url3>https://imgext.spartoo.com/photos/98/98/98_350_C.jpg</url3>
				<url4>https://imgext.spartoo.com/photos/98/98/98_350_D.jpg</url4>
				<url5>https://imgext.spartoo.com/photos/98/98/98_350_E.jpg</url5>
				<url6>https://imgext.spartoo.com/photos/98/98/98_350_F.jpg</url6>
				<url7>https://imgext.spartoo.com/photos/98/98/98_350_G.jpg</url7>
				<url8>https://imgext.spartoo.com/photos/98/98/98_350_H.jpg</url8>
			</photos>
			<discount>
				<startdate>1199170800</startdate>
				<stopdate>1204354800</stopdate>
				<rate>20</rate>
			</discount>
		</product>
	</products>
</root>

Format der zurückgeschickten XML-Datei


<root>
	<products>
		<product>
			<reference_partenaire>string</reference_partenaire>
			<status>string</status>
			<action>string</action>
			<errors>
				<error>
					<id>int</id>
					<description>string</description>
					<level>string</level>
				</error>
				<!-- ... Mehrere "error" Tags möglich ... -->
			</errors>
		</product>
		<!-- ... Mehrere "product" Tags möglich ... -->
	</products>
	<errors>int</errors>
</root>


Liste der Fehlercodes des Webservice


Code Beschreibung
1 Kein Parameterfehler
-1 Der Parameter partenaire fehlt oder ist leer
-2 Der Partnerparameter existiert nicht
-11 Der Parameter xml fehlt oder ist leer
-15 XML-Sytnaxfehler, überprüfen Sie Ihre XML-Datei
-428 Ihr Kundenkonto wurde nun desaktiviert. Sie können nun keine weiteren Anfragen an den Webservice stellen.
-429 Sie haben innerhalb der zur Verfügung stehenden Zeit zu viele Anfragen an den Webservice gestellt.

Beschreibung der Felder der XML-Antwort


Tag Beschreibung
reference_partenaire ID des Partnerproduktes
status OK wenn das Produkt in die Datenbank eingefügt wird
KO wenn das Produkt nicht eingefügt werden konnte
Liste der möglichen Aktionen:
  • created : das Produkt wurde erstellt.
  • not created : das Produkt wurde nicht erstellt. Hinweis: ein Produkt kann im Status 'OK' sein, aber nicht erstellt worden sein nach einigen 'Warning'.
  • updated : das Produkt ist aktualisiert worden.
  • not updated : das Produkt wurde nicht aktualisiert. Hinweis: ein Produkt kann eine Status 'OK' haben, aber es wurde nicht aktualisiert nach einigen 'Warning'.
errors Liste der Verarbeitungsfehler:
  • ID: Fehlercode Produkt
  • Level: Level des Fehlers
    • Warning: Verhindert nicht die Integration des Produktes
    • Fatal: Blockiert die Integration des Produktes
  • Beschreibung: Textbeschreibung Fehler


Liste der Fehlercodes


Code Level Beschreibung
1 Fatal Die Partnerreferenz ist nicht lang genug
2 Fatal Die Partnerreferenz ist ungültig, Sie kann nur alphanumerische Zeichen enthalten
3 Warning Produktname ist nicht angegeben
4 Fatal Marke ist nicht angegeben
5 Fatal Das Geschlecht ist ungültig, die einzigen gültigen Variablen sind: H , F , M, K , G , B
6 Fatal Der Preis muss eine Zahl sein
7 Fatal Der Preis muss positiv sein
8 Warning Der Preis scheint sehr hoch zu sein ( > 1000€ )
81 Fatal Der Produktpreis kann nicht höher als € 180 sein
9 Fatal Die Anzahl muss einen ganze Zahl sein
10 Fatal Die Anzahl muss positiv sein
11 Warning Die Farbe xxx existiert nicht: Das Produkt wird mithilfe der Farbfilter nicht gefunden werden können
13 Fatal Die Kategorie xxx existiert nicht
14 Warning Die Produktbeschreibung ist leer
15 Warning Die Farbfeld ist leer
16 Warning Keine Größenliste: Benutzung der Einheitsgröße
17 Warning Die Zusammensetzung ist zwar angegeben, aber ungültig
18 Fatal Das Foto ist obligatorisch
19 Warning Der Diskontsatz muss zwischen 0 und 100 liegen, der Rabatt wird nicht berücksichtigt
20 Warning Die Größe xxx existiert nicht
201 Fatal EAN-Code ist erforderlich
202 Fatal Der EAN Code xxx der Referenz xxx in der Größe xxx wurde von der Referenz xxx bereits verwendet.
205 Fatal Partnerreferenz zu lang
23 Warning Das Foto xxx ist kleiner als 350x350: Es wird online eine schlechte Qualität aufweisen
24 Warning Das Foto xxx ist kleiner als 350x350: Es wird online nicht angezeigt
25 Fatal Größe xxx: Es ist nicht möglich, den Lagerbestand zu regulieren
26 Fatal Ausverkauft: Das Produkt wird nicht kreiert werden
27 Fatal Es ist unmöglich, Zugang zum Foto 1 zu bekommen (url xxx)
28 Warning Es ist unmöglich, Zugang zum xxx zu bekommen (url xxx)
30 Fatal Die Anzahl der Größe xxx ist zu hoch ( Maximale Anzahl : xxx)
33 Fatal Ein Produkt dieser Art xxx gehört nicht zu dieser Kategorie xxx
34 Fatal Das Wort xxx ist gesperrt und wird nicht angezeigt werden.
35 Fatal Produktname zu lang, er darf nur den Namen des Modells enthalten. Fehler im Land/in den Ländern: xxx
341 Fatal Das Wort xxx ist gesperrt und wird nicht in der Produktbeschreibung angezeigt werden.
36 Fatal Das Produkt kann nicht importiert werden: Das Produkt weist eine Duplizierung der Größe/Farbe auf.
37 Fatal Dieses Produkt enthält keine Sprachinformationen für eine aktive Website.
38 Fatal Die Größe xxx kann nur einmal verwendet werden, für die Referenz xxx
39 Warning Die Partnerreferenz ist mehrmals im Feed vorhanden, Duplikate wurden ignoriert
451 Fatal Kein Preis für die Größe xxx des Landes xxx. (für einen Preisnachlass erforderlich)
452 Warning Enddatum des überschrittenen Discounts für die Größe xxx des Landes xxx.
453 Fatal "rate" (xxx) ungültig für die Größe xxx des Landes xxx.
454 Fatal "rate" (xxx) > 85% für die Größe xxx des Landes xxx.
455 Warning Die Größe xxx mit einem Preis auf ein Land (xxx), das für das Produkt nicht definiert ist.
456 Warning Die Größe xxx hat einen Preis auf xxx, der mit dem Gesamtpreis in diesem Land identisch ist.


Beispiele XML-Antwort


Beispielantwort auf einen KO-Aufruf eines Webdienstes :

<root>
	<products></products>
	<errors>-1</errors>
</root>

Beispielantwort auf einen KO-Aufruf eines Webdienstes :

<root>
	<products>
		<product>
		<reference_partenaire>EEAJBCC</reference_partenaire>
		<status>KO</status>
		<action>not created</action>
		<errors>
			<error>
				<id>14</id>
				<description>Die Produktbeschreibung ist leer</description>
				<level>warning</level>
			</error>
			<error>
				<id>4</id>
				<description>Marke ist nicht angegeben</description>
				<level>fatal</level>
			</error>
		</errors>
		</product>
		<product>
			<reference_partenaire>KJHGFDS</reference_partenaire>
			<status>OK</status>
			<action>created</action>
		</product>
	</products>
	<errors>1</errors>
</root>

XSD-Dateien

Mehrländer-XSD-Dateien