Skip to main content
Skip table of contents

One-to-many relationships and transactional audience definitions

Introduction

This document provides a detailed guide on how to configure and use the transactional audience definitions feature in Redpoint Interaction (RPI). It covers the configuration steps, usage patterns, and the results of various configuration and usage options.

The key sections include:

This feature is one of multiple ways that you can export or personalize messages with data that has One-to-Many (1:M) relationships in the data model that RPI is configured to use. The audience definitions feature supports identifying one record from the many side of the relationship to use to extract or personalize with. The configuration of this feature, along with providing selection criteria to identify specific records on the many side of the relationship, will be used in combination to determine what record to use for extraction or personalization.

A use case that this feature would support is if you want to send an email message to people who made their last transaction 6-9 months ago and include data from the last transaction in the content of the email.

About transactional audience definitions

Transactional audience definitions in RPI allow you to export or personalize data from tables on the many side of a 1:M relationship. This feature helps you select specific records for extraction or personalization based on defined criteria. In addition to configuring the audience definition, there is a certain pattern for usage to get the expected results. As with any feature, there are some use cases that may not be suitable with the behavior of the feature, which we will call out in this document.

Without this feature, you can use attributes from the many side of the relationship in the database, but RPI will pick a single value from all available values, leaving you unsure of which value will be selected. With this feature, you can control which records and values are selected more granularly from the many side of the data relationship.

There is an export feature that allows you to export all records from the many side of the relationship, if needed.

Configure transactional audience definition

To configure a transactional audience definition, at a high-level, you need to do the following:

  1. Configure two resolutions:

    • The primary resolution (e.g., golden record summary). The primary resolution is what is tied to the audience definition that will be used when creating the audiences/segments. This relates to the 1 side of the 1:M relationships.

    • The transactional resolution (e.g., transaction header table). The transaction header resolution relates to the M side of the equation.

  2. Create and configure the audience definition.

Step 1: Configure resolutions

If you already have resolutions defined, you can skip to Step 2: Create and configure the audience definition.

  1. Define the primary resolution (Golden Record Summary).

image-20250707-164043.png

Golden Record Summary - Individual Business Unit ID

  1. Define the transactional resolution (Transaction Header).

image-20250707-164159.png

Transaction Header - Transaction ID

Step 2: Create and configure the audience definition

Now that you have the two resolutions defined, you can create a new audience definition that will be configured to support transactional relationships. At a high-level, you need to do the following:

  1. Create a new audience definition.

  2. Set the resolution level to the Primary Resolution.

  3. Select the option to "Support Transactional Configuration" and configure the transactional resolution level, attributes, and deduplication behavior.

Step 2a: Create a new audience definition

Create your new audience definition, configuring it according to the next steps. Refer to Configuring audience definitions in the RPI docs for more information.

Pro Tip: Clone an existing audience definition if the metadata is going to be the same or similar for the new audience. This will save the time required to create each of the metadata fields in the new audience manually.

Step 2b: Set primary resolution level

When configuring an audience, you start by setting the resolution level, which will be Golden Record Summary in this case. There are various other settings that can be configured based on your needs, but we are only going to focus on the transactional configuration of audience definitions; for additional information, refer to Configuring audience definitions.

image-20250707-234139.png

New Audience Configuration

Step 2c: Support transactional configuration

  1. First you select the option to Support transactional configuration.

  2. Select the Transactional resolution level. This is the resolution that represents the many side of the 1:M relationship.

    • Transaction resolution

  3. Transactional attributes: select the transactional attributes that you want to capture in Offer History (OH) in addition to the attributes being captured in the OH configuration for the audience definition.

    • Transaction ID (TRANSACTION_ID)

    • Transaction Date Time (TRANSACTION_DATETIME)

  4. Transactional deduplication:

    • Transaction Date Time - Descending

image-20250707-235524.png

Transactional Audience Configuration

Create an audience using the transactional audience definition

Now that you have configured a transactional audience definition, you can create a new audience using that definition. Follow these high-level steps to create and use a transactional audience:

  1. Create selection rules:

    1. Create a selection rule using the primary resolution.

    2. Create a selection rule using the transaction resolution.

  2. Create a new audience and use the selection rules, including the transactional selection rule as a filter block or split block.

Step 1: Create selection rules

Assuming you will not be targeting all of the primary resolution records, you will have a selection rule to identify the primary targets of the interaction (the one side of the relationship). Then you will need a selection rule at the transactional resolution level to identify the eligible records from the many side of the relationship.

Step 1a: Create primary (Golden Record) selection rule

We are identifying a set of records with multiple transactions and creating a selection rule with the records to get a sample set.

image-20250708-181012.png

Golden Record Selection Rule

Step 1b: Create transaction selection rule

