🍎
Comprehensive Technical Tutorial for AEP
  • Comprehensive Technical Tutorial for Adobe Experience Platform
    • Architecture
    • Video Overview
  • 0 - Getting started
    • 0.0 Which environment do I use?
    • (Deprecated) Install the Chrome extension for the Experience League documentation
    • 0.1 Use Demo System Next to setup your Adobe Experience Platform Data Collection client property
    • 0.2 Create your Datastream
    • 0.3 Set up the website
    • 0.4 Set up the mobile app
    • 0.5 Ingest Data to AEP through the Website
    • 0.6 Ingest Data to AEP through the Mobile App
    • 0.7 Visualize your own Real-time Customer Profile - UI
    • 0.8 See your Real-time Customer Profile in action in the Call Center
    • 0.9 Set up and use the AEP API to visualize your Real-Time Customer Profile
    • 0.10 Install the Experience Platform Debugger Extension
    • 0.11 What if I want to demonstrate basic AEP concepts directly on a live website?
  • 1 - Adobe Experience Platform Data Collection and the Web SDK extension
    • 1.1 Understanding Adobe Experience Platform Data Collection
    • 1.2 Edge Network, Datastreams and Server Side Data Collection
    • 1.3 Introduction to Adobe Experience Platform Data Collection
    • 1.4 Client-side Web Data Collection
    • 1.5 Implement Adobe Analytics and Adobe Audience Manager
    • 1.6 Implement Adobe Target
    • 1.7 XDM Schema requirements in Adobe Experience Platform
    • Summary and Benefits
  • 2 - Data Ingestion
    • 2.1 Explore the Website
    • 2.2 Configure Schemas and Set Identifiers
    • 2.3 Configure Datasets
    • 2.4 Data Ingestion from Offline Sources
    • 2.5 Data Landing Zone
    • Summary and Benefits
  • 3 - Real-time Customer Profile
    • 3.1 Visit the website
    • 3.2 Visualize your own real-time customer profile - UI
    • 3.3 Visualize your own real-time customer profile - API
    • 3.4 Create a segment - UI
    • 3.5 Create a segment - API
    • 3.6 See your Real-time Customer Profile in action in the Call Center
    • Summary and benefits
  • 4 - Query Service
    • 4.0 Prerequisites
    • 4.1 Getting Started
    • 4.2 Using the Query Service
    • 4.3 Queries, queries, queries... and churn analysis
    • 4.4 Generate a dataset from a query
    • 4.5 Query Service and Power BI
    • 4.6 Query Service and Tableau
    • 4.7 Query Service API
    • Summary and benefits
  • 5 - Intelligent Services
    • 5.1 Customer AI - Data Preparation (Ingest)
    • 5.2 Customer AI - Create a New Instance (Configure)
    • 5.3 Customer AI - Scoring Dashboard and Segmentation (Predict & Take Action)
  • 6 - Real-time CDP - Build a segment and take action
    • 6.1 Create a segment
    • 6.2 Review how to configure DV360 Destination using Destinations
    • 6.3 Take Action: send your segment to DV360
    • 6.4 Take Action: send your segment to an S3-destination
    • 6.5 Take Action: send your segment to Adobe Target
    • 6.6 External Audiences
    • 6.7 Destinations SDK
    • Summary and benefits
  • 7 - Adobe Journey Optimizer: Orchestration
    • 7.1 Create your event
    • 7.2 Create your journey and email message
    • 7.3 Update your Data Collection property and test your journey
    • Summary and benefits
  • 8 - Adobe Journey Optimizer: External data sources and custom actions
    • 8.1 Define an event
    • 8.2 Define an external data source
    • 8.3 Define a custom action
    • 8.4 Create your journey and messages
    • 8.5 Trigger your journey
    • Summary and benefits
  • 9 - Adobe Journey Optimizer: Offer Decisioning
    • 9.1 Offer Decisioning 101
    • 9.2 Configure your offers and decision
    • 9.3 Prepare your Data Collection Client property and Web SDK setup for Offer Decisioning
    • 9.4 Combine Adobe Target and Offer Decisioning
    • 9.5 Use your decision in an email
    • 9.6 Test your decision using the API
    • Summary and benefits
  • 10 - Adobe Journey Optimizer: Event-based Journeys
    • 10.1 Configure an event-based journey - Order Confirmation
    • 10.2 Configure a batch-based newsletter journey
    • 10.3 Apply personalization in an email message
    • 10.4 Setup and use push notifications
    • 10.5 Create a business event journey
    • Summary and benefits
  • 11 - Customer Journey Analytics - Build a dashboard using Analysis Workspace on top of Adobe Experie
    • 11.1 Customer Journey Analytics 101
    • 11.2 Connect Adobe Experience Platform Data Sets in Customer Journey Analytics
    • 11.3 Create a Data View
    • 11.4 Data Preparation in Customer Journey Analytics
    • 11.5 Visualization using Customer Journey Analytics
    • Summary and benefits
  • 12 - Ingest & Analyze Google Analytics data in Adobe Experience Platform with the BigQuery Source Co
    • 12.1 Create your Google Cloud Platform Account
    • 12.2 Create your first query in BigQuery
    • 12.3 Connect GCP & BigQuery to Adobe Experience Platform
    • 12.4 Load data from BigQuery into Adobe Experience Platform
    • 12.5 Analyze Google Analytics Data using Customer Journey Analytics
    • Summary and benefits
  • 13 - Real-Time CDP: Segment Activation to Microsoft Azure Event Hub
    • 13.1 Configure your Microsoft Azure EventHub environment
    • 13.2 Configure your Azure Event Hub Destination in Adobe Experience Platform
    • 13.3 Create a segment
    • 13.4 Activate segment
    • 13.5 Create your Microsoft Azure Project
    • 13.6 End-to-end scenario
    • Summary and benefits
  • 14 - Real-Time CDP Connections: Event Forwarding
    • 14.1 Create a Data Collection Event Forwarding property
    • 14.2 Update your Datastream to make data available to your Data Collection Event Forwarding property
    • 14.3 Create and configure a custom webhook
    • 14.4 Create and configure a Google Cloud Function
    • 14.5 Forward events towards the AWS ecosystem
    • Summary and benefits
  • 15 - Stream data from Apache Kafka into Adobe Experience Platform
    • 15.1 Introduction to Apache Kafka
    • 15.2 Install and configure your Kafka cluster
    • 15.3 Configure HTTP API Streaming endpoint in Adobe Experience Platform
    • 15.4 Install and configure Kafka Connect and the Adobe Experience Platform Sink Connector
    • Summary and benefits
