Update the attributes of one or more existing products.

The body transmitted by the POST is an XML structure. Tags that do not enclose a value are ignored; so, In the example below, ParentSku will be ignored by the endpoint, even though it was supplied.

The Request encloses one or more Product sections, each of which allows for the same attributes to be set as ProductCreate, although in comparison, the SellerSku is the only field required for ProductUpdate.

This call creates a feed, which is then processed by system in the background.

Request Data

<?xml version="1.0" encoding="UTF-8" ?>
<Request>
	<Product>
		<SellerSku>TEST-SKU-12345</SellerSku>
		<Price>4500</Price>
		<Quantity>30</Quantity>
	</Product>
	<Product>
		<SellerSku>TEST00000</SellerSku>
		<Price>59900</Price>
		<Quantity>50</Quantity>
		<ProductData>
			<ShortDescription>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.</ShortDescription>
			<Color>Blanco</Color>
		</ProductData>
	</Product>
</Request>

The XML tags have the following meaning:

SellerSkuStringThe unique identifier for the product that is to be modified. Mandatory
StatusStringOne of the following values: 'active', 'inactive' or 'deleted'. Optional
NameStringThe name of the product as shown to the end-user. Optional. Must be between 2 to 255 characters.
VariationStringIf a product is available in multiple variations (e.g., colors or size), this is the value of the variation. E.g., if the product is a jacket that comes in different sizes, this would be the size of the jacket's variation that is added with the call (e.g., 'Extra Small'). Optional
PrimaryCategoryIntegerThe ID of the primary category for his product. To get the ID for each of the system's categories call GetCategoryTree. Optional
CategoriesStringA comma-separated list of one to thee sub-categories to which the product belongs. Each of the given sub-categories must descend from the category specified by the PrimaryCategory parameter. Optional
BrowseNodesStringA comma-separated list of one or two additional categories that are not necessarily related to the PrimaryCategory. Optional
DescriptionStringThe description of the product, as shown to the end-user. 6 to 25000 characters. Embedding certain HTML tags is allowed, but must be escaped as character data (see below). Optional
BrandStringThe brand name of the product. Optional
PriceDecimalThe product's price. Optional
SalePriceDecimalThe (hopefully reduced) price for the product while it is on sale. If SalePrice is specified, either SaleStartDate or SaleEndDate must be given; vice versa, if at least one of SaleStartDate or SaleEndDate is specified, SalePrice is mandatory.
SaleStartDateDateTimeTime and date for when the product goes on sale. If passed in, SalePrice becomes mandatory if not already set.
SaleEndDateDateTimeTime and date for when the sale of the product ends. If passed in, SalePrice becomes mandatory if not already set.
TaxClassStringThe taxation class the product belongs to. The available tax classes are dependent on the specific installation the call is executed against. Optional
ShipmentTypeStringIndicates whether the product is shipped direcly upon receipt ('crossdocking') or is drop shipped ('dropshipping'). Which shipment types are permissible depends on what is set up for a specific seller. Optional
ProductIdStringA harmonzied code for the product, such as Universal Product Code (UPC), International Article Number (EAN), Global Trade Item Number (GTIN) or International Standard Book Number (ISBN). Optional
ConditionTypeStringIndicates whether the product is new or used. One of 'Nuevo' or 'Reacondicionado'. Optional
ProductDataSubsectionAdditional product attributes, depends on the primary category. Optional
QuantityIntegerThe current level of inventory for this product. Optional
VolumetricWeightNumber DECIMAL(10,2)
ProductGroupStringThe name of the group

Response Data

Use the generated response information to retrieve more details of the Feed via another API call FeedStatus . Check out the details of the response via FeedList. Please be aware while doing the ProductUpdate call we just do a basic validation. A full validation will be done while processing the feed, so it can be possible to push 100 product updates but only 90 of them get actually updated.

Errors

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

Markup in the Description

The product description can be plain text like so:

<Description>la descripción</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 so:

<Description><![CDATA[<div>la descripción <b>negrita</b></div>]]></Description>
Language