Creating the journey
In this exercise, you'll be creating and testing a journey using all the components you've created in the previous exercises.
Journey overview
To get an overview of all journeys in Adobe Journey Optimizer:
- In the menu on the left side, under Journey Management, click on Journeys. You will see a overview with all existing journeys.

Creating a journey
We'll be creating a journey that will send an email confirmation to customers when they book a flight. If the customer is not a loyalty program member, we want to incentivise them to sign up.
Click on Create Journey. You'll be taken to the Journey canvas with the journey properties opened.
- Set the name to [your name] - Booking Journey.
- For the other properties we'll keep the default values.
- Your screen should look like the image below. Click Save to save and close the properties.

You're now in the journey canvas. This is where you'll be creating your journey's logic. In the left menu you have activities. There's three types of activities:
Events are the triggers that can start or continue your journey.
Orchestration is the logic of your journey. It looks at conditions, audiences, but can also be used to make your workflow wait or end.
Actions are the results of your journey. This can be messages, profiles updates or API calls.
Event trigger
- We're starting our workflow of with an event trigger. From the events tab, choose your created event (initals_FlightBooking) and drag it onto the canvas. If you did not create an event, use the flightBooking event.
- There's nothing we need to configure for this as we have already done this when we Configuring an event. Click Save to close the menu.

Condition - Is a loyalty member?
When the customer book a flight, the first thing we want to check is if the customer is part of the loyalty program.
- From the orchestration tab, choose Condition and drag it onto the empty circle on the canvas.
- Click on the activity to open the detailed view.
- Set the label to Is a loyalty member?.
- Click on Path1 and change the label to Yes.
- Click on the Expression text field to open a window.
- On the left side, open Audiences. Scroll down till you find the audience you created called [your name] - WKND Fly Club Program Members and drag it to the right side. If you didn't create the audience, use WKND Fly - WKND Fly Club Program Members.
- By default the statement should be on true, if not click the toggle. Checks if the title reads [your name] - WKND Fly Club Program Members audience membership is true and click Ok.
- Click Ok to save the conditions.
- Check Show path for other cases than one(s) above and set the label to No.
- Your screen should look like the image below. Click Save.

In our journey we want to focus on customers that are not loyalty program members. Rearrange the paths so that the No-path is on top.

Email #1 - Booking confirmation (non-loyalty)
In the next steps you will be building the email for your journey. You have a choice of three exercises here.
- Build email (basic): you'll start from a basic template and adding a few customizations. The exercise will familiarise you with how to build an email using components, using personalisation (based on data from the profile) and contextual data (data from the flight booking event).
- Build email (advanced): You'll build the same email as mentioned above, but with more contextual data. Choosing this email will show you more capabilities regarding formulas and custom expressions, but can be quite challenging for those not familiar with coding.
- Skip building email: You'll pick a fully completed template of the basic email so that you don't have to build anything at all. If you want to skip building the email, you must use the example flightBooking event in your journey. If you used your own custom event, replace it before continuing.
- From the actions tab, choose Email and drag it onto the empty circle at the No-path.
- Click on the activity to open the detailed view.
- Set the label to Booking confirmation (non-loyalty).
- Set the category to Transactional.
- Set the email surface to transactionalMessages.
- Click on Edit content to start designing your email.
- Click on to create a subject line. Set it to FIRSTNAME, Your flight booking is confirmed!
- Remove the text FIRSTNAME and search for first name in the profile attributes.
- Find the field First name (... attributes > person > Full name) and click on the icon to add it to your subject line. It should now be {{profile.person.name.firstName}}, Your flight booking is confirmed!
- Click Save.
- Click on Edit email body. Under Saved templates, choose WKND Fly - Default Template. It will show you a preview of the template. Click on Use this template.
- The email designer will now open. It should look like this:

In the left menu you have components.
Structure components are the building blocks of your email, they will determine the layout of your email.
Content components are the different forms of content that you can place inside your structure components, like text, buttons and images.
- Let's put in a header image first. Click on Browse in the header component of the email template. This will open the Assets Essentials interface. Navigate to Demo Brands > WKND Fly and select the image header-airplane.png and click Select in the top right.
- Click the Header component and change the text to:Your booking is confirmed, thank you for flying with us!
- Use the pop-up menu to change the alignment to Center alignment.
- Click on the left or right side of the Header component so the entire row is highlighted by a blue border. Using the icon on the left drag the row so it's above the header image.
- Click the Body component and change the text to Flight details
- Use the pop-up menu to make the text bold.
- From the structural components drag a n:n column onto the email, between the Flight details and the button.
- Click on the newly added component. In the right menu, under Settings, change the number of columns to 2.
- Hover your mouse over the 2 columns. An icon appears in the bottom center of the component. Using the icon change the width so you have a 20% - 80% width ratio.
- From the content components drag a Text onto the email, into the left column.
- Change the text in the component to: Confirmation: Departure: Arrival: Duration: Fare class:
- In the right menu, check Different padding for each side. Click the lower icon and set the left padding to 10.
- From the content components drag a Text onto the email, this time into the right column.
- Remove all the text from the new component and click on the icon to add personalization.
- Click on Contextual attributes and Search for Confirmation. Add Confirmation Number to your expression by clicking on the icon. It should read {{context.journey.events.681801159.reservations.confirmationNumber}} If you used your own event, the ID will be different for you. Click Save.
- Put your cursor behind the orange personalization tag and press enter to create a new line.
- Click on the icon to add personalization.
- Click on Fragments. This is a library of custom expressions that you can create yourself. I have prepared a function called Format Flight datetime. This function will display a date the way we want to in the email. Click on the icon and choose Paste fragment to add the function to your expression. It should read {%= formatDate(toDateTimeOnly(head(["YOUR_DATE_FIELD"])), "HH:mm dd MMM") %}
- Remove the text ["YOUR_DATE_FIELD"] and go to Contextual attributes, search for Departure. Click on the icon to add Departure Date to your function. Your expression should now be {%= formatDate(toDateTimeOnly(head(context.journey.events.`681801159`.reservations.flightReservations.departureDate)), "HH:mm dd MMM") %} Make sure the event ID only has a single backquote around it. If a double backquote was added, remove one on each side.
- Not only do we want to display the departure date, but also the airport. Behind the current function add from (make sure to add the spaces as well).The left menu should still be filtered on Departure. This time click the icon to add the Departure Airport Code to your expression. It should now be {%= formatDate(toDateTimeOnly(head(context.journey.events.`681801159`.reservations.flightReservations.departureDate)), "HH:mm dd MMM") %} from {%= head(context.journey.events.`681801159`.reservations.flightReservations.departureAirportCode) %} If you used your own event, the ID will be different for you. Copy/Paste this number somewhere you can access it easily. In the next few steps we're going to speed up and copy full expressions. Please change the ID of these. Click Save.
- As we need to add 3 more personalization fields, let's take a little shortcut.
- Add another newline behind the latest personalization tag, add personalization ( icon) and add the following expression: {%= formatDate(toDateTimeOnly(head(context.journey.events.`681801159`.reservations.flightReservations.arrivalDate)), "HH:mm dd MMM") %} at {%= head(context.journey.events.`681801159`.reservations.flightReservations.arrivalAirportCode) %} Click Save.
- Add another newline behind the latest personalization tag, add personalization ( icon) and add the following expression: {%= head(context.journey.events.`681801159`.reservations.flightReservations.length) %} minutes Click Save.
- Add another newline behind the latest personalization tag, add personalization ( icon) and add the following expression: {%= head(context.journey.events.`681801159`.reservations.flightReservations.fareClass) %} Click Save.
- From the structural components drag a 1:1 column onto the email, between the flight details you just added and the button.
- From the content components drag a Text onto the email, into the newly added structural component.
- Change the text to: We look forward to welcoming you on board! Did you know you can earn points for this flight? Join WKND Club now!
- Set the top/bottom padding for the text component to 20.
- Set the left/right padding for the text component to 10.
- Select the Button component and change the button label to: Earn points for your flight
- In the double block below the button, select the image of the left block.
- In the right menu, go to Settings and click Select an asset to change the image. This will open the Assets Essentials interface. Navigate to Demo Brands > WKND Fly and select the image wknd-club.png and click Select in the top right.
- Change the block's header to: Join WKND Club to earn points
- In the yellow highlight bar, change the header to: Add Extras
- In the yellow highlight bar, change the content to: Upgrade to business class, add a hotel to your booking and much more...
- Your screen should look like the image below. Click Save in the top right. Navigate out of the Email designer by clicking the arrow on the top left of your screen. Then navigate out of the email overview by clicking on the arrow on the top left.

You will be taken back to the journey canvas.

