Import van de producten

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

Deze webservice dient om producten op de site van Spartoo aan te maken en om ze te vernieuwen.
Voor elk product zal de webservice een foutcode terugsturen om aan te geven of alles goed verlopen is of niet. Bepaalde fouten leiden tot een blokkering (fataal), andere niet (warning).

Deze webservice werkt als "Update" en niet als "Verwijderend". Dit wilt zeggen dat producten die niet in het XML bestand werden verzonden, niet verwijderd worden.
Om een product van de site te verwijderen, dient u de voorraad ervan op 0 te zetten.

Lijst met parameters

De parameters van deze webservice dienen verplicht in POST te zijn

Parameter Omschrijving
partenaire Dit dient uw unieke ID te bevatten:
xml XML karakters die de lijst van producten bevatten


Optionele parameters die kunnen worden doorgegeven in POST

Parameter Beschrijving
force_description Te zetten op 1 indien je productbeschrijvingen spoedig wenst up te daten: verwijderen van bestaande productbeschrijvingen, wijzigen van een productbeschrijving bij voorraad 0 etc.
force_overwrite Te zetten op 1 indien je fouten gelinkt aan een belangrijke prijswijziging wenst te corrigeren


Formaat van de XML parameter


De velden dienen beschermd te zijn door CDATA tags indien ze speciale karakters bevatten die de XML ongeldig zouden kunnen maken.

Formaat enkel 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>
				<!-- ... Meerdere tags "size" mogelijk ... -->
			</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>
				<!-- ... Meerdere tags "info" mogelijk ... -->
			</extra_infos>
			<selections>
				<selection>int</selection>
				<!-- ... Meerdere tags "selection" mogelijk ... -->
			</selections>
		</product>
		<!-- ... Meerdere tags "product" mogelijk ... -->
	</products>
</root>


Formaat meerdere landen

<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>
				<!-- ... Meerdere tags "language" mogelijk ... -->
			</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>
						<!-- ... Meerdere tags "language" mogelijk ... -->
					</languages>
				</size>
				<!-- ... Meerdere tags "size" mogelijk ... -->
			</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>
				<!-- ... Meerdere tags "info" mogelijk ... -->
			</extra_infos>
			 <selections>
				<selection>int</selection>
				<!-- ... Meerdere tags "selection" mogelijk ... -->
			</selections>
		</product>
		<!-- ... Meerdere tags "product" mogelijk ... -->
	</products>
</root>


Omschrijving van de velden van het XML databestand


