3.4.             <Product>

Description:

 

       Add or update any Product in the db. This can be for bulk adds, incremental updates, deletes, etc.

       On an update, if you want to set a field to NULL or "empty string" use an empty element syntax (e.g. <Summary></Summary>).

       On an update, if you want to NOT TOUCH the existing value on that field, omit the field from the Xml input document. E.g. If you do not want to touch the "Name" field on an entiy, do not include ANY <Name></Name> field in your Xml Doc!

       So in summary, any field will be updated if it is found in your Xml Doc. It will be updated to an empty string (or NULL) value if provided with no data. If you want to leave the data in the db alone, do NOT include that element in your Xml Document. The existing data in the db will be left there unchanged, while still allowing you to update other fields that are in your Xml doc.

 

Full Syntax:

 

        <Product Action="Add|Update|Delete|Nuke|Lookup" GUID="uniqueidentifier" ID="integer">

<Name>string</Name>

<Summary>string</Summary>

<Description>string</Description>

<SpecTitle>string</SpecTitle>

<MiscText>string</MiscText>

<Notes>string</Notes>

<IsFeaturedTeaser>string</IsFeaturedTeaser>

<FroogleDescription>string</FroogleDescription>

<SKU>string</SKU>

<ManufacturerPartNumber>string</ManufacturerPartNumber>

<SwatchImageMap>string</SwatchImageMap>

<SE>

<SEName>string</SEName>

<SETitle>string</SETitle>

<SEKeywords>string</SEKeywords>

<SEDescription>string</SEDescription>

<SENoScript>string</SENoScript>

<SEAltText>string</SEAltText>

</SE>

<SizeOptionPrompt>string</SizeOptionPrompt>

<ColorOptionPrompt>string</ColorOptionPrompt>

<ProductType Name="string" ID="integer" GUID="uniqueidentifier"/>

<TaxClass Name="string" ID="integer" GUID="uniqueidentifier"/>

<SalesPrompt Name="string" ID="integer" GUID="uniqueidentifier"/>

<SpecCall>string</SpecCall>

<SpecsInline>string</SpecsInline>

<Display>

<XmlPackage>string</XmlPackage>

<ColWidth>integer</ColWidth>

<PageSize>integer</PageSize>

<SkinID>integer</SkinID>

<TemplateName>string</TemplateName>

</Display>

<Images>

<Icon Extension="gif|jpg|png|jpeg" Delete="boolean">base64 encoded image data here</Icon>

<Medium Extension="gif|jpg|png|jpeg" Delete="boolean">base64 encoded image data here</Medium>

<Large Extension="gif|jpg|png|jpeg" Delete="boolean">base64 encoded image data here</Large>

<ImageFilenameOverride></ImageFilenameOverride>

</Images>

<QuantityDiscount Name="string" ID="integer" GUID="uniqueidentifier"/>

<RelatedProducts>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

</RelatedProducts>

<UpsellProducts DiscountPercentage="">

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

</UpsellProducts>

<RequiresProducts>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

<CX ID="integer" GUID="uniqueidentifier"/>

</RequiresProducts>

<InventoryType>

<TrackInventoryBySizeAndColor></TrackInventoryBySizeAndColor>

<WarehouseLocation></WarehouseLocation>

</InventoryType>

<IsFeatured>boolean</IsFeatured>

<IsAKit>boolean</IsAKit>

<IsSystem>boolean</IsSystem>

<IsAPack>boolean</IsAPack>

<PackSize>integer</PackSize>

<ShowInProductBrowser>boolean</ShowInProductBrowser>

<ShowBuyButton>boolean</ShowBuyButton>

<Published>boolean</Published>

<Wholesale>boolean</Wholesale>

<RequiresRegistration>boolean</RequiresRegistration>

<HidePriceUntilCart>boolean</HidePriceUntilCart>

<IsCalltoOrder>boolean</IsCalltoOrder>

<ExcludeFromPriceFeeds>boolean</ExcludeFromPriceFeeds>

<GoogleCheckoutAllowed>boolean</GoogleCheckoutAllowed>

<RequiresTextOption>boolean</RequiresTextOption>

<TextOptionMaxLength>integer</TextOptionMaxLength>

<TextOptionPrompt>string</TextOptionPrompt>

