Why do we need product data?
For example, you might want to segment your recommendations on the basis of gender. So next time a male customer comes along looking for jeans, you’d like to show him the most popular pairs of mens’ jeans. But in order for our system to do this we would need to know in advance which jeans are for men and which jeans are for women. Otherwise we aren’t able to accurately compute the most suitable products.
Every product has a number of attributes: things that describe the product. In order to create recommendations we need at least four attributes:
- The name
- The image
- The price
- The URL
N.B.! If you only provide us with this minimal information we won’t be able to create recommendations on the based on customers’ gender, the brand of the product, the discounted price of the product, the category of the product, or any of the other possible filters. Therefore we strongly recommend that you use an effective method to give us detailed product information. That way we can make your recommendations as accurate as possible.
A note about URLs
Each product in your store should have a unique URL. This is because our servers can’t hold information about multiple products under the same URL. We also can’t hold multiple URLs for the same product so it’s important that each product page has it’s own unique URL.
The URL which links to the product page is called the canonical URL. This is what we use to identify products.
Having unique URLs for each product is also very important for Search Engine Optimization (SEO) so if you find you have multiple URLs you should take the time to correct it, as it will help with your ranking on search results.
The best way for us to get information about your products is through a product feed.
What’s a product feed?
A product feed is a file of information about the products in your shop. It contains all the important information about their name, price, images and can contain lots of extra information. It organises this information in a way that third party companies (like us!) can access and use the data to display products.
Product feeds differ in content and structure but they all do the same thing – provide high-quality and accurate data about what’s the product in your store.
This file is stored in a particular location online and has it’s own URL. Our servers go to that URL to find out what information is stored in the file.
How can I get a product feed?
It’s almost impossible to manually update a product feed so that you know it is always accurate (especially if you are selling a lot!). So for that reason it’s by far the best solution to use a tool which automatically exports data from your inventory. These tools “fetch” data from your inventory to fill out the file with. This means that data is regularly exported from your webshop to the file.
Some ecommerce platforms will provide this as part of their functionality, but otherwise you may need to download or buy an extension or plug in which creates product feeds for you. You’ll need to look up the options available for your host.
If you don’t use a webshop host you may need to create your own product feed – but it’s probably best to have a developer on hand to connect your feed file to your inventory management system.
How can I give my feed to addwish?
Once you’ve got a URL for your product feed all you need to do is pass this on to us via e-mail. You can send it to us at email@example.com along with your partner ID (found once you have logged in). Then we’ll use this URL to retrieve up to date information about your products.
The addwish product span
If you want to have more direct control over the data you send you can insert the addwish product span on your product pages. The addwish product span is a small piece of code that you add in to your website that will provide us with product information.
It looks like this:
<span class="addwish-product-info" style="display:none" data-title="[Required]" data-imgurl="[Required]" data-price="[Required]" data-productnumber="[Required]" data-url="[Required]" data-currency="[Optional]" data-brand="[Optional]" data-category="[Optional]" data-instock="[Optional]" data-previousprice="[Optional]" data-pricedetail="[Optional]" data-newsletter-promotion="[Optional]" data-score="[Optional]" data-gender="[Optional]" data-recurrent="[Optional]" data-sold-related="[Optional]" ></span>
Copy and paste this into the code on your website in the body (between
</body>). Once you’ve pasted it you’ll need to replace everything marked in [brackets] with attributes of the product (including the brackets themselves!)
Here’s a explanation of what the fields mean:
- The name of the product.
- Absolute url to the main product image.
- Product price, without currency.
- Product number. (Your SKU or similar identifier)
- Absolute canonical url of the product.
- The currency for the price.
- Brand name of the product.
- A JSON formatted list of categories, for example [\”Shoes\”, \”Boots\”] or [3402, 2059]. The most specific category should be last.
- true or false depending on stock status. Products that are not in stock will not be suggested in product recommendations or newsletters.
- Previous (regular) price of the product, if the price has been lowered.
- Additional text describing the price, e.g. per meter or for 12 bottles or similar.
- true or false to specify if you want this product used to create recommendations in your newsletters.
- A number from 1 to 10 denoting how much a product should be promoted, relative to your other products. A higher number means more promotion. Default value is 5.
- The targeted gender for the product. Accepted values are: MALE,FEMALE, and UNISEX.
- Either true, false, or a number of days, denoting how long we should avoid promoting the product after it has been sold.
- true or false denoting whether newsletters should include products related to this product if the recipient has previously bought this product.
- If you don’t want to fill out one of the optional categories, just delete the whole line.
- Prices should be filled in without including the currency. It’s assumed that they are in the default currency of your webshop.
- You should use a dot (“.”) to mark the decimal place and include two digits of decimal precision e.g. 12.50. Don’t use any marker to separate thousands in the prices. So type 12500.50 instead of 12,500.50.
This is an example which only fills out the required fields:
<span class="addwish-product-info" style="display:none" data-title="UltraBlender 2000" data-imgurl="http://example.com/images/UltraBlender-2000.png" data-price="1699.95" data-productnumber="10-800-1234" data-url="http://example.com/shop/UltraBlender-2000.html" ></span>
And here’s one which uses all the available fields filled out.
<span class="addwish-product-info" style="display:none" data-title="NoFall Solid Climber's Rope" data-imgurl="http://example.com/images/NoFall-Solid.jpg" data-price="149.95" data-productnumber="8-304-9876" data-url="http://example.com/shop/NoFall-Solid.html" data-currency="DKK" data-brand="NoFall" data-category="[\"Sport equipment\", \"Climbing\", \"Rope\"]" data-instock="true" data-previousprice="199.95" data-pricedetail="per meter" data-newsletter-promotion="true" data-score="7" data-gender="UNISEX" data-recurrent="false" data-sold-related="true" ></span>
Open Graph Protocol
If you’re already using the Open Graph Protocol on your webshop we will be able to determine your product data from this.
We will look for the
og:price:amount tags, which will give us enough information to register a product.
Additionally, we will look for info in a canonical url tag,
Here's an example including the preferred attributes:
<meta property="og:title" content="Skate shirt" /> <meta property="product:original_price:amount" content="100.00" /> <meta property="product:price:amount" content="75.00" /> <meta property="og:price:currency" content="DKK" /> <meta property="og:image" content="https://shop.com/images/skate-shirt.png" /> <meta property="product:availability" content="instock" /> <meta property="product:brand" content="Nike" /> <meta property="product:category" content="Clothing" /> <meta property="og:url" content="https://www.shop.com/clothing/skate-shirt.html" />