Integración por flujo CSV o XML

Introducción

Los productos de vuestro site pueden ser integrados en Spartoo por flujo CSV o XML.
En este caso, el fichero CSV o XML contendrá todas las informaciones de todos vuestros productos que deberá ser accesible desde la web por nuestro robot.

Nuestro robot descargará aproximadamente cada hora el fichero e integrará las informaciones que estén reflejadas en él.
El fichero debe estar actualizado para evitar que productos agotados aparezcan en Spartoo.

El fichero debe de contener todas las informaciones necesarias de categorización de vuestros productos y la cuantificación de vuestro stock.

Cada campo puede ser obligatorio, opcional o facultativo. Si uno de los campos obligatorios está vacío o mal rellenado, el producto no será integrado.
Encontrarás más abajo, algunos modelos de ficheros CSV o XML. El modelo del fichero no es impuesto por Spartoo. No obstante, tu fichero debe contener todas las informaciones obligatorias.

Idealmente, tu fichero debe utilizar la codificación UTF-8. En caso contrario, gracias por informarnos para configurar el tratamiento del fichero.
Para los ficheros CSV, el fichero debe utilizar el punto y coma ';'. En caso contrario, gracias por informarnos para configurar el tratamiento del fichero.


Si no tienes un servidor para compartir archivos (servidor ftp) Spartoo te aconseja la utilización Dropbox.
más información

Definición

  • Producto o Producto parent : Para Spartoo, un producto corresponde a un modelo y a un color.
    Por lo tanto un modelo con dos colores, serán dos productos (es decir, dos identificadores de productos diferentes)
    En cambio, un producto puede tener varias tallas.

  • Producto child: Para Spartoo, un producto child corresponde a un producto y una talla distinta.
    Por lo tanto para un modelo que tiene un color y dos tallas, habrá dos "productos child" (es decir, un solo identificador de producto y dos identificadores de producto child)
    El stock debe obligatoriamente estar asociado a un producto child. Es por otra parte la única información obligatoria para los productos child. Las otras informaciones esencialmente conciernen a los productos parents y pueden ser omitidas para los productos child

Lista de informaciones para flux CSV

Nombre del campo Campo Descripción
SKU / Identificador de producto Obligatorio El SKU identifica cada producto partner.
Puede contener caracteres alfanuméricos así como caracteres - (barra) _ (barra baja) y . (punto).
Un identificador puede ser asignado para cada producto child (por ejemplo, el código EAN ), pero no es obligatorio.
Parent / Child Obligatorio para el CSV Este campo es obligatorio en el caso en el que el fichero contenga una línea por producto y una línea por el producto child
En este caso necesitamos un medio para identificar si una línea es un producto o un producto child
Este campo puede por ejemplo contener "Parent" para los productos parents y "Child" para los productos child
Parent SKU Obligatorio para el CSV Este campo es obligatorio en el caso donde el fichero contenga una línea por producto y una línea por producto child
Para cada producto child, hace falta que sepamos a qué producto parent corresponde el producto child.
Este campo debe de contener el identificador producto del producto parent.
Nombre del modelo Recomendado Este campo debe contener únicamente el nombre del modelo, no debe de contener otras informaciones (categoría, color, marca)
Nombre de la marca Obligatoria
Género Obligatorio Género del producto. Debes utilizar los códigos siguientes :
  • H : Hombre
  • F : Mujer
  • M : Mixto adulto
  • B : Niño
  • G : Niña
  • K : Mixto niños
Precio del producto Obligatorio Obligatoriamente debe estar en moneda 'EUR'.
El precio se aplica al producto parent. No es posible tener diferentes precios para los productos child.
Categoría Obligatorio Contiene el código de la categoría del producto. Debes evitar las macro categorías (en rojo) y utilizar las otras, más precisas.


