Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Fields

Description

Default

Tracking Domain

The tracking domain can be a Third-Party Ingenious Tracking Domain, a First-Party Ingenious Tracking Domain or a GTM Serverside Domain. You can find it on the platform under "Partnerships -> Advertiser -> Settings".

proxy.ingenious.cloud

Advertiser Id

You can find the advertiser ID on the platform under "Partnerships -> Advertiser -> Settings". Do not use the internal ID (mid).

Conversion Id

Unique conversion identifier from your system

gtmss_{currentTimestampMillis}

Conversion Target

Defines an event and its type, for example Sale, Appinstall, Newslettersignup.

sale

Tracking Currency

Determines the currency for all amounts.

Unique Id

The unique ID is used to identify conversions during the validation process.

Discount Value

This is the total net discount value. '0.00' is allowed.

Discount Code

This is the applied discount code.

Basket

The contents of the shopping cart consist of items containing the following values in JSON format

Session Id

A session Id. The data type is string.

Click Ids

A comma-separated list of click IDs.

uses _iclid Cookie

Gdpr

Activates the general data protection regulation according to TCFv2.0

Gdpr Consent

The actual tcfv2.0 string

Site Id

A short description of the conversion page.

Timestamp

Usage for cache invalidation.

Current Timestamp in Millis

HTTP Location

The complete Browser-URL on which the tag was fired.

Customer Id

This specifies the internal customer ID from your system.

Customer New

This specifies a new or existing customer. Use value 'true' for new customer or 'false' for existing customer.

Pay Method

Customer payment method, for example 'credit card' or 'paypal'.

User Value 1

These fields are for free additional information. All formats are accepted.

User Value 2

These fields are for free additional information. All formats are accepted.

...

Generating the 'basket' Variable

...

Using a GTM Variable Template

The ECommerce Conversion Tracking Tag is crucial for capturing details about a purchase. One of the essential components of this tag is the basket variable, which holds the product details of a purchase.

Here is the JSON object that needs to be transmitted in the basket variable.

Code Block
[{
          "id":${POSITION_ID},
          "pid":"${PRODUCT_ID}",
          "sku":"${PRODUCT_SKU}",
          "prn":"${PRODUCT_NAME}",
          "brn":"${PRODUCT_BRAND}",
          "prc":"${PRODUCT_HIERARCHY}",
          "pri":${PRODUCT_PRICE},
          "qty":${PRODUCT_QUANTITY},
          "dsv":${PRODUCT_DISCOUNT},
          "shp":${PRODUCT_SHIPPING},
          "tax":${PRODUCT_TAX},
          "trc":"${TRACKING_CATEGORY}"
      }]

More details and a description of each parameter can be found here: https://ingenioustechnologies.atlassian.net/wiki/spaces/KB/pages/1440809027/Configuring+and+implementing+tracking+tags#Basket-tracking

To transmit the product details correctly, you'll need to set up the basket variable with a specific JSON object format in GTM. Here's a step-by-step guide for non-technical users:

...

Navigate to Variables: On the left sidebar, click on "Variables."

...

Info

The 'basket' in Ingenious Conversion Tracking

The 'basket' in Ingenious Conversion Tracking represents a collection of product details for items a user intends to purchase. Here's a basic breakdown:

  • pid: Product ID.

  • prn: Product name.

  • brn: Brand name.

  • prc: Product category.

  • pri: Price.

  • qty: Quantity.

  • trc: Tracking category.

Translating Shop Data to Ingenious Format

Most online shops have their own GTM variables for shopping details. To integrate with Ingenious, this data needs to be mapped to the Ingenious basket format. Essentially, it's about matching your shop's GTM variable fields to the corresponding fields in the Ingenious format for seamless integration and accurate tracking.

Working in GTM we recommend the strategy to work with a dedicated basket variable. There also is a template for this, to easily configure the basket:

1. Download the Variable Template:

2. Import the Variable Template into GTM:

  • Navigate to "Templates" from the left sidebar.

  • Click on the "New" button in the variable template section, go to the three dots and then select "Import."

    Image Added
  • Browse and select the downloaded variable template file.

  • Follow the on-screen instructions to successfully import the template.