<AvailableStartDate>datetime</AvailableStartDate>

<AvailableStopDate>datetime</AvailableStopDate>

<Mappings AutoCleanup="boolean">

<Entity EntityType="Manufacturer|Distributor|Category|Section|Genre|Vector" Name="string" XPath="string" ID="integer" GUID="uniqueidentifier" DisplayOrder="integer"/>

<Entity EntityType="Manufacturer|Distributor|Category|Section|Genre|Vector" Name="string" XPath="string" ID="integer" GUID="uniqueidentifier" DisplayOrder="integer"/>

<Entity EntityType="Manufacturer|Distributor|Category|Section|Genre|Vector" Name="string" XPath="string" ID="integer" GUID="uniqueidentifier" DisplayOrder="integer"/>

<Entity EntityType="Manufacturer|Distributor|Category|Section|Genre|Vector" Name="string" XPath="string" ID="integer" GUID="uniqueidentifier" DisplayOrder="integer"/>

<Entity EntityType="Manufacturer|Distributor|Category|Section|Genre|Vector" Name="string" XPath="string" ID="integer" GUID="uniqueidentifier" DisplayOrder="integer"/>

</Mappings>

<ExtensionData>string</ExtensionData>

<ExtensionData2>string</ExtensionData2>

<ExtensionData3>string</ExtensionData3>

<ExtensionData4>string</ExtensionData4>

<ExtensionData5>string</ExtensionData5>

<Kit AutoCleanup="boolean">  <!-- only used if IsAKit is 1 -->

<KitGroup>

<Name>string</Name>

<Description>string</Description>

<DisplayOrder>integer</DisplayOrder>

<KitGroupTypeID>integer</KitGroupTypeID>

<IsRequired>boolean</IsRequired>

<KitItem>

<Name>string</Name>

<Description>string</Description>

<PriceDelta>decimal</PriceDelta>

<IsDefault>boolean</IsDefault>

<DisplayOrder>integer</DisplayOrder>

<TextOptionMaxLength>integer</TextOptionMaxLength>

<TextOptionWidth>integer</TextOptionWidth>

<TextOptionHeight>integer</TextOptionHeight>

<WeightDelta>decimal</WeightDelta>

</KitItem>

<KitItem>

<Name>string</Name>

<Description>string</Description>

<PriceDelta>decimal</PriceDelta>

<IsDefault>boolean</IsDefault>

<DisplayOrder>integer</DisplayOrder>

<TextOptionMaxLength>integer</TextOptionMaxLength>

<TextOptionWidth>integer</TextOptionWidth>

<TextOptionHeight>integer</TextOptionHeight>

<WeightDelta>decimal</WeightDelta>

</KitItem>

<KitItem>

<Name>string</Name>

<Description>string</Description>

<PriceDelta>decimal</PriceDelta>

<IsDefault>boolean</IsDefault>

<DisplayOrder>integer</DisplayOrder>

<TextOptionMaxLength>integer</TextOptionMaxLength>

<TextOptionWidth>integer</TextOptionWidth>

<TextOptionHeight>integer</TextOptionHeight>

<WeightDelta>decimal</WeightDelta>

</KitItem>

</KitGroup>

<KitGroup>

<Name>string</Name>

<Description>string</Description>

<DisplayOrder>integer</DisplayOrder>

<KitGroupTypeID>integer</KitGroupTypeID>

<IsRequired>boolean</IsRequired>

<KitItem>

<Name>string</Name>

<Description>string</Description>

<PriceDelta>decimal</PriceDelta>

<IsDefault>boolean</IsDefault>

<DisplayOrder>integer</DisplayOrder>

<TextOptionMaxLength>integer</TextOptionMaxLength>

<TextOptionWidth>integer</TextOptionWidth>

<TextOptionHeight>integer</TextOptionHeight>

<WeightDelta>decimal</WeightDelta>

</KitItem>

<KitItem>

<Name>string</Name>

<Description>string</Description>

<PriceDelta>decimal</PriceDelta>

<IsDefault>boolean</IsDefault>

<DisplayOrder>integer</DisplayOrder>

<TextOptionMaxLength>integer</TextOptionMaxLength>

<TextOptionWidth>integer</TextOptionWidth>

<TextOptionHeight>integer</TextOptionHeight>