/Nee
Tag Omschrijving Verplicht
reference_partenaire Productreferentie van de partner. Dit is de sku die een product van een merk in een bepaalde kleur identificeert
De product referentie mag enkel alfanumerieke karakters bevatten en de karakters - (streepje) _ (laag streepje) en . (punt).
Ja
product_name Naam van heent model
Het veld dient niet de categorie, kleur of merk van het product te bevatten
Nee
manufacturers_name Naam van het merk van het product Ja
product_sex Geslacht van het product
> Bekijk de mogelijke waarden
Ja
product_price Prijs van het product in euro (niet vereist voor maatprijzen) Ja
color_id Kleur bestemd voor de filters van het menu
Indien de kleur niet is opgegeven, zal het product niet verschijnen worden wanneer een klant filtert op kleur
> Bekijk de mogelijke kleuren
Nee
product_style Categorie van het product
> Bekijk de mogelijke waarden
Ja
product_description Omschrijving van het product. Verschijnt in de productfiche. Nee
product_color Vrij tekstveld voor de kleur. Verschijnt in de productfiche. Nee
size Lijst van de maten en de voorraad ervan.
Facultatief voor de producten zonder maat (Tassen/Accessoires). Zoniet verplicht.
Ja / Nee
size_name Naam van de maat
> Bekijk de mogelijke waarden
Ja
size_quantity Voorraad van het product voor deze maat Ja
size_reference Productreferentie per maat.
Dit veld dient enkel ingevuld te zijn voor de export van bestellingen en retourzendingen.
Non
ean EAN van het product per maat Nee
foto's Lijst van de foto's en hun url
Op ze minst één foto is verplicht
We raden aan om minimaal 3 foto's te hebben. Wij kunnen maximaal 8 foto's intergreren.
De foto wordt slechts één keer geüpload en wordt opgeslagen op onze servers, nadat het formaat is aangepast naar Spartoo-afmetingen.
Foto's moeten in jpg-formaat, vierkant en minimaal 350x350 pixels zijn. Als ze groter zijn dan of gelijk zijn aan 800x800 pixels, is er een mogelijke zoomlens op de site.
Ja
url1, url2 ... url8 Link naar de foto's
Graag een link naar elke foto verstrekken. De bestandsnaam mag alleen alfanumerieke tekens bevatten, evenals de tekens "-" (koppelteken), "_" (onderstrepingsteken) en "." (DOT). Spaties en letters met accenten (bijv. É, à en ñ) zijn niet toegestaan.
Ja
heel_height Hakhoogte in centimeter (cm). Alleen voor damesscheonen. Moet een veelvoud van 0,5 zijn. Nee
product_composition Samenstelling van de schacht van het product. Enkel voor schoenen
> Bekijk de mogelijke waarden
Nee
voering_composition Samenstelling van de binnenvoering van het product. Enkel voor schoenen
> Bekijk de mogelijke waarden
Nee
first_composition Samenstelling van de binnenzool van het product. Enkel voor schoenen
> Bekijk de mogelijke waarden
Non
zool_composition Samenstelling van de buitenzool van het product. Enkel voor schoenen
> Bekijk de mogelijke waarden
Nee
discount Laat toe een korting toe te passen op het product.
Het veld rate bij het veld discount is de korting op de prijs in percentage berekend op het veld product_price.
Het veld price_discount van het veld discount is de korting in vaste prijs. Het weergegeven kortingspercentage wordt berekend.
Indien de twee velden worden weergegeven, heeft het veld price_discount voorrang op het veld rate.
Indien de discount onmiddellijk ingaat, is het niet nodig om het veld startdate in te geven. Als de tag sales staat aangevinkt, is deze aanbieding een sales aanbieding. Indien dat niet zo is, gaat het om een klassieke aanbieding. Deze parameter aanvinken laat toe een artikel te tonen op de pagina SALE tijdens de salesperiode.
Nee
selections Geeft toegang om de gebruikerscontext van een product door middel van een id-lijst te specificeren.
Het sjabloon voor de beschikbare contexten is hier te vinden.
Non


Voorbeeld van een 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[Het meest mytische model van Converse, de Chuck Taylor All Star, is een must-have. 
Zie hier een hoge versie met een textielen schacht en een klassieke opdruk. Het is een tijdloos en modieus model!]]></product_description>
			<product_color><![CDATA[Rood]]></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>

Formaat van de teruggestuurde XML data


<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>
				<!-- ... Meerdere tags "error" mogelijk ... -->
			</errors>
		</product>
		<!-- ... Meerdere tags "product" mogelijk ... -->
	</products>
	<errors>int</errors>
</root>


Lijst met de foutcodes van de webservice


Code Omschrijving
1 Geen fouten in de parameters
-1 De parameter partenaire werd niet als parameter aangemaakt of is leeg
-2 De partenaire parameter bestaat niet
-11 De parameter xml werd niet als parameter aangemaakt of is leeg
-15 Opmaakfout XML, gelieve uw bestand na te kijken
-428 Uw account is gedeactiveerd. U kunt niet langer gebruik maken van de webservices
-429 U heeft te veel gebruik gemaakt van deze webservice voor dit uur

Omschrijving van de velden van het XML antwoord


Tag Omschrijving
reference_partenaire Product ID van de verkoper
status OK indien het product werd ingevoerd in de database
KO indien het product niet kon worden ingevoerd
action Lijst met mogelijke handelingen:
  • created: het artikel is aangemaakt.
  • not created: het artikel is niet aangemaakt. Opmerking: het is mogelijk dat een artikel de status OK heeft maar dat het niet is aangemaakt door een 'Warning'.
  • updated: het artikel werd vernieuwd.
  • not updated : het artikel werd niet vernieuwd. Opmerking: het is mogelijk dat een artikel de status OK heeft maar dat het niet vernieuwd werd door een 'Warning'.