3. Create the 'basket' Variable Using the Imported Template:

  • Once the template is imported, go to "Variables" from the left sidebar.

  • Click on the "New" button to create a new variable.

  • Name

...

  • this variable "basket" or something descriptive

...

Choose Variable Type:

  • Click on "Variable Configuration."

  • From the list of variable types, select "Custom JavaScript."

...

Enter the JavaScript Code: In the code area, paste the following:

Code Block
languagejs
function() {
    return [{
        "id":{{POSITION_ID}},
        "pid":"{{PRODUCT_ID}}",
        "sku":"{{PRODUCT_SKU}}",
        "prn":"{{PRODUCT_NAME}}",
        "brn":"{{PRODUCT_BRAND}}",
        "prc":"{{PRODUCT_HIERARCHY}}",
        "pri":{{PRODUCT_PRICE}},
        "qty":{{PRODUCT_QUANTITY}},
        "dsv":{{PRODUCT_DISCOUNT}},
        "shp":{{PRODUCT_SHIPPING}},
        "tax":{{PRODUCT_TAX}},
        "trc":"{{TRACKING_CATEGORY}}"
    }];
}

...

Set Up Associated Variables: For the script to work, you'll need to set up individual variables for each placeholder (e.g., {{PRODUCT_ID}}, {{PRODUCT_SKU}}, etc.). These variables will capture the respective values from your website or e-commerce platform. You may have already set up the variables, it depends on your existing data layer.

...

Save the Variable: Once you've entered the code, click on the "Save" button.

...

Integrate with the Tag: Now, when setting up or editing the ECommerce Conversion Tracking Tag, ensure you select the "basket" variable you just created for the appropriate field.

...

  • .

  • For the variable type, select the imported template from the list of available templates.

    Image Added

4. Mapping Data in the Variable:

To start, fill in the variable that contains your basket information in the fields your basket:

...

Now you can proceed and provide the name of the variables, that represent the needed basket values. Only mandatory ones need to be filled in. In case not variable is available, just leave it empty.

Within the variable configuration, you'll see fields that correspond to the product details (e.g., Product ID, Product Name, Price, etc.). Fill in the name of your variable.

Example:

...

Fields

Description

Requirement

basket

Represents your basket variable in GTM with your own basket format and product information

Mandatory

position_order_number

optional: In case you want to have your own order number (1, 2, 3…)

Optional

position_uuid

Every position has a UUID in the Ingenious basket format. It usually is created by the Ingenious system. Only provide it, in case needed (e.g. for automated validation process) or if available anyways

Optional

product_id

Id of the product in your system

Recommended

name

Name of the product

Recommended

stock_keeping_unit

SKU

Optional

brand_name

brand

Optional

product_price

Price of the product. This price can be used for commissioning later. It should be without taxes, (unless tax must be included due to legal reasons).

Price of one product (per piece), will be multiplied by quantity in the system later on.

Mandatory

quantity

quantity: How many products were purchased?!

Mandatory

tracking_category

alias of the tracking category (defined in the Ingenious system).

You may leave this field empty. If left empty, default will be applied (works well in most cases)

Optional

discount_value

discount applied to this product. Will be multiplied by quantity in the system later on.

Optional

shipping_costs

Shipping costs of one product

Optional

tax

amount of tax per product. Will be multiplied by quantity in the system later on.

Optional

product_category

Name of your product category or hierarchy in the shop.

Optional

More details and a description of each parameter can be found here: https://ingenioustechnologies.atlassian.net/wiki/spaces/KB/pages/1440809027/Configuring+and+implementing+tracking+tags#Basket-tracking

Ensure that each field is correctly mapped to capture the desired product information.

5. Use the 'basket' Variable in the ECommerce Conversion Tracking Tag:

  • Navigate to "Tags" from the left sidebar.

  • Either create a new tag or edit an existing ECommerce Conversion Tracking Tag.

  • In the tag configuration, look in the section eCommerce settings for the field to select the basket variable. This will ensure that the tag captures the product details from the basket variable during a purchase event.

  • Save and test the tag to ensure it's capturing the product details correctly.

...

6. Publish Changes:

  • Don't forget to submit your changes to make them live.

By following this method, you can efficiently generate the basket variable in GTM using the new variable template and ensure accurate capture of product details during purchase events.

Example for server side implementation (sGTM)

...