Icecat Live is a (free) service that enables you to insert real-time product content from hundreds of major brands or manufacturers in any of your apps. Just with a few lines of JavaScript in your HTML template. This manual provides a quick guide on how to embed product information into your website easily. Further, we describe the Icecat Live service and give a concise overview of the Icecat inner structure. This post focuses on the embedding of Icecat Live product data, as this is the most common application of our Live interface. If you plan to integrate Icecat Live, we advise you first to integrate free Open Icecat Live and evaluate it for your purposes. And then, plan the next step by upgrading your interface to Full Icecat.
Please, note that Open Icecat Live requires a free subscription. Therefore, first register (free) if you don’t have an account yet to receive an Icecat username and access to the Icecat Control Panel.
If you want to integrate product data without frames, conforming to your CSS, then use this Icecat Live manual. Live (JS) is the modern variant of the good-old URL integration method.
If you want to download data to your own cloud environment and have full control over the data, then make use of the XML, JSON, or CSV download methods. Further, check out the Add-On page for popular platforms already integrating Icecat data. Are you interested in adding product reviews? Then check out our reviews manual. Brand owners that look into pushing data into Icecat, please, look into our Push-API or for manual data-entry Icecat’s Free Vendor Central.
What is Icecat Live? Icecat Live is basically a JavaScript (JS) service, providing real-time inserts of product data in client websites. Icecat Live both enables the seamless insert of a full product data sheet, and the seamless insert of individual content assets, without the need to use frames or iframes like in the Icecat URL service. The Live version is the easy integration where -in the case of Full Icecat- all authorization and security is handled at the Icecat server side.
The supported content assets are:
The JavaScript (JS) calls makes it very easy for channel partners to embed product information into their websites with just a few lines of code in an HTML template or app. Both a complete data sheet and individual objects can be called. In this manual, we included the calls for the most popular individual objects.
Please, note that some Open Icecat brands like Philips, make certain rich media assets (e.g., video) only available for their Authorized Resellers. Please, contact us in case you see on the icecat website more assets than that you can access through Icecat Live.
Open Icecat is a worldwide unique, open catalog, with product data sheets in cooperation with major global brands and channel partners. The Open Icecat data-sheets are fully approved by the sponsoring manufacturers and are distributed for free to channel partners to reduce their content costs and improve the shopping experience. Open Icecat contains the product specifications and additional information in one single standardized format, which facilitates easy categorizing, filtering, searching, and comparison of products.
In return, we require the Users of free Open Icecat to inform their business partners (distributors, manufacturers, retailers) via a newsletter and/or on the website that they are using Open Icecat, and that they require their partners to join as well so that all product content will become available through the free, open catalog. The more brands join, the better and more complete Open Icecat will become.
TIP: Choose Open Icecat if you are new to Icecat or Icecat Live.
If you want to decide to use Icecat, it may be important first to analyze the coverage of your portfolio or the portfolio of your supplier. You can always ask us to provide you with an overview of the current coverage of (stock) portfolio of your suppliers (f.e., distributors) at any given moment. We strive to cover at least 90% of the stock portfolio (stock > 1) of mainstream distributors and work together with partners to daily monitor this coverage. Read more about Why Upgrade to Full Icecat.
If you want to analyze coverage yourself, you need to register and upload your catalog to Icecat via the Icecat Control Panel. In the match analysis, you get the match percentages for Full Icecat and Open Icecat, and you can get a list of the unrecognized products. An advantage is that you can also, optionally, display your offers on the Icecat price comparison sites.
TIP: if you upload your price feed, Icecat will automatically provide you with your private Icecat index if you want to use the Data interfaces of Icecat. For more information, see also the Icecat Subscription Plans. If you want to upgrade to Full Icecat Live, you can contact us via the contact form or the Icecat Control Panel.
To obtain access to Open Icecat, you will need Icecat login credentials. If you don’t have these yet, please, register online for free to Open Icecat.
TIP: for many mainstream solutions standard interfaces are available, including Magento, Prestashop, osCommerce (and siblings) and Batavi.
Below you may find the data flow diagram of Icecat Live JS integration:
Icecat Live refers to a program code written in JavaScript (JS) that is embedded in a web page and executed by the browser of your site visitor when a page is downloaded by the respective visitor, or in response to an event triggered by you as a Partner.
JS allows creating a bridge between a webshop and the Icecat catalog, which makes it possible to incorporate product information (descriptions, leaflets, multimedia objects) into merchant webshops. Moreover, Icecat Live uses Document Object Model (DOM), which allows updating content dynamically.
TIP: to see Icecat Live in action, JavaScript should be enabled in your browser.
On every product page of an Open Icecat brand, a demo can be found of an Icecat Live integration. Go for example to the HP Spectre Pro x360 product page, and click in the “Embed the product data-sheet in your content” section on the link “Icecat LIVE: JS for HP V1B02EA”. A new page will then open that demonstrates the use of Icecat Live JS.
As a demo, we also made a very simple integration example of an Icecat Live data sheet on a blog page, using an Icecat demo account and test account on Blogger.com. It also gives an HTML code example of a very simple webpage with the Icecat Live JS code embedded:
<html> <head> <script src="https://live.icecat.biz/js/live-current-2.js"></script> </head> <body> <div id="IcecatLive"> </div> <script type="text/javascript"> setTimeout(function(){IcecatLive.getDatasheet('#IcecatLive',{'UserName': 'openIcecat-live','Brand':'HP','ProductCode':'F0Y97EA'},'en');}, 200); </script> </body> </html>
TIP: ‘openIcecat-live’ is just the name of a demo account, that will give a “demo” message as well in the header. Use your own free Icecat user account, and this demo message will disappear.
Follow these three simples steps to integrate Open Icecat Live on your website:
1) To embed the Icecat Live library into an HTML page:
<script type="text/javascript" src="//live.icecat.biz/js/live-current-2.js"></script> NOTE: it's not necessary to put the any part of the script in the <head> part of the HTML as was done in the example above.
2) To insert into an HTML page a specific DOM element by a unique Id:
<div id="IcecatLive"></div>
3) To make the Live Icecat library call with your personal parameters:
<script type="text/javascript"> setTimeout(function() { IcecatLive.getDatasheet('#IcecatLive', { 'UserName': 'userShopName', 'GTIN': '1234567891234', 'Brand': 'abcdefg', 'ProductCode': '123abcdefg', 'IcecatProductId':'123456', }, 'en'); }, 200);
There are three ways to access a data-sheet: by ‘Brand’+’ProductCode’, by ‘GTIN‘ or by ‘IcecatProductId’.
a. Do a call by Brand + Manufacturer Product Code combination. We will try to recognize the product even for a known variation of Manufacturer Product Code.
Example:
IcecatLive.getDatasheet('#IcecatLive',{'UserName': 'demoshop', 'Brand':'Philips','ProductCode':'123456789'},'en', 200);
b. Do a call by GTIN code (EAN or UPC or JAN)Example:
IcecatLive.getDatasheet('#IcecatLive',{'UserName': 'demoshop',‘GTIN’:'8478097595798729'},'en', 200);
Description of the parameters:
The Icecat Live API supports multilingual calls to retrieve digital assets related to multiple locales.
In case a user wants to retrieve a specific container or the whole Icecat Live block for a product in one preferred language, but it’s not available, a user can apply a backup language. To implement this logic a user just needs to pass the list of language codes as an array. For example, [‘en’, ‘fr’] where UK English (en) is the preferred language and France French (fr) is the backup language. In this case, fr content will be retrieved if the en content is not available.
It is possible to add up to 5 languages to the array. Please, find more info and an example script in this article.
Open Icecat Live is responsive by design and adapts to your own CSS. If more customization is needed, you can customize our JS to your own needs. To perform customization, you need to store icecatlive.js locally on your server, edit it to your own needs and switch to your customized library in your HTML code.
Please, note that Icecat does not support client customized JS libraries. If you use these, arrange support yourself.
In case that you don’t want to insert the complete data-sheet (IcecatLive.getDatasheet), but only a specific object, we have created separate calls for inserting a Video, a 3D tour or Reasons To Buy.
NOTE: these are the most common requests for individual objects. Contact us for information about other calls for individual objects or CSS customization.
The syntax is as follows:
getVideos, get3DTours, and getRTB are separate calls of video, 3D tours (360o views), and Reasons To Buy respectively. The parameters which you have to pass to these methods are completely the same as with the already discussed getDatasheet call. outputSelector is a container where you want to place Icecat Live’s content; resource_id is a query parameter and lang is the preferred language (or locale) for the page.
Examples of a call for the video(s) object.
With Brand + Part Code (see also a test on a blog):
IcecatLive.getVideos("#videosContainer", { 'UserName': 'openicecat-live', 'Brand':'Philips', 'ProductCode':'50PFL5008T/12', }, 'en');
With GTIN (EAN, UPC):
IcecatLive.getVideos("#videosContainer", { 'UserName': 'openicecat-live', 'GTIN': '8712581669904', }, 'en');
Example of a call for a 3D tour object (syntax variants are the same as for getVideos):
IcecatLive.get3DTours("#toursContainer", { 'UserName': 'openicecat-live', 'GTIN': '8712581669904', }, 'en');
Example of a call for an RTB object (syntax variants are the same as for getVideos):
IcecatLive.getRTB("#RTBContainer", { 'UserName': 'openicecat-live', 'GTIN': '8712581669904', }, 'en');
The parameters are equal to the ones for getting a complete data sheet.
Icecat Live allows users to integrate videos into their product pages by creating a custom video play button that opens videos in a modal window. More information and examples of implementation can be found in this article.
Please, contact us in case of questions or comments via your Icecat account manager or via the website
Read further: Manuals, Icecat, JavaScript, Open Icecat, product content, product data-sheet
Hi
I’m Sergio Cañadas, my username in Icecat is ******.
We are trying use open icecat live:
Our setting in prestashop code is:
setTimeout(function() { IcecatLive.getDatasheet(‘#IcecatLive’, { ‘shopname’: ‘******’, ‘ean_upc’: {$product->ean13}, ‘type’:’html’ }, ‘es’); }, 200);
It worked first time, but after response is: Display of content for users with a Full Icecat subscription level will require the use of a server certificate and a dynamic secret phrase. Please, contact your account manager for help with the implementation
An example url result is: https://live.icecat.biz/api?shopname=******&lang=es&content=&ean_upc=5711045764349&type=html&version=1.0.0.0
Could you help us?
Regards
Dear Sergio
You are trying do get product information that belong to Full Icecat catalogue. For that you need Full Icecat subscription. My colleague Deisy Vanegas will contact you to discuss the further steps.
Kind regards
Vazha Abramishvili
hi dear service i want to order one LCD screen for my tv because it has gone break so i wish that you can help your customer thanks here is my number and you can also contact me.
Hello, we do not sell products. We provide product data. However, you can check out LCD monitiors’ specs in our catalog: https://icecat.biz/en/lcd-tvs/s/?page=1&stock=0&sort=score&view=list For many brands, data is accessible for free. Kind Regards, Gloria
Hi, i only need to show the specs of the product i mean the div “icecatLiveFeatureGroups”, how can i made the script to made that?
example of the script that i use
setTimeout(function(){ IcecatLive.getDatasheet(‘#IcecatLive’, { ‘UserName’: ‘*****’, ‘Brand’: ‘***’, ‘ProductCode’: ‘*****’, }, ‘es’); }, 200);
Hi Pedro,
Thanks for your interest in our service. We will contact you via email soon regarding this question.
Hi! I’m also interested in showing only the specs. Could you please inform me too. Thanks!
Hi Daniel, my colleague will contact you shortly :)
Hi We have a copy of icecast which was on our streaming computer for our radio station 4DDD Dalby QLD Australia we lost all data on our system and have replaced with a new set up which intern our technition no longer is with us and no one here knows how to set icecast up to stream could someone please advise on how to do
James A Wagner
Chairman 4ddd Western Downs Radio Email: chair@radio4ddd.com.au
Dear James,
I think you are confusing companies, we are Icecat not Icecast and we don’t have this application you are asking about, so unfortunately we cannot help you.
Kind Regards, Laura
I have a full Icecat subscription. Where can I find the full documentation of icecat live?
In the documentation page you mention 4 functions, just for explanation purposes:
getDatasheet getVideos get3DTours getRTB
Where can I see the full list of functions available? Which one should I use if I only need to get the images, or the specs, or the marketing text?
thanks in advance
Dear Sergio,
The full list of functions available you can find here: https://iceclog.com/icecat-live-manual-for-granular-call/ In this manual you have all the definitions for call, so you can find all the functions to get images, specs…etc.
Hi We want to integrate your platform to our shopify site for us to be able to integrate images and contents in buik.
Can you give us instruction on how to do it pls?
Our Iceshop colleagues will come back to you as you can sign up for the Shopify integration pilot. Further, you could contact Shopify as well.
{IcecatLive.getDatasheet(‘#IcecatLive’,{‘UserName’: ‘openIcecat-live’,’Brand’:’HP’,’ProductCode’:’204N9EA#ABF’},’fr’);}
If 204N9EA#ABF is a French product and I need lang=fr to get data. But how do I define “en” as language to get content in english?
Dear Morten, just replace lang=fr by lang=en. Even if it’s a French product version, we still have language version automatically for each product data-sheet. Note: most if not all localization codes like #ABF are mapped away to a mother data-sheet as the key specs are the same.
Hello, I also want to display products specs How ? Thanks
Dear Bela If you are using Icecat LIVE integration for the whole data sheet, specs will also be visible.
Salve stiamo facendo qualche prova per vedere come si presentano le descrizioni all’interno del nostro prestashop: abbiamo provato con questo :
setTimeout (function () {IcecatLive.getDatasheet (‘# IcecatLive’, {‘UserName’: ‘*******’, ‘Brand’: ‘HP’, ‘ProductCode’: ‘F0Y97EA’}, ‘it’);}, 200);
inserito nel codice sorgente della scheda dettagli prodotto ma al salvataggio ci da questo errore “Il campo description (Italiano (Italian)) non è valido.”
Potete darci qualche dritta ?
You don’t have a space between # and IcecatLive? Should be: ‘#IcecatLive’
stesso errore
sempre “Il campo description (Italiano (Italian)) non è valido”
questo è quello che stiamo usando
//
Salve stiamo facendo qualche prova per vedere come si presentano le descrizioni all’interno del nostro prestashop: abbiamo provato con questo:
setTimeout (function () {IcecatLive.getDatasheet (‘# IcecatLive’, {‘UserName’: ‘*******’, ‘Brand’: ‘HP’, ‘ProductCode’: ‘F0Y97EA’}, ‘it’ );}, 200);
inserito nel codice sorgente della scheda dettagli prodotto ma al salvataggio ci da questo errore “Il campo description (English (Italian)) non è valido.”
Potete darci qualche dritta?
rispondere ha commentato il 22 marzo 2021 da Martijn Hoogeveen Non hai uno spazio tra # e IcecatLive? Dovrebbe essere: “#IcecatLive”
rispondere
You can enter your values here, and see the working of the script here: https://live.icecat.biz/
Can you show the URL where you did your test integration?
Really a good tool! Just tested and it works very well. I would use it if the were no information about guarantee in the descriptions (‘Marketing Text’). Guarantee information are subject to statutory provisions… that makes it difficult to use without further, excplicit information for the costumers in a webshop, at least in Germany…
Otherwise it would be cool, if there were a parameter to use only the specs, without the Marketing Text. So I could use it legally secure.
Best, Micha
Yes, there is. It’s called “Granular Calls”. You can select the containers that you need. Further, you can add to your website any general disclaimers that you need.
Thanks a lot Martijn, just integrated… that works for me! :)
Hello, what can I do if I don’t want to hardcode the value of for let’s say EAN (GTIN) in the function? For example instead of:
window.addEventListener(‘liveload’, function() { IcecatLive.getDatasheet(‘#IcecatLive’, { UserName: ‘******’, GTIN: ‘123456789’ }, ‘de’, 200)
I would like to get something like this to be pulled from the portal:
window.addEventListener(‘liveload’, function() { IcecatLive.getDatasheet(‘#IcecatLive’, { UserName: ‘icecat_hartlauer’, GTIN: {{inriver:fields.itemEAN.value}} }, ‘de’, 200)
And does it work with any type of field, CVL and regulat strings?
Kind regards, Marko
Yes, the functions are intended to be softcoded. Take care of declaring your variables in the JS code so that they are recognized. And, as long as in your web-app the CVL (InRiver) variable is known, it should be possible to use these or other variables of course.
Hi. It’s a interesting tool, but I’m concerned about the username, because the browser can display it from the Inspect Element.
Is there something to hide the username?
Thanks in advance.
Thx Ricardo. If you want to avoid displaying your user name, then use the data interfaces (XML, JSON). The same data is available and you can seamlessly display it from your own server. The tech team promised to rethink options for hiding user name as an option in the LIVE version.
Ok, thanks Martijn. I have another question, Is there a way to display the text from tooltip in the language defined previously? in my case a have ES_MX and it works, but the titles in the specs have a tooltip and some of them show English text.
Thx Ricardo, pls provide an example link so that we can review it.
Below is the contents of my https://www.am4computers.com/icecat.html
setTimeout(function(){IcecatLive.getDatasheet(‘#IcecatLive’,{‘UserName’: ‘openIcecat-live’,’Brand’:’HP’,’ProductCode’:’F0Y97EA’},’en’);}, 200);
But I’m getting nothing, just a blank page.
Dear Ahmed
The product you are referring to is not published for EN localization by HP (manufacturer). That is the reason it is not available for that localization.
Salve a tutti, stiamo facendo delle prove per vedere come si presentano le schede prodotti, ma utilizzando il codice degli esempi si fa come risultato una pagina completamente bianca. Dopo posso trovare qualche altro esempio? il ns sito sito è in asp. Grazie
Hi Luigi, Someone from the Italian team will contact you. Regards, Wouter
I’m trying to use the Video display function, but I do not know the UPC code for my product.
Is it possible in future to add capability to use ICECAT CAT ID instead? Or is there another workaround?
For this product I wanted the main product page for it has no UPC code listed, I was able to make the product and specs display using the the ICECAT number but this doesn’t seem to work in the Video or 3DTour or RTB calls.
Here is the product call I used to get the product sheet:
IcecatLive.getDatasheet(‘#IcecatLive’, { ‘UserName’: ‘digiguy’, ‘GTIN’: ”, ‘Brand’: ‘Xerox’, ‘ProductCode’: ”, ‘IcecatProductId’:’91817406′, }, ‘en’); }, 200);
Thanks!
Hi Ian, Thanks for your comment. A country manager will contact you asap. Regards, Wouter
Hi There,
I am checking out an example product with ID ‘icecat_id’: ‘3553337’ to integrate it to mobile apps for ICECAT content syndication. It is appearing fine with the scripts you guys shared but the problem is the content is not responsive for now. So, i was curios that is ICECAT support responsive content or not ?
following the scripts
setTimeout(function(){IcecatLive.getDatasheet(‘#IcecatLive’, { ‘shopname’: ‘myUserName’, ‘icecat_id’: ‘3553337’ },’en’);}, 200);
Hi Nitin, Thanks for your response. A country manager will contact you asap. Regards, Wouter
Hi there, was wondering if there is a way to recieve the datasheet as pdf? Or to directly send it to local printer via javascrtipt?
Thanks T.
Hi Tony, a responsible country manager will contact you soon. Regards, Wouter
I call Icecat with javascript like this:
IcecatLive.getDatasheet(‘#Container’, { GTIN: EAN, UserName: ‘dmlspa’ }, ‘it’);
and I received this error
Access to XMLHttpRequest at ‘http://live.icecat.biz/api/html?lang=it&content=title%2Cgallery%2Cfeaturelogos%2Cessentialinfo%2Cbulletpoints%2Cmarketingtext%2Cmanuals%2Creasonstobuy%2Ctours3d%2Cvideos%2Cfeaturegroups%2Creviews%2Cproductstory&version=2.0.0>IN=4901780828548&UserName=dmlspa&selector=%23Container’ from origin has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.
Hi Lorenzo, a country manager will reach out to you asap. Regards, Wouter
Can you hekp me with the right part of the code to load only the images? I tried this but it doesnt work. I think getGallery is wrong? Is there a list of all get-commands?
IcecatLive.getGallery( {
‘gallery’:’#Container8′
},
Hi, we get the same error (for images i think, datasheet is working). Any help would be really appreciated. Thanks
Hi. Anyone has developed the script to integrate in Prestashop?
My goal is to obtain something like that.
https://icecat.biz/it/p/lenovo/80l000egpb/notebooks-g50-80-27232648.html#live
Thanks
For example https://iceshop.biz/icecat-commerce-plugins/prestashop/
Hi, I tried to build a simple page to test Icecat, but it does’nt work. I get this error in Console.. live-current-2.js:2 GET https://live.icecat.biz/api/html?lang=en&content=productstory%2Ctitle%2Cgal…erName=openIcecat-live&Brand=HP&ProductCode=F0Y97EA&selector=%23IcecatLive 404 (Not Found) testice.html:1 Uncaught (in promise) Mandatory data request failed
Executing directly url request reported as 404 in console, it report “Error message: Products datasheet is not yet released. Error Code: 15”
Here my page, it is exactly as your demo on this page. I’m running Chrome on Windows 10. Thanks
Carlo
Dear Carlo
As you can see in the Error Message HP product that you are requesting is not yet released. Released dates per local are set by the HP directly. Only authorized HP partners have access to the products with pre released dates. You can also request authorization from HP via http://www.icecat.biz from your user interface.
Hi there. I’m trying to use icecat live with this code on wordpress/woocommerce ecommerce. I call icecat with this js code:
– setTimeout(function() { IcecatLive.getDatasheet(‘#IcecatLive’, { ‘UserName’: ‘my-user-example’, ‘IcecatProductId’: ‘93243206’ }, ‘es’); }, 200);
This did not work in my site, And I received this error in browser console.
FROM: live-current-2.js GET https://ecommerce-exampple.com/config.json/ 404 (Not Found)
Thanks.
The code that you are using is correct but “https://ecommerce-exampple.com/config.json/” is not part of Icecat standard call. It is the reason of the 404 Error message. My colleague will contact you on your email for the further investigation.
Your email address will not be published. Required fields are marked *
Comment *
Name *
Email *
Website
Δ