Table of Contents

Understanding the customer journey strategy infrastructure

Review the information below to learn about some of the key strategies that contribute to the functionality of the customer journey.


The JourneyManager strategy maintains all active journeys in your system.

A view of the JourneyManager strategy
"A view of the JourneyManager strategy"
A view of the JourneyManager strategy

Each sub-strategy shape represents an active journey. The Journey actions set property shape is a common public component for the strategy and sets a time stamp for the processed records.

Activating a journey regenerates the JourneyManager strategy. A strategy shape is added for each journey in the system, including the newly activated journey. Deactivating a journey also regenerates the JourneyManager strategy, to remove the shape that corresponds to newly deactivated journey.

This strategy is referenced in the DF_JourneyManager data flow. Interactions from the data flow are processed for each of the strategies on the canvas, and a version of the record is generated for each journey for which the interaction is applicable. In the example above, an interaction processed by the strategy could output anywhere between zero and five separate interactions.

J_<Journey Name>

A journey-specific strategy is generated for each journey when that journey is activated. The strategy is deleted if the journey is ever deactivated. This strategy determines whether any given customer interaction is applicable to any step or steps within the journey. If an interaction is applicable to multiple steps, the strategy selects the most relevant one.

The following figure shows an overview of a journey-specific strategy. For more information, refer to the descriptions below.

A sample journey-specific strategy
"A sample journey-specific strategy"
A sample journey-specific strategy

Steps (A1-A4)

Every step defined in the journey generates a series of shapes organized like the shapes in group A1-A4 above. Some shapes may appear depending on additional conditions:

  • Set Property - Mandatory. This shape sets the appropriate pyJourney, pyStage, and pyStep values for the record. If you did not define any entry criteria or content items for the step, this is the only shape that appears for that step, as in A2 above.
  • Filter - appears if you defined any content items or entry criteria for a particular journey step.
    • For content items (that is, actions), there is a single filter shape on the canvas to represent all of them, as in A4 above. If the value on the interaction matches any of the values set in the step configuration, the filter returns true and the action is allowed through.
    • For entry criteria (that is, proposition filters), there are as many proposition filter shapes on the canvas as there are entry criteria defined for the step, as in A3 above.
    • If the step has both entry criteria and content items, there are separate branches for the proposition filter shapes and the action filter shape, as in A1 above. The branches come together in a Prioritize shape which ensures that only a single record is passed along.

Stages (B)

Each stage consists of a Set Property shape and one or more filter shapes configured to use proposition filters:

  • Set Property - sets the value of JourneyOutcomeRank. If multiple steps are applicable to the record being processed, JourneyOutcomeRank is used at the end of the processing to pick a single record (the one with the highest JourneyOutcomeRank). This is currently designed to assign higher numbers to stages that are further along in the Journey. If the Complete stage is applicable, it will always be the chosen stage.
  • Filter - corresponds to each of the proposition filters you've assigned as part of entry criteria for that particular stage. If there is more than one chosen proposition filter for the stage, each shape is connected to the next just as was done for steps.

Complete (C)

The Complete stage behaves almost identically to the any other stage, except that its Set Property shape sets the appropriate pyJourney, pyStage, and pyStep values in addition to the JourneyOutcomeRank. This is because the Complete stage has no steps, so the values must be set by the stage.

The other shapes finalize the output of the strategy:

  • If there are Journey-level entry criteria, they are included as Filter shapes at the point where all paths converge.
  • The Set Journey shape sets the channel and outcome of the record.
  • The Prioritize shape ensures that only the record with the highest JourneyOutcomeRank is output by the strategy.
    It is possible that multiple outcomes will have the same JourneyOutcomeRank. For example, a journey may contain Stage A with Step 1, Step 2, and Step 3. Through the logic defined in the journey, a customer interaction meets the conditions to apply to Step 1 and Step 3. When these records reach the Stage-level Set Property shape, both will be assigned the same JourneyOutcomeRank, since they both pass through that shape. As such, there is no guarantee as to which outcome will be prioritized higher when the Prioritize shape is reached at the end of the Journey Strategy.

The LastJourneyInteraction substrategy adds data for the customer's last interaction on the Journey, if it is available. This is used in DF_ProcessJourneyResponse to build links between interactions.

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.