Sign in

Welcome to our Support Center

Get help with integration and live campaigns

Welcome to our Support Center. Get help with integration and live campaigns

Mandatory or optional info is missing or not properly formatted

Criteo requires specific dynamic and static parameters to be passed into the Criteo OneTag, so that user browsing intent can be tracked and the Criteo Engine can build relevant product recommendations to be displayed on the Criteo creatives (banners).
The following three parameters are common across all the different pages where the Criteo OneTag is implemented:

  • Account ID
  • SiteType
  • Email

Mandatory Parameters

Account ID

This is your Criteo Account ID. It was provided to you during the initial set up of the Criteo OneTag. If your Account ID is 1234 then the Criteo OneTag should look like this:

 { event: "setAccount", account: 1234 }

Site Type

The site type parameter is a dynamic parameter that is present in the Criteo OneTag across all the pages of your site. If your site has different versions to support a range of devices, indicate which version is displayed to the user via the “setSiteType” parameter:

  • d for desktop
  • m for mobile
  • t for tablet

If you do not have a mobile - or tablet-specific site, set the value to d

setSiteType parameter for the desktop version of a site:

 { event: "setSiteType", type: "d" },


setSiteType parameter for the mobile version of a site:

 { event: "setSiteType", type: "m" },


setSiteType parameter for the tablet version of a site:

 { event: "setSiteType", type: "t" },

Product ID, Price, Quantity, and Transaction ID

On top of the above parameters, the implementation of the Criteo OneTag in the Search Listing, Product, Basket and Sales Confirmation pages require other parameters (Product ID, Price, Quantity and Transaction ID)
Product ID is necessary for the Criteo OneTag to match what your users are looking at with the available products from your feed. If the ID for the product displayed on the page is B234, the viewItem event will look like:
viewItem event example:

 { event: "viewItem", item: "B234" }



If the IDs for the top three products displayed on the search result or category listing page are A111, B234 and H556, the viewList event will look like:
viewList event example:

 { event: "viewList", item: ["A111", "B234", "H556"] } 


If the user has added two items to the basket:

  • Two instances of the Product ID A122 with unit price £44.90
  • One instance of the Product ID F5532 with unit price £85.00

the viewBasket event will look like:

 { event: "viewBasket",  item: [ { id: "A122", price: 44.90, quantity: 2 },
{ id: "F5532", price: 85.00, quantity: 1 }
]}

If the user has purchased:

  • Two instances of the Product ID A122 with unit price £44.90
  • One instance of the Product ID F5532 with unit price £85.00

and the Transaction/Order ID for the purchase is G555999, the trackTransaction event will look like:

{ event: "trackTransaction", id: "G555999",
item: [ { id: "A122", price: 44.90, quantity: 2 },
{ id: "F5532", price: 85.00, quantity: 1 }
]}

Optional Parameters

Email

The email parameter is a dynamic parameter that is present in the Criteo OneTag across all the pages of your site. This parameter is used for Criteo Cross Device that enables Criteo to accurately match users across multiple devices. In the email parameter field, pass the customer email address (trimmed of spaces and converted to lowercase) and Criteo will hash it using an MD5 algorithm before it is stored on our servers. Hash encrypted email addresses are irreversible and anonymous, so Criteo cannot access your users' addresses.

setEmail parameter example:

 { event: "setEmail", email: "user@example.com" },

Please leave it blank if there isn’t an email address available.

setEmail parameter with empty value example:

 { event: "setEmail", email: "" },


Alternatively, you can pass the encrypted email address using an MD5 hash function (here a link to a page with some examples on different programming languages of MD5 hash functions). In this case, you should replace the default "setEmail" with “SetHashedEmail” as shown below.

Finally, you must pass the dynamically encrypted email address, (after it has been trimmed and converted to lowercase).

setHashEmail parameter example with hashed email address user@example.com :

 { event: "setHashedEmail", email: "b58996c504c5638798eb6b511e6f49af" },


Please leave this parameter blank if an email address is not available. Example:

 { event: "setHashedEmail", email: "" },
Was this article helpful?
0 out of 0 found this helpful
Powered by Zendesk