Create Content

Download the pixel


Products are measured in Mapp Intelligence if they are viewed, put into the shopping cart, or when the cart was purchased.

After you have created e-commerce parameters and product categories according to your needs, you can now apply them either in Tag Integration and assign it to the Mapp Intelligence plugin or use it directly in your JavaScript implementation.


Implementation Methods

Depending on the application and use case, you have the following implementation options (see Implementation Methods).


First, you need to map the parameters and categories that you have created in Mapp Q3 in Tag Integration. Otherwise, the values are not used for tracking. For this purpose, values from the data layer are created one by one as parameters in Tag Integration.

If you have not mapped parameters yet, follow the steps described in the chapter Adding Tag Integration-Parameters.

To assign product parameters and categories, proceed as follows:

  1. Open the Mapp Intelligence plugin you want to configure, then go to the tab "Product."



  2. The following product and order information serves as a detailed measurement of products and orders:

    ParameterDescription
    Product name or ID

    Mandatory. This parameter must necessarily be completed if you want to measure products. It stores products that are added to the shopping cart. Semicolons separate multiple products.

    Please keep in mind that each product name must not contain more than 110 characters.

    Product cost

    Optional. Contains the product price ("0" or negative are allowed). Use the total cost and not the price per unit when a product is passed multiple times (if the parameter "productQuantity is >1"). If various prices are passed, they are each separated by a semicolon.

    Default = 0

    Please do not use a thousand separators in the prices. Period or comma separates decimals. Otherwise, orders or basket data are not processed at the action tracking with a function call.

    Product quantity

    Optional. Contains the number of the product. If multiple products are passed, they are each separated by a semicolon.

    Default = 1

    Status of shopping cart

    Optional. Contains the status of the shopping cart. Possible values:

    • view: A product is viewed (for example, in the product detail view). This status should always be set if the product can be placed in the shopping cart.
    • add: A product was added to the shopping cart.
    • conf: The shopping cart is purchased.
    • list: The position of a product in the product list.

    If no status is passed while tracking a product, the default value is assumed.

    Default = viewed


    Currency

    Optional. Contains the currency code of a product or an order. The value has to be passed to the Mapp Intelligence pixel according to ISO standards.

    If multiple products are passed on a page (for example, on the order confirmation page, when more than one product has been purchased) only one currency applies to all products. Accordingly, the value must be set only once.

    Passing the currency serves only the currency conversion. This means, if necessary, the currency defined in the Mapp Intelligence frontend will be translated. Only one currency is shown there.

    Total order valueThis parameter must necessarily be completed if total order values should be measured.

    Order IDOptional. This parameter contains a unique order number (order ID). Use this setting to ensure that no orders are counted twice.


  3. Click "+ Add Predefined product information."

  4. Specify the following parameters:

    • Predefined product information
    • Value of the parameter
    • Page area

  5. Optionally, click "+ Add product categories."

  6. Specify the following parameters:

    • Product category ID
    • Product category value
    • Page area



Tag Integration manually

Alternatively, you can make a manual configuration as follows:

Example of a complete configuration on the page

// products
wts.push(["product", "pullover;jeans"]);
wts.push(["productCategory", {1:"outer clothing;trousers", 2:"noname;levis"}]);
wts.push(["productQuantity", "2;1"]);
wts.push(["productCost", "99.90;69.95"]);
wts.push(["productStatus", "conf"]);
wts.push(["currency", "EUR"]);

//order
wts.push(["orderValue", "12.99"]);
wts.push(["orderId", "M-12345"]);
wts.push(["currency", "EUR"]);
wts.push(["couponValue", "10.00"]);

