Update Products

ProductUpdate. Allows the update of one or more products using the SellerSku field as the key.

The API response is asynchronous and generates the creation of a Feed; always remember to check the details of a feed (see here) to review whether the product was created successfully or if there are any issues with the rejection.

The request body is XML; fields sent with empty values will not be processed and will be ignored. It is possible to update one or more products.


❗️

Minimum Structure

To perform a product update, the minimum request structure must include:

  • SellerSku
  • The BusinessUnits node, which must contain at least one BusinessUnit with:
    • OperatorCode corresponding to the country (facl for Chile, fape for Peru, faco for Colombia)
    • At least one attribute to update, such as Price, Stock, Status, etc.

To ensure an efficient integration, if you only need to update price or stock, you do not need to include additional information such as description, name, or other product attributes. It is enough to send the SellerSku, the BusinessUnits block, and the specific fields to be updated.

Request Data


⚠️

Recommended Batch Size

To optimize feed usage, group your products into batches. It is recommended to send between 500 and 1,000 products per request, depending on the size and complexity of the data included.

Here are some examples of common update requests you might perform:

<?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>
                                <Price>4600</Price>
                                <SpecialPrice />
				<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>


Some examples of attributes you could modify:


FieldTypeDescriptionRequiredSection
SellerSkuStringUnique identifier for the product within the system.YesProduct
NameStringProduct name displayed to the customer.YesProduct
DescriptionStringProduct HTML description. Between 6 and 25,000 characters.YesProduct
BrandStringProduct brand.YesProduct
ProductIdNumberfieldHarmonized code (EAN, UPC, ISBN).NoProduct
PriceDecimalProduct price.YesBusinessUnits.BusinessUnit
SpecialPriceDecimalDiscounted price. Mandatory if offer dates are provided.NoBusinessUnits.BusinessUnit
SpecialFromDateDateTimeOffer start date. Format: YYYY-MM-DD HH:MM:SS. Mandatory if SpecialPrice is provided.Conditional, only if SpecialPrice is sentBusinessUnits.BusinessUnit
SpecialToDateDateTimeOffer end date. Format: YYYY-MM-DD HH:MM:SS. Mandatory if SpecialPrice is provided.Conditional, only if SpecialPrice is sentBusinessUnits.BusinessUnit
StockIntegerAvailable stock quantity.YesBusinessUnits.BusinessUnit
StatusStringProduct status per operator: active or inactive.YesBusinessUnits.BusinessUnit
ConditionTypeStringProduct condition; value depends on category, e.g., New.YesProductData
PackageHeightIntegerPackage height (in cm).YesProductData
PackageWidthIntegerPackage width (in cm).YesProductData
PackageLengthIntegerPackage length (in cm).YesProductData
PackageWeightDecimalPackage weight (in kg).YesProductData
TaxPercentageStringProduct tax percentage.Conditional (Mandatory only in Colombia)ProductData

Request Data

Use the generated response information to retrieve more details of the Feed through another API call to FeedStatus. Check the details of the response through FeedList. Keep in mind that while making the ProductUpdate call, we only perform basic validation. Full validation will occur while processing the feed, so it may be possible that, when sending 100 product updates, only 90 of them are actually updated.

Errors

Error CodeMessage
1000Could not save product: %s (Could not save the product)
1000Format Error Detected
8888Feed rows exceeded, max size allowed is %d and you uploaded %d items. Please next time try to upload less items (Feed row limit exceeded. Please try to upload fewer items next time)

Markup in Description

The product description can be plain text like this:

<Description>the description</Description>

It can also contain certain HTML tags, including ul, li, and span. If HTML is embedded, it must be escaped as character data, like this:

<Description><![CDATA[<div>the description <b>bold</b></div>]]></Description>
Language