Powered by GitBook
On this page
  • 9.3.1 Update your Datastream
  • 9.3.2 Configure your Adobe Experience Platform Data Collection Client property to request Personalized Offers
  • 9.3.2.1 Retrieve your [Placement ID]
  • 9.3.2.2 Retrieve your [Decision ID]
  • 9.3.2.3 BASE64 Encoding
  • 9.3.3 Configure your Adobe Experience Platform Data Collection Client property to receive and apply Personalized Offers
  1. 9 - Adobe Journey Optimizer: Offer Decisioning

9.3 Prepare your Data Collection Client property and Web SDK setup for Offer Decisioning

Offer Decisioning - Test your Decision

Previous9.2 Configure your offers and decisionNext9.4 Combine Adobe Target and Offer Decisioning

Last updated 2 years ago

{% hint style="info"} The use of Offer Decisioning in Adobe Experience Platform Web SDK is currently available in early access to select users. This functionality is not available to all IMS organizations. Please reach out to spphelp@adobe.com to get Offer Decisioning enabled in your partner IMS Org if it is not yet enabled.

9.3.1 Update your Datastream

In Exercise 0.2, you created your own [Datastream]. You then used the name --demoProfileLdap-- - Demo System Datastream.

In this exercise, you need to configure that [Datastream] to work with [!DNL Offer Decisioning].

To do that, go to https://experience.adobe.com/#/data-collection/. You'll then see this. Click [Datastreams] or [Datastreams (Beta)].

In the top right corner of your screen, select your sandbox name, which should be --aepSandboxId--.

Search for your [Datastream], which is named --demoProfileLdap-- - Demo System Datastream. Click your [Datastream] to open it.

You'll then see this. Click ... next to Adobe Experience Platform and then click Edit.

To enable [!DNL Offer Decisioning], check the box for [!DNL Offer Decisioning]. Click Save.

