Merge Profiles

Updated 

The Fetch and Merge Profiles action node helps your workflows automatically detect and combine duplicate customer profiles created across different channels. By using configurable identifiers—such as social media user ID, mobile number, email address, or custom profile fields—it identifies a matching profile and merges the current workflow profile into it, resulting in a single, unified customer record.

With this unified view, key rules and data, like quarantine settings, opt-out preferences, survey history, and other linked information, are applied consistently at the overall customer level, rather than being managed separately for each channel.

Business Use Cases

  • Cross-Channel Profile Deduplication: The Fetch and Merge Profiles capability helps identify and combine duplicate customer profiles created across different channels into a single, unified record. It works by matching profiles using shared identifiers, such as email, phone number, or custom fields, and merging them automatically within a workflow. This ensures that all customer data, preferences, and rules are applied consistently at one central profile level, helping avoid duplicate communications and enabling a more seamless, accurate customer experience across channels.

  • Omnichannel Opt-Out Enforcement: In an omnichannel environment, customers may opt out of communications on one channel but still receive messages on others if their profiles are fragmented. The Fetch and Merge Profiles capability addresses this by identifying and combining duplicate profiles into a single, unified customer record using shared identifiers like email or phone number. Once merged, preferences such as opt-outs are applied at the unified profile level, ensuring that suppression rules are consistently enforced across all channels and preventing any unintended outreach.

  • CRM Identity Reconciliation: In environments where customers are onboarded through multiple touchpoints, separate profiles can be created for the same individual across different platforms or social networks. The Fetch and Merge Profiles capability helps resolve this by matching profiles using a shared identifier, such as a CRM ID stored in a custom field, and merging them into a single, unified customer record. This ensures that new profiles created through workflows are automatically consolidated into the existing master profile, keeping customer data clean, consistent, and easy to manage across systems.

CX and Insights teams avoid duplicate surveys across channels, improving data quality and reducing customer fatigue. Compliance and Privacy teams ensure universal opt-out enforcement, where a single unsubscribe applies across all channels. Survey Program Operators benefit from accurate quarantine enforcement at the unified profile level, preventing over-contact even with multiple identities. CRM Administrators can reconcile fragmented profiles using any unique identifier, keeping audience data clean without manual effort. Data Analysts gain consolidated customer data, leading to more accurate reporting, segmentation, and insights.

Prerequisites

This feature is generally available as part of CFM. Accessing this node does not require any specific permissions. There are few more prerequisites that are needed:

  • At least one custom profile field or standard identifier (SNID, mobile, email) must be available to use as a filter.

  • For Salesforce and Zendesk workflows, the profile variable selected via the "Select Profile" step is treated as the profile to be merged.

  • For API, Response, and Transaction event workflows, the profile on which the workflow is running is treated as the underlying profile to be merged.

Setting Up

The Fetch and Merge Profiles node identifies an existing profile based on the configured filters and merges the current workflow profile into it, creating a single unified customer record. The oldest matched profile is preserved as the surviving universal profile.

It is supported across all five CFM workflow types.

Placement: This node should be added early in the workflow, before the Trigger Survey Distribution node, to ensure all distributions are executed using the merged universal profile.

The navigation steps are listed below:

  1. When configuring the Fetch and Merge Profiles action node, define the following:

    1. Name: Enter a name for the action node. This name appears on the workflow canvas to help you understand the flow at a glance.

    2. Filter Records: Define the criteria used to fetch the matching profile. You can filter using:

      1. Standard fields:

        1. Social Network (Email, Mobile, WhatsApp Business, etc.)

        2. Social Network User ID

      2. Custom fields: Any custom profile field available in your tenant (e.g., Loyalty ID, CRM ID, External Customer ID).

  2. You can add multiple conditions using + Add Condition.

  3. Merge Behavior Once the node executes:

    1. All profiles matching the filter are evaluated.

    2. The oldest matching profile is selected as the target (surviving) profile.

    3. The current workflow profile is merged into this oldest profile.

    4. Intermediate matching profiles (if any) are ignored in the current implementation.

Note: Failure Handling If the merge operation fails for any reason, the workflow continues execution. The node will not block downstream actions.

How to use it?

Follow these steps to use the Fetch and Merge Profiles node as part of your workflow:

  1. Build Your Workflow Create a new workflow and configure the necessary trigger event and upstream conditions based on your use case.

  2. Add the Fetch and Merge Profiles Node Add this node early in the journey, before any Trigger Survey Distribution nodes, to ensure the merge happens before distribution logic is evaluated.

  3. Configure Filters Set up filter conditions that uniquely identify the target profile.

    1. Ensure the filter values reference workflow variables set upstream (using the ${x} variable picker).

  4. Add the Trigger Survey Distribution Node (if applicable) After the merge node, add your distribution node. The distribution will now be triggered against the universal merged profile, ensuring quarantine, opt-out, and reporting all reflect the consolidated customer record.

  5. For Salesforce and Zendesk Workflows Use the "Select Profile" variable (created upstream via the Create Record node) to designate the profile to be merged. This step is required for these event types; for API, Response, and Transaction events, the workflow's underlying profile is used automatically.

How to test it?

  1. Set up a workflow with the Fetch and Merge Profiles node configured with a filter on a known custom field (e.g., Loyalty ID).

  2. Create two test profiles with the same Loyalty ID value — one older (created earlier) and one newer (the workflow profile).

  3. Run the workflow against the newer profile.

  4. Verify that the newer profile has been merged into the older profile, and the older profile is now the surviving universal profile.

  5. Validate Quarantine Behavior

    1. Send a survey to the older (surviving) profile.

    2. Configure a quarantine rule (e.g., 1 survey per 30 days).

    3. Trigger the workflow again with a new profile carrying the same Loyalty ID.

    4. After merge, trigger a new distribution.

    5. Expected result: Distribution fails with status Quarantined, since quarantine is evaluated against the merged universal profile.

  6. Validate Unsubscribe Behavior

    1. Opt out the surviving profile on any channel.

    2. Trigger the workflow with a new profile carrying the same identifier.

    3. After merge, trigger a new distribution.

    4. Expected result: Distribution is Suppressed, reflecting the opt-out on the merged profile.

  7. Check downstream reporting (Custom Reports, Distribution Reports, Dashboards) to confirm all response instances, transactions, and history are attributed to the surviving profile.

Key points to note

  • The current implementation assumes that the workflow (newer) profile being merged is clean, meaning it has no active surveys, linked entities, or running workflows at the time of merge. Behavior in more complex cases is not fully handled in the current release.

  • The node merges the workflow profile into the fetched profile, not the other way around. The fetched (oldest) profile always survives.


FAQs

If no matching profile is found, the node fails gracefully and the workflow continues execution without merging any profiles.

The oldest fetched profile (the one matching your filter) is always the surviving universal profile. The workflow profile is merged into it.

Yes. After merging, quarantine is enforced at the universal profile level. If the surviving profile has already received a survey within the quarantine window, any new distribution will be blocked with a Quarantined status.

Yes. After merging, an unsubscribe or opt-out on any channel is applied at the universal profile level, suppressing future distributions across all channels.

Yes. The Fetch and Merge Profiles node is available across all 5 CFM workflow types. For Salesforce and Zendesk workflows, you must designate the profile to be merged using the "Select Profile" variable. For all other workflow types, the profile on which the workflow is running is used automatically.

You can use any unique identifier available as a standard or custom profile field — such as email, mobile number, Loyalty ID, CRM ID, or any other custom field configured in your tenant.