ProductUpdate. Permite la actualización de uno o más productos utilizando como llave el campo SellerSku.
La respuesta del API es asincrónica y genera la creación de un Feed; recuerda siempre ver el detalle de un feed (consulta aquí) para revisar si el producto fue creado correctamente o bien tiene observaciones en el rechazo.
El cuerpo del request es un XML; aquellos campos que sean enviados con valor vacío no serán procesados y serán ignorados. Es posible actualizar uno o más productos.
Estructura mínimaPara realizar una actualización de producto, la estructura mínima del request debe incluir:
SellerSkuOperatorCodecorrespondiente al país (faclpara Chile,fapepara Perú,facopara Colombia), declarado dentro deBusinessUnitoBusinessUnits, según el formato utilizado.- Al menos un atributo que desees modificar.
Ten en cuenta que solo se actualizarán los campos incluidos en la solicitud. Los atributos que no se envíen permanecerán sin cambios.
Datos de la solicitud
Tamaño de lote recomendadoPara un uso eficiente de los feeds, agrupa tus productos en lotes. Se recomienda enviar entre 500 y 1.000 productos por solicitud, dependiendo del tamaño y complejidad de los datos incluidos.
A continuación, te presentamos ejemplos de request de actualizaciones comunes que podrías realizar
<?xml version="1.0" encoding="UTF-8" ?>
<Request>
<Product>
<SellerSku>Test1</SellerSku>
<ProductData />
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Stock>40</Stock>
</BusinessUnit>
</BusinessUnits>
</Product>
<Product>
<SellerSku>Test2</SellerSku>
<ProductData />
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Stock>20</Stock>
</BusinessUnit>
</BusinessUnits>
</Product>
<Product>
<SellerSku>Test3</SellerSku>
<ProductData />
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Stock>132</Stock>
</BusinessUnit>
</BusinessUnits>
</Product>
</Request><?xml version="1.0" encoding="UTF-8" ?>
<Request>
<Product>
<SellerSku>Test1</SellerSku>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Price>59990</Price>
<SpecialPrice>35990</SpecialPrice>
<SpecialFromDate>2023-05-26 00:00:00</SpecialFromDate>
<SpecialToDate>2023-10-31 23:59:59</SpecialToDate>
</BusinessUnit>
</BusinessUnits>
</Product>
<Product>
<SellerSku>Test2</SellerSku>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Price>59990</Price>
<SpecialPrice>35990</SpecialPrice>
<SpecialFromDate>2023-05-26 00:00:00</SpecialFromDate>
<SpecialToDate>2023-10-31 23:59:59</SpecialToDate>
</BusinessUnit>
</BusinessUnits>
</Product>
</Request>
<?xml version="1.0" encoding="UTF-8" ?>
<Request>
<Product>
<SellerSku>SKU-TEST-12345</SellerSku>
<Description>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</Description>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Stock>50</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
</Product>
<Product>
<SellerSku>SKU-TEST-999999</SellerSku>
<Name>PRODUCT TEST - TEST - TEST</Name>
<Description>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</Description>
<Color>Verde</Color>
<ColorBasico>Rojo</ColorBasico>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Price>59990</Price>
<SpecialPrice>35990</SpecialPrice>
<SpecialFromDate>2023-05-26 00:00:00</SpecialFromDate>
<SpecialToDate>2023-10-31 23:59:59</SpecialToDate>
<Stock>40</Stock>
<Status>inactive</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<ConditionType>Nuevo</ConditionType>
<PackageHeight>11</PackageHeight>
<PackageWidth>11</PackageWidth>
<PackageLength>11</PackageLength>
<PackageWeight>4</PackageWeight>
</ProductData>
</Product>Algunos ejemplos de atributos que podrías modificar:
| Campo | Tipo | Descripción | Obligatorio | Sección |
|---|---|---|---|---|
| SellerSku | String | Identificador único del producto dentro del sistema. | Sí | Product |
| Name | String | Nombre del producto mostrado al cliente. | Sí | Product |
| Description | String | Descripción HTML del producto. Entre 6 y 25.000 caracteres. | Sí | Product |
| Brand | String | Marca del producto. | Sí | Product |
| ProductId | Numberfield | Código armonizado (EAN, UPC, ISBN). | No | Product |
| Price | Decimal | Precio del producto. | Sí | BusinessUnits.BusinessUnit |
| SpecialPrice | Decimal | Precio con descuento. Obligatorio si se proporcionan fechas de oferta. | No | BusinessUnits.BusinessUnit |
| SpecialFromDate | DateTime | Fecha de inicio de la oferta. Formato: YYYY-MM-DD HH:MM:SS. Obligatorio si se envía SpecialPrice. | Condicional, solo si se envía SpecialPrice | BusinessUnits.BusinessUnit |
| SpecialToDate | DateTime | Fecha de fin de la oferta. Formato: YYYY-MM-DD HH:MM:SS. Obligatorio si se envía SpecialPrice. | Condicional, solo si se envía SpecialPrice | BusinessUnits.BusinessUnit |
| Stock | Integer | Cantidad de stock disponible. | Sí | BusinessUnits.BusinessUnit |
| Status | String | Estado del producto por operador: active o inactive. | Sí | BusinessUnits.BusinessUnit |
| ConditionType | String | Condición del producto; valor depende de la categoría, por ejemplo, New. | Sí | ProductData |
| PackageHeight | Integer | Altura del paquete (en cm). | Sí | ProductData |
| PackageWidth | Integer | Ancho del paquete (en cm). | Sí | ProductData |
| PackageLength | Integer | Largo del paquete (en cm). | Sí | ProductData |
| PackageWeight | Decimal | Peso del paquete (en kg). | Sí | ProductData |
| TaxPercentage | String | Porcentaje de impuesto del producto. | Condicional (Obligatorio solo en Colombia) | ProductData |
Datos de la respuesta
Utilice la información de respuesta generada para recuperar más detalles del Feed a través de otra llamada a la API FeedStatus . Consulte los detalles de la respuesta a través de FeedList. Tenga en cuenta que mientras realiza la llamada ProductUpdate, sólo hacemos una validación básica. Se realizará una validación completa mientras se procesa el feed, por lo que puede ser posible que , al enviar 100 actualizaciones de productos, sólo 90 de ellas se actualicen realmente.
Errores
| Código de error | Mensaje |
|---|---|
| 1000 | Could not save product: %s (No se pudo guardar el producto) |
| 1000 | Format Error Detected (Error de formato detectado) |
| 8888 | Feed rows exceeded, max size allowed is %d and you uploaded %d items. Please next time try to upload less items (Se superó el tamaño máximo de filas de Feeds. Tratar de subir menos elementos la próxima vez) |
Marcado en la descripción
La descripción del producto puede ser texto sin formato así:
<Description>la descripción</Description>También puede contener ciertas etiquetas HTML, incluidas ul, li y span. Si HTML está incrustado, debe escaparse como datos de caracteres, así:
<Description><![CDATA[<div>la descripción <b>negrita</b></div>]]></Description>