Your [Datastream] is now ready to work with [!DNL Offer Decisioning].

9.3.2 Configure your Adobe Experience Platform Data Collection Client property to request Personalized Offers

Go to https://experience.adobe.com/#/data-collection/, to [Client]. Search for your Data Collection properties, which are named --demoProfileLdap-- - Demo System (DD/MM/YYYY). Open your Data Collection client property for web.

In you property, go to [Rules] and open the rule [Page View].

Click to open the [Action] [AEP Web SDK - Send Event].

You'll then see this. You'll notice the menu option for [Decision Scopes].

For every request sent to the edge and to Adobe Experience Platform, it's possible to provide one or more [Decision Scopes]. A [Decision Scope] is a combination of two elements:

  • [Decision ID]

  • [Placement ID]

Let's first have a look where you can find those two elements.

9.3.2.1 Retrieve your [Placement ID]

The [Placement ID] identifies the location and type of asset that is required. For instance, the hero image on the Luma website homepage corresponds with the [Placement ID] for [Web - Image].

As part of module 6, you already configured an Adobe Target Experience Targeting activity that will change the image of the hero location on the homepage, as you can see in the screenshot. For the sake of the exercise, you'll now make your offers appear on the image below the hero image as indicated in the screenshot.

To find the [Placement ID] for [Web - Image] go to Adobe Journey Optimizer by going to Adobe Experience Cloud. Click Journey Optimizer.

You'll be redirected to the Home view in Journey Optimizer. First, make sure you're using the correct sandbox. The sandbox to use is called --aepSandboxId--. To change from one sandbox to another, click on PRODUCTION Prod (VA7) and select the sandbox from the list. In this example, the sandbox is named AEP Enablement FY22. You'll then be in the Home view of your sandbox --aepSandboxId--.

Next, go to [Components] and then to [Placements]. Click the [Web - Image] placement to see its details.

As you can see in the above image, in this example the [Placement ID] is xcore:offer-placement:14bf09dc4190ebba. Write down the [Placement ID] for your placement for [Web - Image] as you'll need it in the next exercise.

9.3.2.2 Retrieve your [Decision ID]

The [Decision ID] identifies which combination of Personalized Offers and Fallback Offer you'd like to use. In the previous exercise, you created your own [Decision] and named it --demoProfileLdap-- - Luma Decision.

To find the [Decision ID] for your --demoProfileLdap-- - Luma Decision, go to https://platform.adobe.com.

Next, go to [Offers] and then go to [Decisions]. Click to select your [Decision], which is named --demoProfileLdap-- - Luma Decision.

As you can see in the above image, in this example the [Decision ID] is xcore:offer-activity:14c052382e1b6505. Write down the [Decision ID] for your decision --demoProfileLdap-- - Luma Decision as you'll need it in the next exercise.

Now that you've retrieved the two elements you need to create a [Decision Scopes], you can continue with the next step, which involves encoding the decision scope.

9.3.2.3 BASE64 Encoding

The [Decision Scope] you need to enter is a BASE64-encoded string. This BASE64-encoded string is a combination of the [Placement ID] and the [Decision ID], as you can see below.

{
  "activityId":"xcore:offer-activity:14c052382e1b6505",
  "placementId":"xcore:offer-placement:14bf09dc4190ebba"
}

The [Decision Scope] can be generated in two ways:

  • Use a public service like https://www.base64encode.org/. Enter the JSON code as mentioned above, click [Encode] and you'll get your BASE64 encoded string below.

  • Retrieve the BASE64 encoded string from Adobe Experience Platform. Go to [Decisions] and click to open your [Decision], which is named --demoProfileLdap-- - Luma Decision.

    After opening --demoProfileLdap-- - Luma Decision, you'll see this. Locate the placement [Web - Image] and click the [Copy] button. Next, click [Encoded decision scope]. The [Decision Scope] is now copied to your clipboard.

Next, go back to Launch, to your action [AEP Web SDK - Send Event].

Paste your encoded decision scope in the input field.

Save your changes in the action [AEP Web SDK - Send Event] by clicking [Keep Changes].

Next, click [Save] or [Save to Library]

In Adobe Experience Platform Data Collection, go to [Publishing Flow] and open your [Development Library] which is named [Main]. Click [+ Add All Changed Resources] and then click [Save & Build for Development]. Your changes will now be published to your demo website.

