Products Variable configuration in Adobe Analytics | Community
Skip to main content
Level 2
July 28, 2023
Solved

Products Variable configuration in Adobe Analytics

  • July 28, 2023
  • 1 reply
  • 4086 views

Hi, 

 

We Implemented products variable in our app based on this article, https://developer.adobe.com/client-sdks/documentation/adobe-analytics/product-variable/#products-variable-with-merchandising-evars-and-product-specific-events and App developer has been Implemented the Products Variable code. How to configure Products variable in Adobe Analytics or AEP mobile SDK?

 

 

Thanks!

 

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Jennifer_Dungan

Hi @jennifer_dungan 

 

Ok, Let me explain our actual requirement.

 

When the user changes two or more lines at a time with the same plan(product). We need to capture those line numbers in eVar21

 

Example: 1879 is the Plan(product) and if the user changes two lines, the Quantity will be 2, and Price of each line is 45.00. So, total will be 90.00 and in eVar21 we need to capture 2 line numbers as per below snapshot.

 

Thanks!

 


In this case, you would have to track each line separately, also, if each line is "45" you would have had to track "45" as the Price... Adobe multiplies the quantity and price together into you Revenue, so doubling the value in your code would have ended up as $180 in your Revenue instead of $90 - Price is price per unit... 2 items at $45 = $90 in the final Revenue):

 

However, if you need to itemize "Wireless Lines", then you should track like this:

 

changePlanDataMapTest["&&products"] = ";1879;1;45.00;;eVar21=00001113-1,;1879;1;45.00;;eVar21=00001113-3,;1880;1;15.00;;eVar21=00001113-2";

 

Basically:

  • Product 1
    • [no category]
    • Product ID: 1879
    • Quantity: 1
    • Price: 45.00
    • [no event]
    • Merchandising eVars
      • eVar21: 00001113-1
  • Product 2
    • [no category]
    • Product ID: 1879
    • Quantity: 1
    • Price: 45.00
    • [no event]
    • Merchandising eVars
      • eVar21: 00001113-3
  • Product 3
    • [no category]
    • Product ID: 1880
    • Quantity: 1
    • Price: 15.00
    • [no events]
    • Merchandising eVars
      • eVar21: 00001113-2

 

Make sense?

1 reply

Jennifer_Dungan
Community Advisor and Adobe Champion
Community Advisor and Adobe Champion
July 28, 2023

So when the developer sets up code in the app like:

cdata.put("&&events", "event1"); cdata.put("&&products", ";Running Shoes;1;69.95;event1=5.5;eVar1=Merchandising,;Running Socks;10;29.99");

 

There's not much more that you need to do.

 

Unlike passing context variables (which need to be mapped using processing rules), this should pass the event and Product Data (and all merchandising eVars) directly into your tracking... in fact, Processing Rules cannot see or update the Products List at this time (which is why you need to send it directly, and also why any paired events for products need to be send this way too...  since you probably won't be able to identify specifically which events need to be set to go with products - all other events can still be set using processing rules.)

 

Now, I am going to assume you are familiar with the Products List itself, and how to set up all the eVars as "Product Syntax" merchandising eVars... as long as all of these are configured; I am going to assume that you are tracking your mobile app into the same suite as your website, and using all the same dimensions; if so, everything should be configured.

 

Are you seeing missing data after making this update?

Level 2
July 31, 2023

Hi @jennifer_dungan,

 

We are not using events in our code.

 

My Code Syntax: 

cdata.put("&&products", "Category;Product;Quantity;Price;;eVar1=Merchandising eVar,Category;Product;Quantity;Price;; eVar1=Merchandising eVar ");


Example:

contextdata.put("&&products", ";1879;2;90.00;;eVar21=wirelessLineId,1880;1;15.00;; eVar21=wirelessLineId ");

We are tracking data in different reportsuites for Mobile App and Website.

 

Thanks.

 

Level 2
August 11, 2023

Ok, for anyone following this, or who comes across this later, I am going to change the values.

 

Essentially, here is the Products String as sent:

 

";12345;1;10.00;; someName =item1,;34566;1;15.00;; someName =Item2"

The issue is that either the proper eVar isn't being declared (and the entire "someName =item1" is being passed, or "someName" is the name of the eVar and was being used instead of the eVar id (i.e. "eVar5")

 

The proper string (assuming that "someName" shouldn't be sent in the data is:

 

";12345;1;10.00;;eVar5=item1,;34566;1;15.00;;eVar5=Item2"

I am also recommending to strip the extra spaces from around the eVar id and equals sign... I don't know how picky this is... but I would hate for extra spaces to be a reason for this to fail; I've always made sure to clean extra spaces up to be safe.

 

Right now, the Merchandising eVar is failing because Adobe really doesn't know where to put it..  You can have multiple eVars in your product string, so you need to clearly show where each one is mapped, for example:

 

";12345;1;10.00;;eVar5=item1|eVar6=red,;34566;1;15.00;;eVar5=Item2|eVar6=blue"

using a pipe (|) to separate each eVar


Hi @jennifer_dungan , Good Morning

 

Thanks. based on your smaple code (";12345;1;10.00;;eVar5=item1,;34566;1;15.00;;eVar5=Item2")

 

I created Quantity & Price Standard events, But Data is not captured in Standard events.

Can you please help me to over this issue?

 

Thanks!