You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »


Prerequisite

Please note that our Enhanced E-commerce Tracking is only supported if you are using Universal Analytics tracking and Google Tag Manager.

Context

SNEAK PEEK  UPCOMING You are a strong user of the Google Analytics enhanced e-commerce tracking and you want to gain a deeper understanding of your visitors behavior especially on the products and promotions impressions, clicks and a more detailed view on the checkout process of your visitors. Our Enhanced E-commerce feature has been further extended and is here to provide you with all those details.

Solution

Following the delivery of Cart and user info tracking on Enhanced E-commerce in Whymper V3, we have continued our journey to enrich the e-commerce tracking data for our online sales platform in Bishorn V1.  This time, we focus on understanding users' shopping cart behavior and realizing email re-targeting for cart abandoners. A few more Google Analytics reports are now filled with the correct data and the DataLayer object is also further extended.

Example

Remove from Cart DataLayer Example
// Measure the removal of a product from a shopping cart.
dataLayer.push({
  'event': 'removeFromCart',
  'ecommerce': {
    'remove': {                               // 'remove' actionFieldObject measures.
      'products': [{                          //  removing a product to a shopping cart.
        'name': 'Museum Pass',                  // Product Name
        'id': '1234-567-987',                   // Unique SKU of the product item, i.e. product id - item id (if product is non-dated product)  - performance id (if product is of event or parking or visit type) - seat category id - tarrif type id - timeslot id (if product is timeslot) - advantage id (if any) (same as enhanced e-commerce dataLayer)
        'price': '15.25',                       // Unit Price          
        'brand': 'Visit Pass / Exhibition',     // Product Family Type / Topic of the product (if set) (same as enhanced e-commerce dataLayer)
        'category': 'Cat A / Normal',           // Seat category / tarrif type
        'variant': 'Cross-sell 1-click / 1234', // Cross selling type / parent product id (if added to cart via cross-selling)
        'quantity': 1                           // Quantity added to cart for this product item
      }]
    }
  }
});

Scope: applies for all internal sales channels that enables the pos-param "Enable enhanced e-commerce tracking", applies for all product families (includes Season ticket, Hospitality)

1. Product impression

Push Product impression data to datalayer when:


Product impression DataLayer Example
<script>
dataLayer.push ({
  'event':'ee-productImpression'
  'ecommerce': {
    'impressions': [{
      'id':'12345678',                  // Product ID, Tour ID. If on landing display multiple timeslots or multiple performances, push product ID of the Pass or Event multiple times.
      'name':'Romeo & Juliet',          // Product name, Tour name
      'brand':'Event / Drama',          // Product Family Type / Topic of the product (if set) 
      'position':0,                     // Position of a product in a given Section (landing page) or Product type (Landing page list view or Normal view). Position of a product in a Section can be different if user change the day view (Today, Tomorrow, After,...)
      'list': 'Hot topic'               // On Landing page content return Section name, on Landing page list view return Product type name (for a Product type products can be grouped by topic (sub-grouping), please set position and list by Topic name in this case
     },
     {
      'id':'ABC124',
      'name':'Product Name',
      'brand':'Product Brand',
      'position':1,
      'list': 'Hot topic'
     }]
   }
});
</script> 

2.  Promotion impression (Advantage)

Push Promotion impression data to datalayer when: same scenarios as above

<script>
dataLayer.push ({
  'event':'ee-promoImpression'
  'ecommerce':{
    'promoView':{
      'promotions':[{
      'id':'177664',                            // Advantage ID
      'name':'Member Exclusive',                // Advantage name
      'creative':'Only for member',             // Advantage description
      'position':1                              // Position of a product in a given Section (landing page) or Product type (Landing page list view or Normal view)
     }]
   }
  }
});
</script> 

3. Product details impression

Push Product details' data when a product was clicked (ex: https://tplay.int2-shop.secutix.com/selection/event/date?productId=101073013203)

For Calculated Season ticket it is at ticket selection page: https://thecube-l-cube.qa22-shop.secutix.com/selection/subscription?productId=101072843422

For Hospitality, it is at hospitality selection page: https://eurasian-hospitality-webshop-seta.qa22-shop.secutix.com/selection/hospitality?productId=10228176205037&itemId=10228178451179

Push data at ticket selection page.

(Consider Match/Performance details page instead of Match selection page?) -> page before the ADD TO CART MMI: yes please

<script>
dataLayer.push({
  'event':'ee-productView'
  'ecommerce': {
    'detail': {
        'products': [{
        'id':'ABC123',
        'name':'Product Name',
        'brand':'Product Brand',
       }]
     }
   }
});
</script> 

