Actualización de productos
URL del Webservice : https://sws.spartoo.es/mp/xml_maj_stock_batch.phpEste webservice sirve para actualizar el stock de productos en el site de Spartoo.
Para cada producto enviado, el webservice devolverá un código que indica si todo salió bien o no.
Este webservice se utiliza para actualizar el stock de productos. Se puede utilizar para enviar todo el catálogo o solo algunos productos.
Este webservice funciona en modo "Actualizacion" y no en modo "Overwrite". Por ello, los productos que no se envíen en XML no se eliminarán.
Para eliminar un producto de la página, hay que enviarlo con stock 0.
Lista de parámetros
Los parámetros de este servicio web deben pasarse en POSTparámetros | Descripción |
---|---|
partenaire | Debe contener su identificador único: |
xml | Cadena de caracteres XML que contiene la lista de elementos para actualizar |
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.
<catalogue> <products> <product> <reference_partenaire>string</reference_partenaire> <size_list> <size> <size_reference>string</size_reference> <size_quantity>int</size_quantity> <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> <!-- ... Varias etiquetas "languages" posibles ... --> </size> <size> <size_reference>string</size_reference> <size_quantity>int</size_quantity> </size> </size_list> </product> <product> <reference_partenaire>string</reference_partenaire> <size_list> <size> <size_reference>string</size_reference> <size_quantity>int</size_quantity> </size> <size> <size_reference>string</size_reference> <size_quantity>int</size_quantity> </size> </size_list> </product> </products> </catalogue>
Descripción de los campos de XML de entrada
Etiqueta | Descripción | Obligatorio |
---|---|---|
reference_partenaire |
Referencia que identifica un modelo de una marca en un color preciso El identificador del producto solo puede contener caracteres alfanuméricos, así como los caracteres - (guión medio) _ (guión bajo) y . (punto). |
Sí |
product_quantity |
Stock total de un producto Se ignora si se detectan una o más etiquetas size_quantity para el producto. Para productos de talla única, es obligatorio incluir una etiqueta product_quantity si la etiqueta size_quantity no está completada. |
No |
Size |
Lista de tallas y su stock. Obligatorio para productos con tallas. Opcional para productos sin tallas ( Bolsos/ Accesorios ). |
Sí / No |
size_quantity | Para cada talla, se debe especificar el stock. Para desactivar un producto, se debe poner el stock en 0. Cuando el stock es 0, el producto se desactiva y ya no aparece en Spartoo. |
Sí |
size_reference | Referencia que identifica la talla de un producto. | Sí |
product_price | Precio para la talla | No |
discount |
Permite publicar un precio con descuento. Se puede indicar de dos maneras. El campo rate del campo discount indica el porcentaje de descuento sobre el precio de referencia, que se indica en el campo product_price. El campo price_discount del campo discount indica el precio final con el descuento ya aplicado. El porcentaje de descuento sobre el precio inicial sera calculado automáticamente y se mostrará en la ficha producto. Si los dos campos estan presentes, el campo price_discount es prioritario sobre el campo rate. Si el descuento es inmediato, no es necesario precisar la startdate. Si el campo stopdate no esta completado, la promocion durara por defecto un mes. Si el campo sales esta completado con el valor 1, la promoción sera considerada Rebajas. Si no, sera una promocion ordinaria. Indicar este parámetro permite que los productos con descuento aparezcan en la sección de Rebajas del site francés. |
No |
Ejemplo de parámetro xml
<catalogue> <products> <product> <reference_partenaire>98</reference_partenaire> <size_list> <size> <size_reference>98_38</size_reference> <size_quantity>5</size_quantity> <languages> <language> <code>FR</code> <product_price>100.00</product_price> <discount> <startdate>1199170800</startdate> <stopdate>1204354800</stopdate> <price_discount>90.00</price_discount> <rate>10</rate> <sales/> </discount> </language> <!-- ... Varias etiquetas "language" posibles ... --> </languages> <!-- ... Varias etiquetas "languages" posibles ... --> </size> <size> <size_reference>98_39</size_reference> <size_quantity>7</size_quantity> </size> </size_list> </product> <product> <reference_partenaire>158_tailor</reference_partenaire> <size_list> <size> <size_reference>158_37</size_reference> <size_quantity>2</size_quantity> </size> <size> <size_reference>158_36</size_reference> <size_quantity>0</size_quantity> </size> </size_list> </product> </products> </catalogue>
Formato XML devuelto
<catalogue> <products> <product> <reference_partenaire>string</reference_partenaire> <size_list> <size> <size_reference>string</size_reference> <errors>int</errors> </size> </size_list> </product> <!-- ... Varias etiquetas "product" posibles ... --> </products> </catalogue>
Lista de los códigos de error de la webservice
Código | Descripción |
---|---|
1 | Sin error de parámetros |
-1 | El parámetro partenaire no ha pasado a parámetro o está vacio |
-2 | El parámetro partenaire no existe |
-11 | El parámetro xml no ha pasado a parámetro o está vacio |
-13 | El parámetro products_size_reference no ha pasado a parámetro o está vacio |
-15 | Error de síntesis XML, verifica tu fichero XML |
-18 | El stock es el mismo que en la base de datos y por eso no ha sido actualizado |
-20 | Imposible actualizar el stock. La talla no es válida para este producto, el stock para este producto y esta talla es 0. |
-31 | Esta talla_referencia no existe |
-428 | Tu cuenta ha sido desactivada. Ya no puede realizar llamadas a servicios web |
-429 | Has realizado demasiadas llamadas a este servicio web durante esta hora |
Ejemplo de devolución XML
Ejemplo de respuesta para una llamada servicio web KO :
<catalogue> <products></products> <errors>-1</errors> </catalogue>
Ejemplo de respuesta para una llamada servicio web OK :
<catalogue> <products> <product> <reference_partenaire>EEAJBCC</reference_partenaire> <size_list> <size> <size_reference>EEAJBCC_38</size_reference> <errors>1</errors> </size> </size_list> </product> <product> <reference_partenaire>KJHGFDS</reference_partenaire> <size_list> <size> <size_reference></size_reference> <errors>-13</errors> </size> </size_list> </product> </products> </catalogue>