Ver la lista de todos los códigos de categorías
Promoción Recomendado Puede contener la tasa de descuento deseada, o bien el precio con el descuento.
Todas las reducciones serán redondeadas (hacia abajo) por Spartoo por pasos del 5 %. Por ejemplo, una tasa de descuento del 27 % será redondeada al 25 %.
Tipo de descuento Recomendado Si una promoción es de tipo rebajas, se debe precisar en este campo.
Fechas de promociones Facultativo Las promociones pueden ser configuradas con una fecha de comienzo y una fecha final.
En el caso de no marcar una fecha de inicio, la promoción comenzará inmediatamente.
Esto puede ser interesante para los saldos (liquidaciones) de indicar la fecha de principio de la promoción, los descuentos serán aplicados directamente, sin tener que esperar la próxima integración del fichero.
Talla Obligatoria Contiene la talla del producto.
Si el campo no está ó esta vacío, el producto será considerado como un producto de talla única (por ejemplo una mochila).
En el caso de tallas textiles US, hay que hacer saber si la talla es EU o US: Bien indicando US en la talla, o bien adjuntar un campo que indique si la talla es US o no.
Cantidad en stock Obligatorio Para cada talla, el stock debe ser precisado.
Para desactivar un producto, hay que poner el stock a 0.
Cuando el stock está a 0, el producto está desactivado y no aparece en Spartoo.
EAN Obligatorio Código estándar internacional que identifica cada producto y que permite estar presente en google shopping y en otros comparadores de precio.
Fotos Obligatorio Al menos una foto es obligatoria.
Te recomendamos un mínimo de 3 fotos. Nosotros podemos integrar hasta un máximo de 8 fotos.
Hay que indicar el enlace de la foto. El nombre del archivo debe contener solo caracteres alfanuméricos y caracteres "-" (guión medio), "_" (guión bajo) y "." (punto). Las letras acentuadas (por ex. é, à y ñ) no son autorizado.
La foto será descargada que una sola vez, después será guardada en nuestros servidores, después será re-dimensionada a las dimensiones de Spartoo.
Las fotos deben estar en formato jpg, cuadradas y con un mínimo de 350x350 pixels. Si son superiores o iguales a 800x800 pixels, habrá una zona de zoom posible en el site.
Descriptivo del producto Recomendado Descripción del producto.
NO es posible insertar HTML, con la excepción del punto a la línea: '
'. Javascript no está autorizado .
Será visible en la ficha del producto.
Filtro de color Recomendado Identificador Spartoo para el color. Utilizado para los filtros de los menús.
Si no facilitas este identificador, es posible utilizar la herramienta de matching colores para hacer corresponder los nombres de los colores con los colores de Spartoo.

Ver la lista de todos los códigos de color
Color Recomendado Campo texto para el color. Aparecerá en la ficha del producto
Composición Facultativo Únicamente para los zapatos.
Podemos integrar 4 composiciones diferentes:
  • Composición del corte
  • Composición del forro
  • Composición de la plantilla
  • Composición de la suela
No tenemos la herramienta de matching para las composiciones, hay que utilizar obligatoriamente los códigos de Spartoo.

Ver la lista de todos los códigos composición
Altura del tacón Facultativo Únicamente para los productos zapatos de mujer (zapatos de tacón, botas, etc...)
Altura del tacón en cm.
Temporada Obligatorio para la MPO Temporada del artículo, compuesto del código "OI" (Otoño/Invierno) ou "PV" (Primavera/Verano) seguido del año.
(ej.: OI21, PV22)

Lista de informaciones para el flujo XML

