Responsys: Deep dive using Entry tracking
I have been using Entry Tracking (ET) variables on various projects in Oracle Responsys and I think it's time to do a deep dive in the various reasons to use ET.
So what is Entry tracking?
Well, to explain ET, I need to describe some other areas first. In the core of any marketing automation platform is the tool to automate campaigns. In Oracle Responsys these are called Programs and the actual mail is made in a campaign.
A program is used to activate a serie of campaigns, which will generate the mail with personalization.
The program will execute the campaign, and the campaign receives a RIID_, which is a identifier for the customer. This way the campaign can load personalized content based on the customer, like language, brand, etc.
Ok, that's great, but what about ET?? Ok, imagine a travel agency, who has a lot of bookings. They want to send a booking confirmation mail, which should include booking and other related information. In this case it is not enough to have the RIID_, because the campaign need orderID to be able to show booking information. To get around this the orderID must be added to the audience SQL, and as a ET variable. This way the program will catch the value from the audience and create a new entry and forward it to the campaign as well. Your campaign can now be based on RIID_ and ET_ORDER_ID.
To set this up do like this*:
* Remember to save the program, when done, or else the variables wont show in other function blocks.
By adding ET_ORDER_ID to your audience and as a ET variable it will be forwarded to you campaign, with the datatype selected (TEXT, DATE, NUMBER or INTEGER). I recommend using prefix "ET_", so you'll know where this variable is coming from in you campaign (more on naming convention in a later article). Also use TEXT as datatype. Will save you a lot of paid later :)
You can use ET for other purposes as well, and this makes ET's a very powerful feature.
#1. Switch, between campaigns.
In a program you can make switches based on filters or ET's. Like a abandon basket program, which has a Audience with the webshop steps. Each step can have its own campaign.
ET_TEST_GROUP is now a part of the program and we can use this in our Switch block and can save it vis SaveData.
#2. A/B testing (switch, set data)
When performance testing different campaigns, you need to know what campaign the customer has received for further analysis. To do this, the Set data block can be used. To decide what test group the customer is in, the audience must generate a random test group and set this in a field, ET_TEST_GROUP, containing A, B, C,...
ET_TEST_GROUP is now a part of the program and we can use this in our Switch block and can save it vis SaveData.
#3. Validate order status (Getdata)
In some cases you need use the GetData feature, which lets you update an ET. One use case, is when a customer enters the program, with a booking, and you want to send a reminder mail in 5 days. Before sending a reminder, you need to know if the booking is valid and not cancelled.
To do this you need to make a SQL view for your Getdata block. In a getdata block it will update all ET variables available in your SQL view based on RIID_
First add ET_ORDER_VALID under settings:
Setup you Getdata block, by choosing SQL view.
Because we have to get order status for each ORDER_ID, we choose "Match entry on": ET_ORDER_ID. This was getdata will update ET based on RIID_ and the ORDER_ID.
#4 API usage - transactional mails
When you have transactional mails, they need to be send at once. This is accomplished by using the Custom Event feature in a Program. One way to trigger a Custom Event is by REST API. In this API you can setup the trigger to contain data, which can be used as a ET. This is a article by it self, but this gives you the option to send data you need in your transactional mail. More on this in a article later :)
So this is the end of this deep dive. I hope you got some input on the use of ET. Yes, this can be complex, but thats what I like about Responsys.
The only limit is your own imagination:)