Every time you're loading a General Page now, like for instance the homepage of the demo website, Offer Decisioning will evaluate what the applicable offer is and will return a response back to the website with the details of the the offer to show. Showing the offer on the website requires additional configuration, which you'll do in the next step.

9.3.3 Configure your Adobe Experience Platform Data Collection Client property to receive and apply Personalized Offers

Go to https://experience.adobe.com/#/data-collection/, to [Properties]. Search for your Data Collection properties, which are named --demoProfileLdap-- - Demo System (DD/MM/YYYY). Open your Data Collection property for web.

In you property, go to [Rules].

Search and open the rule Decision Received.

You'll then see this. Open the action Place the offer on the page.

Click [Open Editor]

Overwrite the code by pasting the below code in the editor.

if(!Array.isArray(event.decisions)) {
  console.log('No decisions returned')
  return;
}
console.log("decision",event.decisions)

event.decisions.forEach(function(payload) {
  payload.items.forEach(function(item){
    console.log("Response from Offer Decisioning ", item.data.content);
   
    var element = document.querySelector("#root > div > div > div.app-content > div > section.feature_part.padding_top > div > div.row.align-items-center.justify-content-between > div.col-lg-7.col-sm-6.\\30  > div");
    if(!element){
      console.log("Offer Placement Area Selector not found")
      return;
    }
    if(!item.data){
      return
    }
    //check if offer already exists
    var offer = document.querySelector("#root > div > div > div.app-content > div > section.feature_part.padding_top > div > div.row.align-items-center.justify-content-between > div.col-lg-7.col-sm-6.\\30  > div");
    if(!offer){ 
      element.insertAdjacentHTML('afterbegin', item.data.content) 
    }
    else { 
      console.log("item.data.deliveryURL: " + item.data.deliveryURL)
      document.querySelector("#root > div > div > div.app-content > div > section.feature_part.padding_top > div > div.row.align-items-center.justify-content-between > div.col-lg-7.col-sm-6.\\30  > div").style.background="url('"+item.data.deliveryURL+"')";
      document.querySelector("#root > div > div > div.app-content > div > section.feature_part.padding_top > div > div.row.align-items-center.justify-content-between > div.col-lg-7.col-sm-6.\\30  > div").style.backgroundRepeat="no-repeat";
      document.querySelector("#root > div > div > div.app-content > div > section.feature_part.padding_top > div > div.row.align-items-center.justify-content-between > div.col-lg-7.col-sm-6.\\30  > div").style.backgroundPosition="center center";
      document.querySelector("#root > div > div > div.app-content > div > section.feature_part.padding_top > div > div.row.align-items-center.justify-content-between > div.col-lg-7.col-sm-6.\\30  > div").style.backgroundSize = "contain";
    }  
  })
});

Lines 26-27-28-29 will apply the image that's being returned by Offer Decisioning to the website. Click [Save].

Click [Keep Changes].

Next, click [Save] or [Save to Library]

In Adobe Experience Platform Data Collection, go to [Publishing Flow] and open your [Development Library] which is named [Main]. Click [+ Add All Changed Resources] and then click [Save & Build for Development]. Your changes will now be published to your demo website.

With this change, this rule in Adobe Experience Platform Data Collection will now be listening to the response from Offer Decisioning which is part of the Web SDK response, and when the response is received, the image of the offer will be displayed on the homepage.

Looking at the demo website, you'll see that this image will be replaced now:

As part of module 6, you already configured an Adobe Target Experience Targeting activity that will change the image of the hero location on the homepage, as you can see in the screenshot. For the sake of the exercise, you'll now make your offers appear on the image below the hero image as indicated in the screenshot.

And instead of the default Luma website images, you will now see an offer like this one. In this case, the fallback offer is displayed.

You've now configured 2 types of personalization:

  • 1 Experience Targeting activity using Adobe Target in Module 6

  • 1 Offer decisioning implementation using your Data Collection property

In the next exercise you'll see how you can combine your offers and decisions that were created in Adobe Journey Optimizer with an Adobe Target Experience Targeting activity.

Click Edge Configuration icon in the left navigation
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
ACOP
ACOP
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK
WebSDK