Skip to content
This repository has been archived by the owner on Jan 26, 2024. It is now read-only.

Latest commit

 

History

History
60 lines (44 loc) · 2.48 KB

File metadata and controls

60 lines (44 loc) · 2.48 KB

Products variable

The products variable cannot be set using processing rules. In the mobile SDK, you must use a special syntax within the context data parameter to set products directly on the server call.

To set the products variable, set a context data key to "&&products", and set the value using the syntax defined for the *products variable:

cdata["&&products"] = "Category;Product;Quantity;Price[,Category;Product;Quantity;Price]";

For example:

//create a context data dictionary 
var cdata = new Windows.Foundation.Collections.PropertySet(); 
 
// add products, a purchase id, a purchase context data key, and any other data you want to collect. 
// Note the special syntax for products 
cdata["&&products"] = ";Running Shoes;1;69.95,;Running Socks;10;29.99"; 
cdata["m.purchaseid"] = "1234567890"; 
cdata["m.purchase"] = "1"; 
 
var ADB = ADBMobile; 
// send the tracking call - use either a trackAction or TrackState call. 
// trackAction example: 
ADB.Analytics.trackAction("purchase", cdata); 
// trackState example: 
ADB.Analytics.trackState("Order Confirmation", cdata);

The products is set directly on the image request, and the other variables are set as context data. All context data variables must be mapped using processing rules:

You do not need to map the products variable using processing rules since it is set directly on the image request by the SDK.

Products variable with merchandising eVars and product-specific events

An example of the products variable with Merchandising eVars and product-specific events.

//create a context data dictionary 
var cdata = new Windows.Foundation.Collections.PropertySet(); 
  
// add products, a purchase id, a purchase context data key, and any other data you want to collect. 
// Note the special syntax for products 
cdata["&&events"] = "event1 "; 
cdata["&&products"] = ";Running Shoes;1;69.95;event1=5.5;eVar1=Merchandising,;Running Socks;10;29.99"; 
cdata["m.purchaseid"] = "1234567890"; 
cdata["m.purchase"] = "1"; 
  
var ADB = ADBMobile; 
// send the tracking call - use either a trackAction or TrackState call. 
// trackAction example: 
ADB.Analytics.trackAction("purchase", cdata); 
// trackState example: 
ADB.Analytics.trackState("Order Confirmation", cdata);

Tip: If you trigger a product-specific event using the &&products variable, you must also set that event in the &&events variable, otherwise the event is filtered out during processing.