The goal of the selection rule that will execute at the transactional resolution level is to help RPI determine what records to consider on the many side of the relationship. This rule may result in zero or many records, and from there the deduplication logic that was configured in the audience definition will get applied. This is a single attribute to sort on, and the order to sort them in for selection. If the sort attribute is date, and the order is descending, and there are three out of six records that qualify for the selection rule, then one of the three records will be selected based on the transaction date in this example, which is configured to select the most recent transaction date (order descending).

If you have more than one transaction record that meets the selection criteria and the sort order, then the record will be selected at random. An example would be if two purchases were made on the same day and the sort attribute was transaction date (without time), then one of the two transactions would be selected at random.

We are identifying a set of transaction records to see if the Golden Records have any qualifying transactions. In this case, we are just looking at a six-week timeframe for the transaction.

image-20250708-181054.png

Transaction Selection Rule

Step 2: Create an audience

Now we can set up an audience using these selection rules. We will create two outputs: one with all records, and one with records that meet the transaction criteria. A split was used with a single segment for all records, and then a filter is used in the second example to filter down to transactions in the timeframe 10/1/24-11/15/24.

image-20250708-191000.png

Transactional Audience Example - Two Segments

In order to have all the input records from the first filter be eligible for the purchase filter and the split, we had to disable the Single output contact setting in the “Purchases 10/1/24-11/15/24” filter block. That will allow both segments, the “all records” segment and this segment, to have the same records.

This feature allows for the two blocks in the example, filter and split, to not be mutually exclusive, which is the default behavior in RPI. So, each segment in this example can and will have the same records in both segments.

image-20250708-191546.png

Disable Single Output Contact

Example of an interaction using transactional audience

We are going to use two interaction workflows to illustrate the behavior of a transactional audience definition to dedupe and select specific transactions vs. a standard audience definition with a 1:M relationship in the data. For illustrative purposes, we have identified a set of Golden Records with one or more purchases.

The workflow on the left side is a standard audience definition based off the Golden Record Summary table, and the one on the right is the transactional audience based on Golden Record Summary.

image-20250708-211852.png

Sample Interaction with Various Audience and Extract Configurations

Each of the extracts provides a different representation of the output of the data. Each one is used to help illustrate how the different configurations result in different outputs. Below, you will see a description of each export, a screenshot of the records that were extracted and formatted in Excel, as well as a table of the raw data.

Details and results of each export

Here you will find the details and the results of each of the exports based on the segment that was used as well as the way that the exports are configured.

The following sections delineate the set of exports and the associated records to validate that the standard and transactional audience are executing as intended.

Golden Record and all transaction records

Audience Definition: Standard

This is all of the transaction records for the identified Individual_Business_Unit_IDs. Each set of Individual_Business_Unit_IDs is shown in the same color to help show the transactions associated to each Individual_Business_Unit_ID more easily.

The Allow duplicates feature of an extract allows you to extract duplicate records in the cases of a 1:M relationship in the data. You will get a record for each record on the many side of the relationship in the extract.

image-20250708-193618.png

Extract Feature - Allow Duplicates

image-20250708-213526.png

All Individuals and Associated Transactions

Sample records

INDIVIDUAL_BUSINESS_UNIT_ID

TRANSACTION_ID

TRANSACTION_DATETIME

GLOBAL_SUB_TOTAL_TRANSACTION_AMOUNT

10000000000100001

3128

9/11/2024

$75.00

10000000000100001

3129

9/26/2024

$138.00

10000000000100001

3126

10/1/2024

$784.80

10000000000100001

3125

10/9/2024

$259.98

10000000000100001

3127

10/15/2024

$239.90

10000000000100001

3124

10/18/2024

$40.00

10000000000200001

238796

9/15/2024

$32.00

10000000000200001

238797

9/18/2024

$2.00

10000000000200001

238795

9/21/2024

$169.99

10000000000200001

238799

10/2/2024

$6.00

10000000000200001

238801

10/7/2024

$1,950.00

10000000000200001

238800

10/25/2024

$138.00

10000000000200001

238798

10/28/2024

$46.00

10000000000400001

965

12/1/2023

$45.00

10000000000600001

964

1/30/2024

$132.00

10000000000700001

943

9/6/2024

$132.00

10000000000700001

946

9/10/2024

$54.00

10000000000700001

942

9/14/2024

$265.50

10000000000700001

941

9/20/2024

$36.00

10000000000700001

947

9/22/2024

$3.00

10000000000700001

945

10/3/2024

$12.00

10000000000700001

944

10/25/2024

$70.00

10000000000800001

235395

9/27/2024

$63.00

10000000000800001

235394

10/4/2024

$1,449.85

10000000000800001

235397

10/4/2024

$80.00

10000000000800001

235396

10/19/2024

$96.00

10000000000900001

17324

9/10/2024

$75.00

10000000000900001

17318

9/20/2024