<WeightDelta>decimal</WeightDelta>

</KitItem>

</KitGroup>

</Kit>

<Variants AutoCleanup="boolean">

<Variant Action="Add|Update|Delete|Nuke|Lookup" Name="string" SKUSuffix="" GUID="uniqueidentifier" ID="integer">

<IsDefault>boolean</IsDefault>

<Name>string</Name>

<Description>string</Description>

<SE>

<SEName>string</SEName>

<SEKeywords>string</SEKeywords>

<SEDescription>string</SEDescription>

<SENoScript>string</SENoScript>

<SEAltText>string</SEAltText>

</SE>

<FroogleDescription>string</FroogleDescription>

<SKUSuffix>string</SKUSuffix>

<ManufacturerPartNumber>string</ManufacturerPartNumber>

<Price>decimal</Price>

<SalePrice>decimal</SalePrice>

<Weight>decimal</Weight>

<MSRP>decimal</MSRP>

<Cost>decimal</Cost>

<Points>integer</Points>

<Dimensions>string</Dimensions>

<Inventory>integer</Inventory>

<DisplayOrder>integer</DisplayOrder>

<Notes>string</Notes>

<IsTaxable>boolean</IsTaxable>

<IsShipSeparately>boolean</IsShipSeparately>

<IsDownload>boolean</IsDownload>

<DownloadLocation>string</DownloadLocation>

<FreeShipping>boolean</FreeShipping>

<Published>boolean</Published>

<Wholesale>boolean</Wholesale>

<IsRecurring>boolean</IsRecurring>

<RecurringInterval>integer</RecurringInterval>

<RecurringIntervalType>integer</RecurringIntervalType>

<SubscriptionInterval>integer</SubscriptionInterval>

<SubscriptionIntervalType>integer</SubscriptionIntervalType>

<RestrictedQuantities>string</RestrictedQuantities>

<MinimumQuantity>integer</MinimumQuantity>

<Images ClearBeforeImport="boolean">

<Icon Extension="gif|jpg|png|jpeg">base64 encoded image data here</Icon>

<Medium Extension="gif|jpg|png|jpeg">base64 encoded image data here</Medium>

<Large Extension="gif|jpg|png|jpeg">base64 encoded image data here</Large>

<ImageFilenameOverride></ImageFilenameOverride>

</Images>

<CustomerEntersPrice>boolean</CustomerEntersPrice>

<CustomerEntersPricePrompt>string</CustomerEntersPricePrompt>

<ExtensionData>string</ExtensionData>

<ExtensionData2>string</ExtensionData2>

<ExtensionData3>string</ExtensionData3>

<ExtensionData4>string</ExtensionData4>

<ExtensionData5>string</ExtensionData5>

<Sizes>

<Size SKUModifier="string" PriceDelta="decimal">red</Size>

<Size SKUModifier="string" PriceDelta="decimal">green</Size>

<Size SKUModifier="string" PriceDelta="decimal">blue</Size>

</Sizes>

<Colors>

<Color SKUModifier="string" PriceDelta="decimal">s</Color>

<Color SKUModifier="string" PriceDelta="decimal">m</Color>

<Color SKUModifier="string" PriceDelta="decimal">l</Color>

</Colors>

<InventoryBySizeAndColor>

<Inv Color="string" Size="string" Quantity="integer" VendorID="string" VendorFullSKU="string" ExtensionData="string"/>

<Inv Color="string" Size="string" Quantity="integer" VendorID="string" VendorFullSKU="string" ExtensionData="string"/>

<Inv Color="string" Size="string" Quantity="integer" VendorID="string" VendorFullSKU="string" ExtensionData="string"/>

<Inv Color="string" Size="string" Quantity="integer" VendorID="string" VendorFullSKU="string" ExtensionData="string"/>

</InventoryBySizeAndColor>

</Variant>

</Variants>

</Product>

 

Notes:

 

       Make sure you understand the databse product structure, default database values, required product values, etc before using this interface element.

       Incremental updates are supported

       If an Update, Nuke, Delete is done, it MUST have either ID or GUID specified

       You can assign your own GUID on product Add. The GUID and new ID will be returned to you for association within your calling system.

 

Warnings:

 

       None

 

Example:

None...the syntax is pretty obvious.