Referencia de la talla de un producto.
Este campo sirve únicamente para ser reenviado en los exports de los pedidos o devoluciones. Una buena práctica es generar esta referencia concatenando los campos reference_partenaire y size_name uniéndolos con un guión bajo "_".
Etiqueta Descripción Obligatorio
reference_partenaire Identificador producto partner
Es el sku que identifica cada modelo y color de una marca. El identificador del producto solo puede contener caracteres alfanuméricos y los caracteres - (guión medio) _ (guión bajo) y . (punto).
product_name Nombre comercial del modelo
No debe contener otra información como la categoría, el color o la marca del producto. Tampoco debe contenter caracteres o etiquetas html.
No
manufacturers_name Nombre de la marca del producto.
code_idu Code IDU del producto (ver la ley AGEC) No
product_sex Género del producto.
> Ver los valores posibles
product_price Precio del producto en euros (no obligatorio para el precio de las tallas). / No
color_id Código del color, destinado a los filtros de los menús.
Si no se precisa, el producto no aparecerá si un cliente filtra por color.
> Ver valores posibles
No
product_style Categoría del producto
> Ver los valores posibles
product_description Descriptivo del producto. Aparece en la ficha del producto. No se admite html o javascript. No
product_color Campo de texto libre para indicar el nombre del color. Aparece en la ficha del producto. No
product_quantity Stock total de un producto
Se ignora cuando se detectan uno o varios campos size_quantity para el producto.
Para los productos de talla única se requiere indicar el product_quantity si el size_quantity no está registrado.
No
size Lista de tallas y de su stock.
Obligatorio para los productos con talla. Opcional para los productos sin tallas ( Bolsos / Accesorios ).
/ No
size_name Talla del producto.
> Ver los valores posibles
size_quantity Para cada talla, se debe precisa el stock.
Pour desactivar un producto, el stock debe enviarse a 0.
Cuando todas las tallas de un producto llevan stock 0, el producto se desactiva y no aparece en Spartoo.
size_reference No
ean EAN del producto al nivel de la talla. No
photos Lista de fotos y sus url.
Es obligatorio tener al menos una foto.
Recomendamos tener 3 fotos. Podemos integrar un máximo de 8 fotos.
La foto será descargada una sola vez, luego será guardada en nuestro servidor, tras haberla redimensionado para adaptarla al standard Spartoo.
Las fotos deben tener formato jpg, ser cuadradas y tener al menos 350x350 píxeles. Si las fotos son superiores o iguales a 800x800 píxeles, el cliente podrá hacer zoom.
url1, url2 ... url8 Enlaces de las fotos.
Hay que proporcionar un enlace para cada foto. El nombre del archivo debe contener solo caracteres alfanuméricos y caracteres como "-" (guión), "_" (guión bajo) y "." (punto). Los espacios, así como las letras acentuadas (por ejemplo: é, à y ñ) no son autorizadas.
heel_height Altura del tacón en centímetros (cm). Únicamente para los zapatos de mujer. Debe ser múltiplo de 0,5. No
product_composition Composición del corte del producto. Únicamente para los zapatos.
> Ver los valores posibles
No
voering_composition Composición del forro del productos. Únicamente para los zapatos
> Ver los valores posibles
No
first_composition Composición de la plantilla del producto. Únicamente para los zapatos
> Ver los valores posibles
No
zool_composition Composición de la suela del producto. Únicamente para los zapatos
> Ver los valores posibles
No
discount Permite aplicar una promoción a un producto o una talla.
El campo rate del campo discount concierne a la reducción del precio en porcentaje con respecto al campo product_price.
El campo price_discount del campo discount concierne al precio final con descuento del producto. El porcentaje de descuento mostrado será calculado.
Si los dos campos están presentes, el campo price_discount es prioritario sobre el campo rate.
Si el descuento es inmediato, no es necesario precisar el campo startdate. Si la etiqueta sales se precisa, la promoción será una promoción de Rebajas. Si no, se tratará de una promoción clásica. Indicar este parámetro permite a los productos aparecer en la página de Rebajas durante el periodo de Rebajas.
No
extra_infos Permite especificar informaciones complementarias dependientes del tipo de producto.
Cada información está formada por un id ( > Ver los valores ) y de un valor en forma numérica.
No


Formato del parámetro xml


Los campos de texto deben de estar protegidos por etiquetas CDATA si contienen carácteres especiales que harán el XML inválido.

Formato mono país

<root>
   <products>
	   <product>
			<reference_partenaire>string</reference_partenaire>
			<product_name>string</product_name>
			<manufacturers_name>string</manufacturers_name>
			<code_idu>string</code_idu>
			<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>
				<!-- ... Varias etiquetas "size" posibles ... -->
			</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>
				<!-- ... Varias etiquetas "info" posibles ... -->
			</extra_infos>
			<selections>
				<selection>int</selection>
				<!-- ... Varias etiquetas "selection" posibles ... -->
			</selections>
	   </product>
	   <!-- ... Varias etiquetas "product" posibles ... -->
   </products>
</root>


Formato multi país

<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>
					<code_idu>string</code_idu>
					<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>
				<!-- ... Varias etiquetas "language" posibles ... -->
			</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>
						<!-- ... Varias etiquetas "language" posibles ... -->
					</languages>
				</size>
				<!-- ... Varias etiquetas "size" posibles ... -->
			</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>
				<!-- ... Varias etiquetas "info" posibles ... -->
			</extra_infos>
			 <selections>
				<selection>int</selection>
				<!-- ... Varias etiquetas "selection" posibles ... -->
			</selections>
	   </product>
	   <!-- ... Varias etiquetas "product" posibles ... -->
   </products>