errors Lijst met fouten:
  • id: code voor fout met product
  • level: foutniveau
    • Warning: verhindert de integratie van het product niet
    • Fatal: blokkeert de integratie van het product
  • omschrijving: tekstomschrijving van de fout


Lijst met codes van de productfouten


Code Level Description
1 Fatal De partner referentie is niet lang genoeg
2 Fatal De partner referentie is niet geldig, deze bestaat slechts uit alfanumerieke tekens
3 Warning Productnaam is niet aangegeven
4 Fatal Het merk is niet aangegeven
5 Fatal Het type is niet geldig, u kunt alleen filteren op: H , F , M, K , G , B
6 Fatal De prijs moet een cijfer zijn
7 Fatal De prijs moet een positief cijfer zijn
8 Warning De prijs lijkt ons erg hoog (> 1000 )
81 Fatal De prijs kan niet hoger zijn dan 180.00 euro
9 Fatal De hoeveelheid moet een heel getal zijn
10 Fatal De hoeveelheid moet een positief getal zijn
11 Warning De kleur xxx bestaat niet: u zult het product niet kunnen vinden met de filters
13 Fatal De categorie xxx bestaat niet
14 Warning De product omschrijving is leeg
15 Warning De kleur omschrijving is leeg
16 Warning Geen lijst met maten, gebruik slechts één maat
17 Warning De samenstelling is aangegeven, maar niet geldig
18 Fatal Foto 1 is verplicht
19 Warning Het kortingspercentage moet tussen 0 en 100 liggen, de korting wordt niet in acht genomen
20 Warning De maat xxx bestaat niet
201 Fatal De code EAN is verplicht
202 Fatal De EAN-code xxx op de referentie xxx in maat xxx wordt al gebruikt.
205 Fatal Partnerreferentie te lang
23 Warning Het formaat van de foto xxx is kleiner dan 350x350: dit zal een beeld van slechte kwaliteit opleveren op de website
24 Warning Het formaat van de foto xxx is kleiner dan 350x350: deze zal niet afgebeeld worden op de website
25 Fatal Maat xxx: Onmogelijk de voorraad te regulariseren
26 Fatal Geen voorraad: het product zal niet worden aagemaakt
27 Fatal Onmogelijk foto 1 (url xxx) te bekijken
28 Warning Onmogelijk foto xxx (url xxx) te bekijken
30 Fatal Het aantal van deze maat xxx is te groot (Quantité max : xxx)
33 Fatal Een product van genre xxx kan niet behoren tot de categorie xxx
34 Fatal Het woord xxx is geblokkeerd en zal niet meer in beeld komen.
35 Fatal Productnaam te lang, mag alleen modelnaam bevatten. Fout(en) in land(en): xxx
341 Fatal Het woord xxx is geblokkeerd en zal niet meer in beeld verschijnen bij de beschrijving van het product.
36 Fatal Kan het product niet importeren: het product heeft een duplicatie van het maat / kleur-paar.
37 Fatal U heeft geen geldige taalinformatie opgegeven voor dit product
38 Fatal De maat xxx kan slechts eenmaal worden gedefinieerd met referentie xxx
39 Warning The partner reference is present several times in the flow, duplicates have been ignored
451 Fatal Geen prijs voor de maat xxx van land xxx. (nodig voor een korting)
452 Warning De einddatum van de korting is overschreden voor maat xxx van land xxx.
453 Fatal "tarief" (xxx) ongeldig voor maat xxx van land xxx.
454 Fatal "tarief" (xxx) > 85% voor maat xxx van land xxx.
455 Warning De maat xxx heeft een prijs in een land (xxx) dat niet is gedefinieerd voor het product.
456 Warning De maat xxx heeft een prijs xxx identiek aan de totale prijs in dit land.


Voorbeelden van XML retour


Voorbeeld KO :

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

Voorbeeld OK :

<root>
	<products>
		<product>
		<reference_partenaire>EEAJBCC</reference_partenaire>
		<status>KO</status>
		<action>not created</action>
		<errors>
			<error>
				<id>14</id>
				<description>De product omschrijving is leeg</description>
				<level>warning</level>
			</error>
			<error>
				<id>4</id>
				<description>Het merk is niet aangegeven</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-bestanden

XSD-bestanden Meerdere landen