$275.50

10000000000900001

17322

9/22/2024

$120.00

10000000000900001

17321

9/29/2024

$5.00

10000000000900001

17317

10/9/2024

$220.99

10000000000900001

17323

10/15/2024

$92.00

10000000000900001

17319

10/23/2024

$64.00

10000000000900001

17316

10/24/2024

$219.90

10000000000900001

17320

11/2/2024

$150.00

Golden Record and one transaction record

Audience Definition: Standard

One Individual_Business_Unit_ID transaction record will be associated randomly; you will not have control over what record is selected. As you can see for Individual_Business_Unit_ID 10000000000200001, the transaction that was selected is one of the random records selected out of all of the seven associated transactions.

This export is configured to NOT allow duplicates (the default behavior).

image-20250708-214455.png

All Individuals - One Random Transaction

Sample records

INDIVIDUAL_BUSINESS_UNIT_ID

TRANSACTION_ID

TRANSACTION_DATETIME

GLOBAL_SUB_TOTAL_TRANSACTION_AMOUNT

10000000000100001

3128

9/11/2024

$75.00

10000000000200001

238801

10/7/2024

$1,950.00

10000000000400001

965

12/1/2023

$45.00

10000000000600001

964

1/30/2024

$132.00

10000000000700001

947

9/22/2024

$3.00

10000000000800001

235397

10/4/2024

$80.00

10000000000900001

17320

11/2/2024

$150.00

Transactional: unique records all

Audience Definition: Transactional

In this case, the transactional audience configuration is referenced, and the most recent transaction record for each of the Individual_Business_Unit_IDs is what will be extracted.

image-20250708-214633.png

All Individuals and Most Recent Transaction

Sample records

INDIVIDUAL_BUSINESS_UNIT_ID

TRANSACTION_ID

TRANSACTION_DATETIME

GLOBAL_SUB_TOTAL_TRANSACTION_AMOUNT

10000000000100001

3124

10/18/2024

$40.00

10000000000200001

238798

10/28/2024

$46.00

10000000000400001

965

12/1/2023

$45.00

10000000000600001

964

1/30/2024

$132.00

10000000000700001

944

10/25/2024

$70.00

10000000000800001

235396

10/19/2024

$96.00

10000000000900001

17320

11/2/2024

$150.00

Transactional: specific records

Audience Definition: Transactional

In this case, there were two records that were dropped because they didn’t meet the criteria of the transaction-based selection rule. Of the five records with a qualifying transaction, the most recent transaction was identified to be extracted.

image-20250708-214947.png

Individuals and there Most Recent Qualifying Purchase

Sample records

INDIVIDUAL_BUSINESS_UNIT_ID

TRANSACTION_ID

TRANSACTION_DATETIME

GLOBAL_SUB_TOTAL_TRANSACTION_AMOUNT

10000000000100001

3124

10/18/2024

$40.00

10000000000200001

238798

45593

$46.00

10000000000700001

944

10/25/2024

$70.00

10000000000800001

235396

10/19/2024

$96.00

10000000000900001

17320

11/2/2024

$150.00

Considerations and restrictions

This section outlines the limitations and important considerations when using the Transactional Audience definitions feature in RPI. Here are the key points:

  • Specific Record Selection: You cannot dial-in to a specific record in a set of records for deduplication. For example, if your transaction-based selection rule identifies three records to associate with an Individual_Business_Unit_ID, and it has one attribute to sort by (e.g., transaction date time) and a sort order (i.e., descending or ascending), you will get the most recent transaction. Alternatively, you could have picked the oldest transaction. However, if there are different criteria or additional needs beyond a column to sort by and an order, this feature may not be suitable for your use case.

  • Configuration and Testing: Make sure you fully configure your audience definition before testing. If you make a change to the deduplication setting, you may want to create a new audience and interaction from scratch for testing to ensure the latest changes are reflected.

Conclusion

The document provides a comprehensive guide on configuring and using Transactional Audience definitions in RPI. It covers the configuration steps, usage patterns, and the results of various configuration and usage options. Here are the key takeaways and limitations:

  • Purpose and Benefits: The Transactional Audience definitions feature allows you to export or personalize data from tables on the many side of a 1:M relationship. This feature helps you select specific records for extraction or personalization based on defined criteria.

  • Configuration Steps: The document details the steps to configure a transactional audience definition, including defining the primary and transactional resolutions, configuring the audience definition, and using the selection rules.

  • Use Cases and Examples: The document provides examples of configuring and using Transactional Audience definitions, illustrating how different configurations result in different outputs.

  • Limitations: The feature has some limitations, such as the inability to dial-in to a specific record in some instances where alternative approaches need to be considered.

By understanding these considerations and limitations, you can effectively use the Transactional Audience definitions feature in RPI to achieve your data extraction and personalization goals.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.