Permite la creación de uno o varios productos, esta API es asincrónica y genera la creación de un Feed.
Advertencia
Recuerda siempre revisar el detalle del feed para confirmar si el producto fue creado correctamente o si presenta observaciones o rechazos.
Importante para modelo internacional
Para los vendedores que operan bajo el modelo internacional, es obligatorio incluir en la creación de productos el nombre en el idioma local (NameEn = USA, NameCN = China) en complemento al nombre de publicación (Name), debido a razones aduaneras de importación de productos.
Datos de la solicitud
El cuerpo del request debe ser un XML. Todos los campos enviados con valores vacíos serán ignorados y no serán procesados. Para optimizar el uso de feeds, se recomienda enviar los productos en lotes. El tamaño sugerido es de hasta 500 productos por solicitud, aunque este número puede ajustarse según la cantidad y complejidad de los datos incluidos.
Una de las consideraciones más importantes al momento de crear productos es identificar si la categoría permite multivariaciones. Las categorías con soporte para multivariación permiten agrupar productos similares (por ejemplo, por talla o color) en una única publicación dentro de Falabella.com, como se muestra en la siguiente imagen:

¿Qué es una categoría con múltiples variaciones?
Existen categorías, como vestuario, calzado o accesorios, que permiten crear productos con múltiples variaciones (por ejemplo, color y talla). Estas variaciones deben estructurarse correctamente a nivel de producto para que se publiquen correctamente.
¿Cómo saber si una categoría admite múltiples variaciones?
Debes consultar la API GetCategoryAttributes
.
- Si la respuesta incluye un atributo con
FeedName = "Variation"
, entonces la categoría no admite múltiples variaciones. - Si ese atributo no aparece, la categoría sí admite múltiples variaciones.
¿Cómo identificar los atributos que generan variaciones?
Una vez confirmado que la categoría admite múltiples variaciones, los atributos que las generan deben cumplir ambas condiciones:
IsGlobalAttribute = 0
GroupName = "Variation"
Todos estos atributos deben declararse a nivel de Product
, no dentro de ProductData
.
Ejemplo de atributo que genera variación:
<Attribute>
<Label>Color básico variant</Label>
<Name>color_basico_variant</Name>
<FeedName>ColorBasicoVariant</FeedName>
<GlobalIdentifier>ATT000003974</GlobalIdentifier>
<GroupName>Variation</GroupName>
<isMandatory>1</isMandatory>
<IsGlobalAttribute>0</IsGlobalAttribute>
<Description>Basic color of the variant</Description>
<ProductType>simple</ProductType>
<InputType>dropdown</InputType>
<AttributeType>option</AttributeType>
<ExampleValue></ExampleValue>
<MaxLength></MaxLength>
</Attribute>
¿Cómo estructurar múltiples variaciones?
Todas las variaciones deben vincularse a un mismo ParentSku
, que corresponde al SellerSku
del producto considerado como padre.
Tienes dos formas de declarar el ParentSku
:
-
Puedes especificar el
ParentSku
al crear cada variación. Esto aplica tanto si el producto padre ya existe como si se incluye en la misma solicitud junto a sus variaciones. -
Si no se especifica el
ParentSku
, automáticamente se tomará elSellerSku
de la primera variación como el producto padre.
Ejemplo XML de creación con múltiples variaciones
<?xml version="1.0" encoding="UTF-8"?>
<Request>
<Product>
<SellerSku>SKU-TEST-999999</SellerSku>
<ParentSku>SKU-TEST-999999</ParentSku>
<Name>PRODUCT TEST - TEST - TEST</Name>
<PrimaryCategory>811</PrimaryCategory>
<Description>Lorem ipsum dolor sit amet, consectetur adipiscing elit...</Description>
<Brand>EPATE</Brand>
<ProductId>430450</ProductId>
<Variation>US 7</Variation>
<Color>Blanco</Color>
<ColorBasico>Blanco</ColorBasico>
<Talla>39</Talla>
<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>36</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<ConditionType>Nuevo</ConditionType>
<PackageHeight>10</PackageHeight>
<PackageWidth>10</PackageWidth>
<PackageLength>10</PackageLength>
<PackageWeight>1</PackageWeight>
<DisciplinaZapatillas>Tenis</DisciplinaZapatillas>
<Genero>Mujer</Genero>
</ProductData>
</Product>
<Product>
<SellerSku>SKU-TEST-88888888</SellerSku>
<ParentSku>SKU-TEST-999999</ParentSku>
<Name>PRODUCT TEST - TEST - TEST</Name>
<PrimaryCategory>811</PrimaryCategory>
<Description>Lorem ipsum dolor sit amet, consectetur adipiscing elit...</Description>
<Brand>EPATE</Brand>
<ProductId>888888</ProductId>
<Variation>US 7</Variation>
<Color>Blanco</Color>
<ColorBasico>Blanco</ColorBasico>
<Talla>39</Talla>
<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>36</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<ConditionType>Nuevo</ConditionType>
<PackageHeight>10</PackageHeight>
<PackageWidth>10</PackageWidth>
<PackageLength>10</PackageLength>
<PackageWeight>1</PackageWeight>
<DisciplinaZapatillas>Tenis</DisciplinaZapatillas>
<Genero>Mujer</Genero>
</ProductData>
</Product>
</Request>
Ejemplo de diferentes llamados
Nota:
Estos ejemplos son solo referenciales. Siempre se deben considerar los campos obligatorios y opcionales según el endpoint GetCategoryAttributes.
Para más detalles, consulta la documentación: GetCategoryAttributes.
<?xml version="1.0" encoding="UTF-8" ?>
<Request>
<Product>
<SellerSku>SKU-TEST-12345</SellerSku>
<ParentSku>SKU-TEST-12345</ParentSku>
<Name>PRODUCT TEST - TEST - TEST</Name>
<PrimaryCategory>811</PrimaryCategory>
<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>
<Brand>EPATE</Brand>
<ProductId>4066749430450</ProductId>
<Color>Blanco</Color>
<ColorBasico>Blanco</ColorBasico>
<Talla>39</Talla>
<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>36</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<ConditionType>Nuevo</ConditionType>
<PackageHeight>10</PackageHeight>
<PackageWidth>10</PackageWidth>
<PackageLength>10</PackageLength>
<PackageWeight>1</PackageWeight>
<DisciplinaZapatillas>Tenis</DisciplinaZapatillas>
<Genero>Mujer</Genero>
</ProductData>
</Product>
</Request>
<Request>
<Product>
<SellerSku>9087978897</SellerSku>
<Name>Test 1</Name>
<Variation>...</Variation>
<ParentSku />
<ProductId>9087978897</ProductId>
<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>
<Brand>2K GAMES</Brand>
<PrimaryCategory>2723</PrimaryCategory>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Price>1600.00</Price>
<SpecialPrice>1200.00</SpecialPrice>
<SpecialFromDate>2025-06-20 00:00:00</SpecialFromDate>
<SpecialToDate>2025-06-30 00:00:00</SpecialToDate>
<Stock>50</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<PackageWidth>12</PackageWidth>
<PackageLength>12</PackageLength>
<PackageHeight>12</PackageHeight>
<ConditionType>Nuevo</ConditionType>
<PackageWeight>1</PackageWeight>
</ProductData>
</Product>
</Request>
<?xml version="1.0" encoding="UTF-8" ?>
<Request>
<Product>
<SellerSku>SKU-TEST-123456</SellerSku>
<ParentSku>SKU-TEST-123456</ParentSku>
<Name>PRODUCT TEST - TEST - TEST</Name>
<PrimaryCategory>811</PrimaryCategory>
<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>
<Brand>EPATE</Brand>
<Variation>US 7</Variation>
<Color>Blanco</Color>
<ColorBasico>Blanco</ColorBasico>
<Talla>39</Talla>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Price>59990</Price>
<SpecialPrice>35990</SpecialPrice>
<SpecialFromDate>2025-05-26 00:00:00</SpecialFromDate>
<SpecialToDate>2025-10-31 23:59:59</SpecialToDate>
<Stock>36</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<ConditionType>Nuevo</ConditionType>
<PackageHeight>10</PackageHeight>
<PackageWidth>10</PackageWidth>
<PackageLength>10</PackageLength>
<PackageWeight>1</PackageWeight>
<DisciplinaZapatillas>Tenis</DisciplinaZapatillas>
<Genero>Mujer</Genero>
</ProductData>
</Product>
<Product>
<SellerSku>SKU-TEST-78905</SellerSku>
<ParentSku>SKU-TEST-123456</ParentSku>
<Name>PRODUCT TEST - TEST - TEST</Name>
<PrimaryCategory>811</PrimaryCategory>
<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>
<Brand>EPATE</Brand>
<Variation>US 7</Variation>
<Color>Azul</Color>
<ColorBasico>Rojo</ColorBasico>
<Talla>38</Talla>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Price>59990</Price>
<SpecialPrice>35990</SpecialPrice>
<SpecialFromDate>2025-05-26 00:00:00</SpecialFromDate>
<SpecialToDate>2025-10-31 23:59:59</SpecialToDate>
<Stock>36</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<ConditionType>Nuevo</ConditionType>
<PackageHeight>10</PackageHeight>
<PackageWidth>10</PackageWidth>
<PackageLength>10</PackageLength>
<PackageWeight>1</PackageWeight>
<DisciplinaZapatillas>Tenis</DisciplinaZapatillas>
<Genero>Mujer</Genero>
</ProductData>
</Product>
</Request>
<?xml version="1.0" encoding="UTF-8" ?>
<Request>
<Product>
<SellerSku>9087978897</SellerSku>
<Name>Test 1</Name>
<Variation>...</Variation>
<ParentSku />
<ProductId>9087978897</ProductId>
<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>
<Brand>2K GAMES</Brand>
<PrimaryCategory>2723</PrimaryCategory>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Price>1600.00</Price>
<SpecialPrice>1200.00</SpecialPrice>
<SpecialFromDate>2025-06-20 00:00:00</SpecialFromDate>
<SpecialToDate>2025-06-30 00:00:00</SpecialToDate>
<Stock>50</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<PackageWidth>12</PackageWidth>
<PackageLength>12</PackageLength>
<PackageHeight>12</PackageHeight>
<ConditionType>Nuevo</ConditionType>
<PackageWeight>1</PackageWeight>
</ProductData>
</Product>
<Product>
<SellerSku>9087978898</SellerSku>
<Name>Test 1</Name>
<Variation>...</Variation>
<ParentSku />
<ProductId>9087978898</ProductId>
<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>
<Brand>2K GAMES</Brand>
<PrimaryCategory>2723</PrimaryCategory>
<BusinessUnits>
<BusinessUnit>
<OperatorCode>facl</OperatorCode>
<Price>1600.00</Price>
<SpecialPrice>1200.00</SpecialPrice>
<SpecialFromDate>2025-06-20 00:00:00</SpecialFromDate>
<SpecialToDate>2025-06-30 00:00:00</SpecialToDate>
<Stock>50</Stock>
<Status>active</Status>
</BusinessUnit>
</BusinessUnits>
<ProductData>
<PackageWidth>12</PackageWidth>
<PackageLength>12</PackageLength>
<PackageHeight>12</PackageHeight>
<ConditionType>Nuevo</ConditionType>
<PackageWeight>1</PackageWeight>
</ProductData>
</Product>
</Request>
Las etiquetas XML tienen el siguiente significado:
Campo | Tipo | Descripción | Requerido | Sección |
---|---|---|---|---|
SellerSku | String | Identificador único para el producto dentro del sistema. | Sí | Product |
ParentSku | String | Identificador del producto padre para variaciones. Si no se proporciona, se tomará automáticamente el SellerSku del primer producto como padre. | No | Product |
Name | String | Nombre del producto mostrado al cliente. Mínimo 2 caracteres, máximo 255. | Sí | Product |
Variation | String | Valor que indica la variación del producto (ej. talla, color). Solo si la categoría no posee Multivariación, puede llenarse con el valor "..." | Condicional | Product |
Color | String | Color principal del producto. Este campo es requerido si el producto posee múltiples variaciones. Ten en cuenta que los atributos que generan variación pueden variar según la categoría. | Condicional | Product |
ColorBasico | String | Color básico del producto. Este campo es requerido si el producto posee múltiples variaciones. Ten en cuenta que los atributos que generan variación pueden variar según la categoría. | Condicional | Product |
Talla | String | Talla del producto (especialmente para vestuario y calzado).Este campo es requerido si el producto posee múltiples variaciones. Ten en cuenta que los atributos que generan variación pueden variar según la categoría. | Condicional | Product |
PrimaryCategory | Integer | ID de la categoría principal. Se obtiene desde el endpoint GetCategoryTree. | 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 |
BusinessUnits | Subsection | Sección que contiene stock, precios y operador asociado. | Sí | Product |
OperatorCode | String | Código del operador. Ej: facl, fape, faco. | Sí | BusinessUnits |
Price | Decimal | Precio del producto. | Sí | BusinessUnits |
SpecialPrice | Decimal | Precio en oferta. Obligatorio si se informan fechas de oferta. | Condicional | BusinessUnits |
SpecialFromDate | DateTime | Fecha de inicio de la oferta. Formato: YYYY-MM-DD HH:MM:SS . Obligatorio si hay un SepcialPrice | Condicional | BusinessUnits |
SpecialToDate | DateTime | Fecha de término de la oferta. Formato: YYYY-MM-DD HH:MM:SS .. Obligatorio si hay un SepcialPrice | Condicional | BusinessUnits |
Stock | Integer | Cantidad de stock disponible. | Sí | BusinessUnits |
Status | String | Estado del producto por operador: active o inactive | Sí | BusinessUnits |
ProductData | Subsection | Contiene atributos extendidos de producto definidos por categoría. | Sí | Product |
ConditionType | String | Estado del producto, su valor depende de la categoría, ejemplo: Nuevo | Sí | ProductData |
PackageHeight | Integer | Altura del empaque (en cm). | Sí | ProductData |
PackageWidth | Integer | Ancho del empaque (en cm). | Sí | ProductData |
PackageLength | Integer | Largo del empaque (en cm). | Sí | ProductData |
PackageWeight | Decimal | Peso del empaque (en kg). | Sí | ProductData |
DisciplinaZapatillas | String | Disciplina deportiva (ej: Tenis, Running). Depende de la categoría. Atributo ejemplo de una determinada categoría | No | ProductData |
Genero | String | Género objetivo del producto (ej: Hombre, Mujer, Unisex). Atributo ejemplo de una determinada categoría | No | ProductData |
Datos de la respuesta
Recuerda que esta API funciona de forma asíncrona. Aunque recibas una respuesta 200 OK, esto solo indica que la solicitud fue aceptada, no que los productos fueron creados con éxito.
Para conocer el resultado final del proceso:
- Utiliza el
RequestId
devuelto para consultar el estado mediante la API FeedStatus. - También puedes configurar un webhook que te notifique automáticamente cuando finalice el procesamiento del feed.
Para más detalles sobre el flujo completo, revisa la documentación del endpoint FeedStatus.
Éxito
<?xml version="1.0" encoding="UTF-8"?>
<SuccessResponse>
<Head>
<RequestId>cb106552-87f3-450b-aa8b-412246a24b34</RequestId>
<RequestAction>ProductCreate</RequestAction>
<ResponseType/>
<Timestamp>2016-06-22T04:40:14+0200</Timestamp>
</Head>
<Body/>
</SuccessResponse>
Errores
<?xml version="1.0" encoding="UTF-8"?>
<ErrorResponse>
<Head>
<RequestAction>ProductCreate</RequestAction>
<ErrorType>Platform</ErrorType>
<ErrorCode>1000</ErrorCode>
<ErrorMessage>Could not save product: An exact match of the document is being processed, cb106552-87f3-450b-aa8b-412246a24b34</ErrorMessage>
</Head>
<Body/>
</ErrorResponse>
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) |
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>