4. Product click

Push Product details' data when user clicks a product

<script>
dataLayer.push({
  'event':'ee-productClick'
  'ecommerce': {
    'click': {
      'actionField': {
      'list': 'Product list name'
      },
      'products': [{
        'id':'ABC123',
        'name':'Product Name',
        'brand':'Product Brand',
        'position':0
        }]
       }
    }
});
</script> 
5. Promotion click

Push Product details' data when user clicks a product

<script>
dataLayer.push ({
  'event':'ee-promoClick',
  'ecommerce':{
    'promoClick':{
      'promotions':[{
        'id':'Promo ID',
        'name':'Promo name',
        'creative':'Creative name',
        'position':Position
        }]
      }
    }
});
</script> 


Acceptance criteria

  • Sending data from new actions depend on current pos-param "Enable enhanced e-commerce tracking" which applies for all internet sales channels
  • Products/Promotion impression data is sent in Landing page (Section view + list product families view), Landing page calendar view and normal product list page are out of scope
  • On Landing page section view, sending data also depends on scroll depth, which means only send list of products/section if user scroll the page
  • If a product card on Landing is a Tour, push Tour ID and its' information as the Product ID information. There is no need to send all product IDs inside that Tour
  • If a product card or list is a timeslot/performance, push its' product ID (Event ID or Visit pass ID).
  • Data is also sent after user click on a product/a promotion, and in the product/promotion details page (page just before the shopping cart)

Delivery step: when user choose a delivery mode and click on Continue

<script> dataLayer.push({ 'event': 'ee-checkout', 'ecommerce': { 'checkout': { 'actionField': { 'step': 1, //check out step, (1: Delivery, 2: Summary) 'id': '15284', //shipment Mode ID 'shippingMode': 'E-ticket', // shipment mode name 'shipping': 8 //shipment fee }, 'products': [{ // List of productFieldObjects inside the order. 'name': 'Triblend Android T-Shirt', // Product Name (mandatory). 'id': '12345', // Product Id (mandatory). 'price': '15.25', // Unit Price (mandatory) (same as the basic e-commerce tag). 'brand': 'Visit Pass / Exhibition', // Product Family Type / Topic of the product (if set) 'category': 'Cat A / Normal', // seat category / tarrif type 'variant': 'Cross-sell 1-click / 1234567', // cross selling type / parent product id (if purchased via cross-selling) 'quantity': 1, // same as the basic e-commerce tag 'coupon': 'PartnerCUBE' // advantage name / advantage id }] } } }); </script>

Order summary step: when user input a voucher, select a payment method, then click on Continue to Payment

<script> dataLayer.push({ 'event': 'ee-checkout', 'ecommerce':{ 'checkout':{ 'actionField':{ 'step': 2, //check out step, (1: Delivery, 2: Summary) 'option': 'VISA', //selected payment method name 'id': '1000463', //File ID 'shipmentID': '1111111', // shipment ID, get from Delivery step 'shippingMode': 'E-ticket', // shipment mode name 'shipping': 8, //shipment fee 'payment fee': 4, //payment overhead fee 'revenue': 35, //total amount to pay 'coupon': 'PROMO' //promotional code or voucher code }, 'products': [{ // List of productFieldObjects inside the order. 'name': 'Triblend Android T-Shirt', // Product Name (mandatory). 'id': '12345', // Product Id (mandatory). 'price': '15.25', // Unit Price (mandatory) (same as the basic e-commerce tag). 'brand': 'Visit Pass / Exhibition', // Product Family Type / Topic of the product (if set) 'category': 'Cat A / Normal', // seat category / tarrif type 'variant': 'Cross-sell 1-click / 1234567', // cross selling type / parent product id (if purchased via cross-selling) 'quantity': 1, // same as the basic e-commerce tag 'coupon': 'PartnerCUBE' // advantage name / advantage id }] } } }); </script>

 Acceptance criteria

  • Data is sent to datalayer in check out process with 2 steps: Delivery + Order summary
  • It also depends on current pos-param "Enable enhanced e-commerce tracking" which applies for all internet sales channels

Getting started

MANDATORY - What is the setup required to use the feature (even if none, please mention)? Where can I see the feature? (this is intended to be a short guide). At least one screenshot should be provided, at latest for the finalized release note at sprint end.

Examples

OPTIONAL - Show some example use in actual customer use cases, or other relevant information.

  • No labels