Product Level Events

Gold Contributor
Gold Contributor

I am trying to understand how Product Level Events (from Tealium) work and where I can find them in Adobe. Are Product Level Events supposed to be mapped to Success Events in Adobe?  The first 100 events have already been used. I am trying to map Currency Incrementor Event, the variable trying was mappped to the E-Commerce Extension.

 

10 REPLIES 10

Product Level Events

Employee Emeritus

@mgensollen I'm not sure that I fully understand your question. If you're asking how you can set events beyond 100, you can enter and edit them from the mapping toolbox by either clicking +Add Custom, or click on the mapped parameter to edit it.

AM Product Events.png

Product Level Events

Gold Contributor
Gold Contributor

@davidcreason, Thank you. That answers a big part of my question. However, I have some other questions:

  • How I would map it to Adobe? 
  • In an "standard" Event I would map it using Value:*** Triggers: [Event# in Adobe].  Are these Product Events automatically mapped to a Adobe Events (so if I choose PRODUCT_event1 it would be directly pass to event1 in Adobe (which already has a different variable mapped to it)? If that is the case,  how would I map an event that is over a 100?

Product Level Events

Employee Emeritus

@mgensollen The example above is an Adobe tag, when the variable mapped to the product event parameter is populated; it will send the event with the value. You may  also want to check out these two posts in the community: 

https://community.tealiumiq.com/t5/DataAccess/How-to-configure-numeric-events-for-Adobe-Analytics/m-...

https://community.tealiumiq.com/t5/Tags/Adobe-Analytics-SiteCatalyst-Tag-Setup-Guide-for-Tealium-iQ-...

The example I gave before shows how you can specify events over 100. I'm not sure on the other part of the question. I think that product level events are in a separate section of the reporting that standard events, but you would need to doublecheck with Adobe. 

Product Level Events

Gold Contributor
Gold Contributor

I still don't understand what is replacing the option Triggers: [Event#] (which is the event in Adobe). That is my confussion with Product Level Events. Adobe just has a Success Events section to the best of my knowledge (it doesn't have a separate section for Product Events):

  • First, lets assume that the Event is one of the first 100 events, will it map automatically to Adobe? (Lets say I select Product_event5. Will it map it to Event 5 in Adobe?
  • Now let's assume that we want our Product Level Event to #137 (PRODUCT_event137). If I create a Custom Product Level Event (as in your image) would it automatically map it to Event 137 in Adobe? Or do I need to create a u.addEvent()? I might be understanding incorrectly the function of the Product Level Events. I thought the variable mapped populated the product event parameter, but also created the s.product string since the variable (UDO) mapped is in all the pages with the s.event:"purchase" (I understood that the product level events automatically  fire when the purchase event is call"). It is an E-Commerce variable (that is already in the E-Commerce Extension)

Product Level Events

Gold Contributor
Gold Contributor

I am still confused @davidcreason. To the best of my knowledge Adobe just has a Success Event section (not a Product Events section). I understood that the Product Level Events didn't need u.addEvent since they are capture when the s.event:"purchase" is fire :

  • First, lets assume I want to map an event that is in the first 100 in Adobe. So, I map PRODUCT_event5, will it map to event5 in Adobe automatically? 
  • Now, lets assume I want to map event138 and I create a custom Product Level Event "PRODUCT_event138", Will it map it automatically to event 138 in Adobe? (my confusion is if this events are automatically map to the events in Adobe). I might be understanding incorrectly the function of Product Level Events. I thought that the variable mapped to the product event parameter populates this event parameter, but also that it created the s.products string (s.products=";prodA;1;25.12;event138=12.00;,;prodB;1;10.99;event138=12.00;") and that this Product Level Event (PRODUCT_event138 in this case) was fire (captures the data) everytime s.events:"purchase" or, in other words, the purchase event was fire. Since, I am trying to collect an E-Commerce variable this variable has been mapped to the E-Commerce Extension, and the variable (UDO) is in the same pages where the purchase event fires. 

Product Level Events

Tealium Employee

Hi @mgensollen

Just some background on product level events:

So the for PRODUCTS_eventX, they are normally used for Numeric/Currency Events, on the products string.

Numeric and currency events must be included in the s.events variable, though they typically receive their numerical value (e.g., 24.99) in the s.products variable. This allows you to tie specific numeric and currency values to individual product entries

https://marketing.adobe.com/resources/help/en_US/sc/implement/events.html

If there is data for the mapped data point, then it will always be added.
To note on that, if it is just a string/number, that will be applied to all products equally. If you want different events for products you need to map an array with the data points for each item, in order that they are in the other E-Commerce arrays.

These will be sent every time the s.products string is sent, nothing to do with the purchase event, you can set in the event's string.

Adrian

Ask me anything Tealium related or TypeScript/JavaScript, or NodeJS.
Please remember to mark solutions as accepted for future searchers.

Product Level Events

Gold Contributor
Gold Contributor

Hi Adrian,

Thank you for your response. I will create events for the variables I want to map; however, I am still unclear if the Product Level Events will automatically map to Adobe (ex: PRODUCT_event5 will be mapped to Event 5 in Adobe?). Also, David explained how to create more custom Product Level Events ; however, I don't understand how this custom Product Level Events are mapped to Adobe (if I can't set a value to trigger an event in Adobe as I can in an Event). This is what I am referring to:

