Step-by-step guide
Out of the box data
Digital Remarketing
pushed on every page
- event
- Name of event
- ecomm_pagetype
- other
- home
- category
- product
- cart
- purchase
- ecomm_prodid
- optional
- only visible on category, product, cart and purchase page types
- ecomm_totalvalue
- optional
- only visible on product, cart and purchase page types
- google_conversion_value
- optional
- only visible on purchase page type
{ "event": "remarketing", "ecomm_pagetype": "home", "ecomm_prodid": ["ProductCode", "ProductCode"] or "ProductCode", "ecomm_totalvalue": "99.99", "google_conversion_value": "99.99" }
Enhanced ecommerce
Product Impressions
pushed when a product list is displayed
- event
- Name of event
- impressions are pushed via and event as the page could load data after the page has been loaded via infinite scrolling
- the data is pushed in blocks to try to ensure the data amount pushed is less than the object data limit
- event_type
- impression
- currencyCode
- the currency code for the account currently being viewed
- name
- the product description
- id
- the product code
- category
- the primary category for the product
- list
- the list from which the product resides
- Product List
- Search Results
- Items Recently Viewed
- Campaign - Campaign Description
- CrossSell
- UpSell
- User Favourites
- Prior Purchases
- Product Details (the product detail page displays the list name from which the product was clicked and falls back to this value if navigated directly to a product)
- the list from which the product resides
- brand
- the product brand
- position
- the position in its respective list
- price
- the product price
- only sent through if hide pricing on the role is not enabled
{ "event": "enhancedEcomm", "event_type": "impression", "ecommerce": { "currencyCode": "AUD", "impressions": [ { "name": "Product Description", "id": "ProductCode", "list": "list name", "category": "/first level/second level/third level", "brand": "brand name", "position": 1, "price": "99.99" } ] } }
Product Clicks
pushed when clicking on a product link
- event
- Name of event
- list
- the list from which the product resides
- Product List
- Search Results
- Items Recently Viewed
- Campaign - Campaign Description
- CrossSell
- UpSell
- User Favourites
- Prior Purchases
- Cart Item
- the list from which the product resides
- name
- the product description
- id
- the product code
- category
- the primary category for the product
- brand
- the product brand
- price
- the product price
- only sent through if hide pricing on the role is not enabled
{ "event": "productClick", "ecommerce": { "click": { "actionField": { "list": "list name" } "products": [ { "name": "Product Description", "id": "ProductCode", "category": "/first level/second level/third level", "brand": "brand name", "price": "99.99" } ] } } }
User Details
There is an option to only track logged in users
pushed on every page
{ "User_ID": "unique user id" }
Questionnaire
This is only for non widget questionnaires as the URL does not change after the questionnaire is submitted so a virtual URL is pushed.
Widget based questionnaires have a redirect URL after form submission
{ "virtualURL": "thank you URL" }
Checkout Options
- step
- the step number
- option
- Cart
- Login
- Address
- Payment
- Order Complete
{ "event": "checkout", "event_type": "checkout", "ecommerce": { "checkout_option": { "actionField": { "step": 1, "option": "Cart" } } } }
Transactions
Pushed on successful submission of an order
{ "event": "enhancedEcomm", "event_type": "payment", "ecommerce": { "purchase": { "actionField": { "id": 100000000, "revenue": 99.99, "tax": 9.99, "shipping": 10.00 } }, "products": [ { "name": "Product Description", "id": "ProductCode", "category": "/first level/second level/third level", "price": "99.99" } ] } }
Login Success
pushed on a successful login
- widgertName
- The name of the widget used to login
{ "event": "login", "widgetName": "widget-name" }
Logout Success
pushed on a successful logout
- widgertName
- The name of the widget used to logout
{ "event": "logout", "widgetName": "widget-name" }
Add to Cart
pushed on successful add to cart
- pageType
- The page the product was added from
- Product List
- Search Results
- Product Details
- The page the product was added from
- list
- The list the product was added from
- Product List
- Search Results
- Product Compare
- Items Recently Viewed
- Campaign - Campaign Description
- CrossSell
- UpSell
- User Favourites
- Prior Purchases
- Product Details
- Cart Fast Order
- The list the product was added from
{ "event": "addToCart", "ecommerce": { "currencyCode": "AUD", "add": { "products": [ { "name": "Product Description", "id": "ProductCode", "category": "/first level/second level/third level", "quantity": 1, "brand": "brand name", "price": "99.99" } ] } }, "pageType": "Product List", "list": "Product List" }
Remove from Cart
pushed when a product is removed from the cart
{ "event": "removeFromCart", "ecommerce": { "currencyCode": "AUD", "remove": { "products": [ { "name": "Product Description", "id": "ProductCode", "category": "/first level/second level/third level", "quantity": 1, "price": "99.99" } ] } } }
Cart Updated
pushed when cart quantities are changed.
Increases trigger and "addToCart" push, while decreases trigger a "removeFromCart" push
Promo Codes
For promo codes we push success and fails when adding promo codes, we also push the removal of a promo code
invalid
{ "event": "invalidPromoCode", "promoCode": "XXXX" }
valid
{ "event": "validPromoCode", "promoCode": "XXXX" }
removed
{ "event": "removedPromoCode", "promoCode": "XXXX" }
View Order
Pushed when an order is viewed on the order tracking page
{ "virtualURL": "/TrackOrder/ViewOrder/Order Number" }
View Template
Pushed when a template is viewed on the order templates page
{ "virtualURL": "/OrderTemplates/Template Name" }
Extending or Overriding pushed data
If you want to push different data you can include this data by adding fields to the JSON field groups
SiteTrackerUserData-append (or SiteTrackerUserData_RoleName-append for role specific changes
- PrimaryTable Name = User
- You can also retrieve data from the users Role or Customer
SiteTrackerProductData-append (or SiteTrackerProductData_RoleName-append for role specific changes
- PrimaryTable Name = Product
SiteTrackerOrderData-append (or SiteTrackerOrderData_RoleName-append for role specific changes
- Primary Table Name = ProntoSalesOrder
- You can also retrieve field data from ProntoSalesOrderLine and Product
Options
- First param is the data to manipulate
- Second param is the type of manipulation
- extend
- override
- The third param is the function that will perform the manipulation
- The data is the raw data that can be used for manipulation (and includes the additional data from the JSON field groups described above)
- return an object with the properties and data to use
$.cv.css.tracker.track("userDetail", "extend", function(data) { return { EmailAddress: data.EmailAddress }; });
Related articles