//custom e-commerce parameter
wts.push(["customEcommerceParameter", {1:"L;32", 2:"green;blue", 3:"invoice"};



Example

wt.product = "pullover;jeans";
wt.productCategory = {
    1: "outer clothing;trousers",
    2: "noname;levis"
};

wt.productCost = "99.90;69.95";
wt.productQuantity = "2;1";
wt.productStatus = "add";
wt.currency = "EUR";
wt.orderId = "M-12345";
wt.orderValue = "52.99";
wt.couponValue = "10.00";
wt.customEcommerceParameter = {
 1: "L;32",
 2: "green;blue",
};

// event request
onclick="wt.sendinfo({linkId: 'webtrekk_ignore', product: 'pullover;jeans', productStatus: 'add', customClickParameter: {1:'L;32',2:'green;blue'}});" target="_self">Add to Cart</a>
ParameterDescription
product

Mandatory. This parameter must necessarily be completed if you want to measure products. It stores products that are added to the shopping cart. Semicolons separate multiple products.

Please keep in mind that each product name must not contain more than 110 characters.

productCategoryOptionally you can add product categories.
productCost

Optional. Contains the product price ("0" or negative are allowed). Use the total cost and not the price per unit when a product is passed multiple times (if the parameter "productQuantity is >1"). If various prices are passed, they are each separated by a semicolon.

Default = 0

Please do not use a thousand separators in the prices. Period or comma separates decimals. Otherwise, orders or basket data are not processed at the action tracking with a function call.

productQuantity

Optional. Contains the number of the product. If multiple products are passed, they are each separated by a semicolon.

Default = 1

productStatus

Optional. Contains the status of the shopping cart. Possible values:

  • view: A product is viewed (for example, in the product detail view). This status should always be set if the product can be placed in the shopping cart.
  • add: A product was added to the shopping cart.
  • conf: The shopping cart is purchased.

If no status is passed while tracking a product, the default value is assumed.

Default = view

Update

Now it is possible to send the product status via an event request. Please refer to the example mentioned above. More information on the event request feature
currency

Optional. Contains the currency code of a product or an order. The value has to be passed to the Webtrekk pixel according to ISO standards.

If multiple products are passed on a page (for example, on the order confirmation page, when more than one product has been purchased) only one currency applies to all products. Accordingly, the value must be set only once.

Passing the currency serves only the currency conversion. This means, if necessary, the currency defined in the Webtrekk frontend will be translated. Only one currency is shown there.

orderIdOptional. This parameter contains a unique order number (order ID). Use this setting to ensure that no orders are counted twice.
orderValueThis parameter must necessarily be completed if total order values should be measured.
couponValueOptional. Contains the coupon value.

The reference (product or order) is selected when configuring the tracking library:

  • individual value: the parameter refers to an order
  • multiple values: the parameter can apply to a product or an order.

The following parameters serve a detailed measurement of products:

Example: One Product

  ecommerceProperties = EcommerceProperties(products:[
                EcommerceProperties.Product(
                  name: "Product name 1",
                  categories: [1: "Category 1", 2: "Category 2"],
                  price: "39.90",
                  quantity: 2,
                  details: [1: "parameter1"])
              ],status: .viewed)


Example: Multiple Products

pageTracker.ecommerceProperties.products = [
    EcommerceProperties.Product(
        name: "Product name 1",
        quantity: 2,
        price: "39.90",
        categories: [1: "Category 1", 2: "Category 2"]
    ),
    EcommerceProperties.Product(
        name: "Product name 2",
        quantity: 3,
        price: "49.90",
        categories: [1: "Category 1", 2: "Category 2"]
    )

]

Example: Order

ecommercePropertiesOrder = EcommerceProperties(
                currencyCode: "EUR",
                orderNumber: "12345",
                products:[
                EcommerceProperties.Product(
                  name: "Product name 1",
                  categories: [1: "Category 1", 2: "Category 2"],
                  price: "39.90",
                  quantity: 2,
                  details: [1: "parameterproduct1"]),
                EcommerceProperties.Product(
                  name: "Product name 2",
                  categories: [2: "Category 2"],
                  price: "40.00",
                  quantity: 1,
                  details: [1: "parameterproduct2"])                    
                ],status: .purchased,
                totalValue: "119.8",
                voucherValue: "19.00",
                paymentMethod: "Card",
                shippingService: "DHL",
                shippingSpeed: "Express",
                shippingCost: 10.00,
                orderStatus: "shipped"
            )



ParameterDescription
name

Mandatory. This parameter must necessarily be completed if you want to measure products. It stores products that are added to the shopping cart. Semicolons separate multiple products.

Please keep in mind that each product name must not contain more than 110 characters.

quantity

Optional. Contains the number of the product.

Default = 1

price

Optional. Contains the product price ("0" or negative are allowed). Use the total cost and not the price per unit when a product is passed multiple times (if the parameter "productQuantity is >1"). If various prices are passed, they are each separated by a semicolon.

Default = 0

Please do not use a thousand separators in the prices. Decimals are separated by period or comma. Otherwise, orders or basket data are not processed at the action tracking with a function call.

categories

Optional. Product categories include static information about the products. This allows you to group the products, which enables a higher-level view, greater flexibility in the analysis and easier usage of the user interface. This requires a unique association between product and product category. If at the same time there are products in multiple product categories, you can represent this by using e-commerce parameters.

Please keep in mind that each individual product name must not contain more than 110 characters.

currencyCode

Optional. Contains the currency code of a product or an order. The value has to be passed to the Webtrekk pixel according to ISO standards.

If multiple products are passed on a page (for example, on the order confirmation page, when more than one product has been purchased) only one currency applies to all products. Accordingly, the value must be set only once.


Passing the currency serves only the currency conversion. This means, if necessary, the currency defined in the Webtrekk frontend will be translated. Only one currency is shown there.

detailsOptional. Contains e-commerce parameters. E-Commerce parameters allow you to pass dynamic information on the products. In contrast to product categories (see "categories"), e-commerce parameters get assigned a value each time product information passed (e.g., you could use it to pass the chosen size of a product with a fixed "name" parameter).
status

Optional. Contains the status of the shopping cart. Possible values:

  • viewed: A product is viewed (for example, in the product detail view). This status should always be set if the product can be placed in the shopping cart.
  • addedToBasket: A product was added to the shopping cart.
  • purchased: The shopping cart is purchased.

If no status is passed while tracking a product, the default value is assumed.

Default = viewed

orderNumber

Optional. This parameter contains a unique order number (order ID). Use this setting to ensure that no orders are counted twice.


totalValue

This parameter must necessarily be completed if total order values should be measured.

Please do not use the thousand separators in the prices. Decimals are separated by period or comma. Otherwise, orders or basket data are not processed at the action tracking with a function call.

voucherValue

Optional. Contains the value of a voucher. Use this parameter if the customer places an order using a voucher. You can only pass this parameter for orders.

Please do not use the thousand separators in the prices. Decimals are separated by period or comma. Otherwise, orders or basket data are not processed at the action tracking with a function call.

Further, you see in the example that you can pass the parameters "paymentMethod", "shippingService", "shippingSpeed", "shippingCost", "orderStatus". Note that "shippingCost" is the only one of these that has to be passed as a number.

Note that this is an example for Android SDK version 4. For version 5 documentation, click here.

The reference (product or order) is selected when configuring the tracking library:

  • individual value: the parameter refers to an order
  • multiple values: the parameter can refer to a product or an order.

The following parameters serve a detailed measurement of products:

Example

// Tracking request with product parameter:
 
private Webtrekk webtrekk;
private TrackingParameter tp;
 
@Override
protected void onCreate(Bundle savedInstanceState) {
 
    // Get Webtrekk Instance before
    [...]
 
    tp.add(Parameter.PRODUCT, "id_1;id_2");
	tp.add(Parameter.PRODUCT_COUNT, "3;1");
	tp.add(Parameter.PRODUCT_COST, "10.99;2999.95");
	tp.add(Parameter.PRODUCT_CAT, "1", "men");
	tp.add(Parameter.PRODUCT_CAT, "2", "shoes");
	tp.add(Parameter.CURRENCY, "EUR");
	tp.add(Parameter.PRODUCT_STATUS, "view");
	tp.add(Parameter.ORDER_NUMBER, "M-12345");
	tp.add(Parameter.ORDER_TOTAL, "2996.93");
	tp.add(Parameter.VOUCHER_VALUE, "35.99");
	tp.add(Parameter.ECOM, "1", "Levis");
	tp.add(Parameter.ECOM, "2", "30");
	tp.add(Parameter.ECOM, "3", "32");
 }
 
@Override
public void onStart() {
    super.onStart();
    webtrekk.track(

ParameterDescription
PRODUCT

Mandatory. This parameter must necessarily be completed if you want to measure products. It stores products that are added to the shopping cart. Multiple products are separated by semicolons.

Please keep in mind that each individual product name must not contain more than 110 characters.

PRODUCT_COUNT

Optional. Contains the number of the product. If multiple products are passed, they are each separated by a semicolon.

Default = 1

PRODUCT_COST

Optional. Contains the product price ("0" or negative are allowed). Use the total price and not the price per unit when a product is passed multiple times (if the parameter "productQuantity is >1"). If multiple prices are passed, they are each separated by a semicolon.

Default = 0

Please do not use the thousand separators in the prices. Decimals are separated by period or comma. Otherwise, orders or basket data are not processed at the action tracking with a function call.

PRODUCT_CAT

Optional. Product categories include static information about the products. This allows you to group the products, which enables a higher-level view, greater flexibility in the analysis and easier usage of the user interface. This requires a unique association between product and product category. If at the same time there are products in multiple product categories, you can represent this by using e-commerce parameters.

Please keep in mind that each individual product name must not contain more than 110 characters.

CURRENCY

Optional. Contains the currency code of a product or an order. The value has to be passed to the Webtrekk pixel according to ISO standards.

If multiple products are passed on a page (for example, on the order confirmation page, when more than one product has been purchased) only one currency applies to all products. Accordingly, the value must be set only once.

Passing the currency serves only the currency conversion. This means, if necessary, the currency defined in the Webtrekk frontend will be translated. Only one currency is shown there.

PRODUCT_STATUS

Optional. Contains the status of the shopping cart. Possible values:

  • view: A product is viewed (for example, in the product detail view). This status should always be set if the product can be placed in the shopping cart.
  • add: A product was added to the shopping cart.
  • conf: The shopping cart is purchased.

If no status is passed while tracking a product, the default value is assumed.

Default = view


ORDER_NUMBEROptional. This parameter contains a unique order number (order ID). Use this setting to ensure that no orders are counted twice.
ORDER_TOTAL

This parameter must necessarily be completed if total order values should be measured.

Please do not use the thousand separators in the prices. Decimals are separated by period or comma. Otherwise, orders or basket data are not processed at the action tracking with a function call.

VOUCHER_VALUE

Optional. Contains the value of a voucher. Use this parameter if the customer places an order using a voucher. You can only pass this parameter for orders.

Please do not use the thousand separators in the prices. Decimals are separated by period or comma. Otherwise, orders or basket data are not processed at the action tracking with a function call.

ECOMOptional. Contains e-commerce parameters. E-Commerce parameters allow you to pass dynamic information on the products. In contrast to product categories (see PRODUCT_CAT), e-commerce parameters get assigned a value each time product information passed (e.g., you could use it to pass the chosen size of a product with a fixed PRODUCT parameter).