Event.PNG

Thank you again.

Product Level Events

Tealium Employee

Hi @mgensollen

I would suggest reviewing this Adobe doc around event setup: https://marketing.adobe.com/resources/help/en_US/reference/t_success_events.html

The screenshot you have provided does not correspond to product level events. That is for general events, that you would see in. s.events. Product level events are solely controlled via their mapping. If there is no data then it will not map. If there is, then there will be data.

Adrian

Ask me anything Tealium related or TypeScript/JavaScript, or NodeJS.
Please remember to mark solutions as accepted for future searchers.

Product Level Events

Gold Contributor
Gold Contributor

Yes, it is a screenshot of an Event that I used to give an example (this is what is confusing me, that in an Event I can set up a value and the event that will be triggered, in a Product Level Event I can't). How are Product Level Events mapped to Adobe. Let's say I want to map a variable to Event 138 in Adobe. What I need to set up in Tealium to map a Product Level Event to Event 138 in Adobe (in the Product Level Event Screen. Let's imagine the event is already firing), since I can't select a value and an event that will be triggered (as in an event were I can select a value and the event that will be triggered. On the other hand, in Adobe the event has been already created). 

Product Level Events

Bronze Contributor
Bronze Contributor

You do not need to invoke the u.addEvent function. To answer your question: Yes, if you map a variable to PRODUCTS_event43, then s.events will contain event43 as well as the products string. Just take a look at utag.js, line 6932 (or around that area depending):

} else if (f[g].indexOf("PRODUCTS_event") == 0) {
if (b[e]instanceof Array) {
b.sc_prodevents = b.sc_prodevents || [];
for (var i = 0; i < b[e].length; i++) {
var prodevents = {};
if (typeof b.sc_prodevents[i] != "undefined" && b.sc_prodevents[i] != "") {
b.sc_prodevents[i][pv] = b[e][i];
} else {
prodevents[pv] = b[e][i];
b.sc_prodevents.push(prodevents);
}
}
u.addEvent(pv);
} else if (b[e] !== "") {
ev[pv] = b[e];
u.addEvent(pv);
}
}

Notice how parses the name of the data mapping and also adds an event to the list. Later on in the file it assembles the products string from this information.

The variable "pv" is the eventX. So "pv" would equal "event43"

if (typeof b[e] != "undefined" && typeof u.map[e] == "string" && u.map[e].indexOf("PRODUCTS_") > -1) {
f = u.map[e].split(",");
for (g = 0; g < f.length; g++) {
var pv = f[g].substring(9);
Public