Example

<?xml version="1.0" encoding="UTF-8"?>
<product name="Fuel filter VALEO 587903" codename="valeo587903">
  <url>demo.kvik.shop/palivovy-filtr-valeo-587903</url>
  <note>Internal note for the product.</note>
  <unit>kg</unit>
  <piecesCount>1</piecesCount>
  <warranty>24 months</warranty>

  <productPrices>
    <productPrice type="retail">
      <price amountWithVat="242.0" amountWithoutVat="200" currencyCode="EUR" vatRateName="standard" vatRate="21.0" vatAmount="42.0" />
    </productPrice>
  </productPrices>

  <productGroups>
    <productGroup type="product_type" name="Palivový filtr" codename="9">
      <multilingual languageCode="cs">Palivový filtr</multilingual>
      <multilingual languageCode="en">Fuel filter</multilingual>
      <multilingual languageCode="de">Kraftstofffilter</multilingual>
    </productGroup>
    <productGroup type="custom" name="My Custom Group" codename="mycustomgroup"/>
    <productGroup type="custom" name="My Custom Group 2" codename="mycustomgroup2"/>
    <productGroup type="smart" name="Starter battery" codename="starterbattery"/>
    <productGroup type="brand" name="VALEO" codename="valeo"/>
    <productGroup type="author" name="Bruce Wayne" codename="brucewayne"/>
  </productGroups>
  
  <productCodes>
    <productCode type="manufacturer" code="587903" codeSimplified="587903" abbreviation="MPN"/>
    <productCode type="ean" code="3276425879034" codeSimplified="3276425879034" abbreviation="EAN"/>
    <productCode type="upc" code="651860623436" codeSimplified="651860623436" abbreviation="UPC"/>
    <productCode type="custom" code="587903" codeSimplified="587903" abbreviation="SKU"/>
    <productCode type="custom" code="VALEO-587903" codeSimplified="VALEO587903" abbreviation="SKU"/>
    <productCode type="custom" code="VAL X.123" codeSimplified="VALX123" abbreviation="SKU"/>
    <productCode type="custom" code="VAL 587903" codeSimplified="VAL587903" abbreviation="SKU"/>
    <productCode type="isbn" code="978-5-0325-3423-5" codeSimplified="9785032534235" abbreviation="ISBN"/>
    <productCode type="ismn" code="978-4-0844-9901-1" codeSimplified="9784084499011" abbreviation="ISMN"/>
  </productCodes>

  <images>
    <image>
      <url>docs.demo.kvik.shop/20241/845520148924803#v5</url>
    </image>
  </images>

  <supplies>
    <supply supplierName="Dodavatel Tři" supplierCodename="dodavatel3" supplierKey="F21019" orderingNumber="F21019" disabled="false">
      <money priceWithoutVat="152.28" purchasePrice="152.28" currencyCode="CZK"/>
      <stock status="atTheSupplier" availableCount="10"/>
    </supply>
    <supply supplierName="Dodavatel Čtyři" supplierCodename="dodavatel4" supplierKey="F21019" orderingNumber="F21019" disabled="false">
      <money priceWithoutVat="152.28" purchasePrice="152.28" currencyCode="CZK"/>
      <stock status="atTheSupplier" availableCount="10"/>
    </supply>
    <supply supplierName="Dodavatel Jedna" supplierCodename="dodavatel1" supplierKey="101-21019" orderingNumber="21019" disabled="false">
      <money priceWithoutVat="165.174" purchasePrice="165.174" currencyCode="CZK"/>
      <stock status="atTheSupplier" availableCount="26"/>
    </supply>
  </supplies>

</product>

Product basic attributes

  • <url> - Canonical URL of the product on the e-shop.
  • <note> - Internal note for the product written by an e-shope administrator.
  • <unit> - Abbrevation of the product unit: ks, m, cm, mm, kg, g, l, ml.
  • <piecesCount> - Integer value representing how many pieces the product has.
  • <warranty> - It can be used for warranty.

Product prices

<productPrice type="retail">
  <price amountWithVat="242.0" amountWithoutVat="200" currencyCode="EUR" vatRateName="standard" vatRate="21.0" vatAmount="42.0" />
</productPrice>
  • There can be more product prices for one product. Type of the product type is defined by the type attribute in <productType> element.
  • All products have one product price with type retail <productPrice type="retail">.
  • There can be more <price> elements within a <productPrice> element. In this case, there will be a different currencyCode attribute value in each of the <price>.

Product groups

<productGroup type="brand" name="VALEO" codename="valeo"/>
  • Each product can be assigned to an unlimited amount of groups.
  • Each group has its type.
  • Product can be assigned to more groups of the same type. Like to more custom groups, more smart groups.
  • Usually, there is none or one group of types product_type, brand and author.
  • None of the product group types is mandatory.

Types:

  • custom - Custom group to which is the product assigned by an admin user.
  • brand - Brand of the product.
  • author – Author of the product. It is used mainly for books.
  • product_type - Generic type of the product.
  • smart - Product group to which is the product assigned automatically by the e-shop system.

More types can be added in the future.

Multilingual

Product groups may or may not have multilingual names. For this purpose, there are optional descendant <multilingual> elements.

<productGroup type="product_type" name="Palivový filtr" codename="9">
  <multilingual languageCode="cs">Palivový filtr</multilingual>
  <multilingual languageCode="en">Fuel filter</multilingual>
  <multilingual languageCode="de">Kraftstofffilter</multilingual>
</productGroup>
  • Attribute languageCode is always present. Value of the attribute is ISO 639-1 language code.
  • Value of the element multilingual is a name in that language.

Product codes

<productCode type="custom" code="VAL 587903" codeSimplified="VAL 587903" abbreviation="SKU"/>

Types:

More types can be added in the future.

Simplified code codeSimplified is uppercased code stripped to alphanumeric characters only.

Product images

  • First image is the main image of the product.

Product supplies

A related supply (stock availability, purchase price) to a particular product.

<supply supplierName="Super Car Supplier" supplierCodename="superCarSupplier" supplierKey="LMI-25497 02" orderingNumber="LMI-25497 02" disabled="false">
  <money priceWithoutVat="9.63" purchasePrice="9.63" currencyCode="EUR"/>
  <stock status="available" availableCount="26"/>
</supply>
  • supplierName – Name of the supplier as is defined in the shop.
  • supplierCodename – Shop's internal code name of the supplier.
  • supplierKey – Unique item ID from the supplier's database or pricelist.
  • orderingNumber – Item ordering code defined by the supplier. It is in many cases the same as supplierKey. It depends on the structure of the supplier's database or pricelist.
  • All of those above may be empty in the case the supply is not related to any supplier.
  • disabled - When this is true, it means, the shop is restricted from using the supply for any price/stock calculations.

Descendant element <money>

  • purchasePrice – Item purchased price from supplier.
  • priceWithoutVat – This can be selling price of supplier, most of the time this is the same with purchased price.
  • currencyCode – 3-letter currency code in compliance with ISO 4217.

Descendant element <stock>

  • status - Represenation of the availability status by a code name. See possible values below.
  • availableCount - A numeric or an empty value with the count of available pieces. Empty means unlimited amount.

Possible stock statuses

  • Available for order:
    • availableInTheStore
    • available
    • availableInExternalStock
    • onTheWay
    • toOrder
    • preOrder
    • atTheSupplier
  • Unavailable for order:
    • onRequest
    • temporarilyUnavailable
    • notAvailable
    • soldOut
    • sellEnded
    • canNotBeOrdered