Email #2 - Booking confirmation (loyalty)
- Select the activity Email - Booking confirmation (non-loyalty). Copy and paste this by clicking the icon in the details panel or by using CTRL+C (or CMD+C on Mac devices. Then press CTRL+V (or CMD+V on Mac devices).
- Drag the newly created object at the Yes-path.
- Unselect your selection and select only the Email-activity. Drag this on top of the empty circle to connect it.
- Click on the Email-activity to open the detailed view.
- Set the label to Booking confirmation (loyalty).
- Click on Edit content to start make some adjustments to the email content.
- Click on Edit email body. This will open the email designer.
- Change the Text component above the button to: We look forward to welcoming you on board! Did you know that you can upgrade your flight using your WKND club loyalty points?
- Change the button label to Upgrade using your WKND Club points.
- In the double block below the button, select the image of the left block.
- In the right menu, go to Settings and click Select an asset to change the image. This will open the Assets Essentials interface. Navigate to Demo Brands > WKND Fly and select the image travel-requirements.jpeg and click Select in the top right.
- Change the block's header to: Come prepared
- Change the block's content to: We've put together a checklist of required travel documents. Make sure to check it out before you leave for your trip.
- Your screen should look like the image below.
- Click Save in the top right.
- Navigate out of the Email designer by clicking the arrow on the top left of your screen. Then navigate out of the email overview by clicking on the arrow on the top left. You will be taken back to the journey canvas.
Depending on what you picked when creating the previous email


Audience Qualification
Next, we want to check if the customer signed up for our WKND Club loyalty program. If not, we want to send them another email offering them bonus points if they sign up.
- We're going to check if the customer enters our WKND Fly Club Program Members audience, because this would indicate they signed up. From the events tab, choose Audience Qualification and drag it onto the canvas behind the Email -Booking confirmation (non-loyalty).
- Click on the activity to open the detailed view.
- Set the label to WKND Club member.
- Click on the text field Audience and select the audience [your name] - WKND Fly Club Program Members
- Set the behavior to Enter. This means it will only trigger as soon as the customer qualifies for the audience.
- Check Define the event timeout and set it to wait for 3 Days.
- Make sure Set a timeout path is checked.
- Your screen should look like the image below. Click Save.

In our journey we want to focus on the customer that are still not loyalty program members. Rearrange the paths so that the timeout-path is on top.

Email #3 - Loyalty Program Offer
- From the actions tab, choose Email and drag it onto the empty circle at the Timeout-path.
- Click on the activity to open the detailed view.
- Set the label to Loyalty Program Offer.
- Set the category to Marketing.
- Set the email surface to marketingMessages.
- Click on Edit content to start designing your email.
- Click on to create a subject line. Set it to FIRSTNAME, Join WKND Club today!
- Remove the text FIRSTNAME and search for first name in the profile attributes.
- Find the field First name (... attributes > person > Full name) and click on the icon to add it to your subject line. It should now be {{profile.person.name.firstName}}, Join WKND Club today!
- Click Save.
- Click on Edit email body. Under Saved templates, choose WKND Fly - Default Template. It will show you a preview of the template. Click on Use this template.
- The email designer will now open. It should look like this:

Don't feel like building the email? You can choose the WKND Fly - Loyalty offer email to get the completed email.
In the left menu you have components.
Structure components are the building blocks of your email, they will determine the layout of your email.
Content components are the different forms of content that you can place inside your structure components, like text, buttons and images.
- Let's put in a header image first. Click on Browse in the header component of the email template. This will open the Assets Essentials interface. Navigate to Demo Brands > WKND Fly and select the image wknd-club.png and click Select in the top right.
- Click the Header component and change the text to: Join WKND Club today and get 500 bonus miles as a welcome gift!
- Click the Body component and change the text to: With WKND Club you can earn Club points from your flights and redeem them on future flights, upgrades, rewards and more!If you join today, you'll receive 500 bonus miles as a gift! That's enough points to be able to upgrade your flight class!
- Select the Button component and change the button label to: Join WKND Club.
- Your screen should look like the image below. Click Save in the top right. Navigate out of the Email designer by clicking the arrow on the top left of your screen. Then navigate out of the email overview by clicking on the arrow on the top left. You will be taken back to the journey canvas.


You have now successfully created the booking journey using the Adobe Journey Optimizer. Next, we are going to test our journey using Test Mode.