</root>


Ejemplos de ficheros

Ficheros CSV

Ficheros CSV con producto padre / producto niño clásico

Ficheros XML

Ejemplo de fichero XML Mono país

Ejemplo de fichero XML Multi país

Ficheros XSD

Fichero XSD Multi país

Lista de códigos de error de producto


Código Nivel Descripción
1 Fatal La referencia asociada no es suficientemente larga
2 Fatal La referencia asociada no es válida , sólo puede contener caracteres alfanuméricos
3 Warning El nombre del producto no está especificado
4 Fatal La marca no está especificada
5 Fatal El género XXX no es válido, los únicos valores posibles son: H , F , H, K , G , B
6 Fatal El precio debe ser un número
7 Fatal El precio debe ser positivo
8 Warning El precio nos parece demasiado elevado ( > 1.000 €)
9 Fatal La cantidad debe ser un número entero
10 Fatal La cantidad debe ser positiva
11 Warning El color xxx no existe : el producto no estará disponible a través de los filtros de color
13 Fatal La categoría xxx no existe
14 Warning La descripción del producto está vacía
15 Warning El color a mostrar está vacío
16 Warning No hay lista de tallas : utilizar la talla única
17 Warning La composición está especificada pero no es válida
18 Fatal La fotografía 1 es obligatoria
19 Warning La tasa de descuento de la promoción debe ser entre 0 y 100 , la promoción no se tendrá en cuenta
20 Warning La talla xxx no existe
200 Fatal La talla xxx no existe para la marca xxx.
201 Fatal Se requiere el código EAN
202 Fatal El código EAN xxx de la referencia xxx en la talla xxx ya está utilizado.
203 Warning El código EAN es demasiado corto o termina por '000'
204 Warning El código EAN xxx está presente en varios ejemplares del flux.
205 Fatal Referencia Partner demasiado larga
23 Warning La foto xxx es más pequeña que 350x350 : se verá de mala calidad en el sitio
24 Warning La foto xxx es más pequeña que 350x350 : no se mostrará en el sitio
25 Fatal Talla xxx : Imposible regular el stock
26 Fatal No hay stock : el producto no será creado
27 Fatal No se puede acceder a la foto 1 ( url xxx)
28 Warning No se puede acceder a la foto xxx ( url xxx )
281 Fatal La foto es demasiado grande (xxxo) (xxxo) (xxxo) La foto es demasiado grande (xxxo)
30 Fatal La cantidad xxx es muy elevada (Quantité max : xxx)
31 Warning Tu cuenta no está activa en el site xxx
32 Fatal No se ha localizado información producto para este pays
33 Fatal Un producto de genero xxx no puede pertenecer a la categoría xxx
34 Fatal La palabra xxx ha sido blacklistada y no debería aparecer.
35 Fatal Nombre del producto es demasiado largo, solo debe contener el nombre del modelo. Error(es) en el/los país/es xxx
341 Fatal La palabra xxx ha sido blacklistada y no debería aparecer en la descripción del producto.
36 Fatal No se puede importar el producto: el producto tiene una duplicación del par tamaño / color.
38 Fatal la talla xxx solo se puede configurar una vez como referencia xxx
39 Warning La referencia del partner está presente varias veces en el flujo, los duplicados han sido ignorados
42 Warning La temporada no es válida
43 Warning La información del producto xxx corresponde a un producto_tipo = xxx y no a xxx.
44 Warning La categoría xxx no corresponde a un tipo de producto xxx pero xxx.
451 Fatal No hay precio para la talla xxx del país xxx. (necesario para un descuento)
452 Warning Fecha de finalización del descuento expirada para la talla xxx del país xxx.
453 Fatal "ratio" (xxx) inválido para la talla xxx del país xxx.
454 Fatal "ratio" (xxx) > 85% para la talla xxx del país xxx.
455 Warning La talla xxx tiene un precio en un país (xxx) no definido por el producto.
456 Warning La talla xxx tiene un precio en xxx idéntico al precio global en ese país