Expand my Community achievements bar.

Ensuring Unique Lead Profiles with AEP and Salesforce Integration

Avatar

Level 3

Hello,

I've learned that in AEP, the ECID is not a long-term unique identifier for users who are not logged in, as that ECID can change when a user switches devices, clears cookies, or uses different browsers. We're looking for a more stable identifier, like the unique Profile ID used by Adobe Experience Platform (AEP), to sync lead records into Salesforce.

Context for Not Logged In Users

  • Data Collection: Users enter their information (name, email, phone number) through various channels such as our web forms (with WebSDK), our social media campaigns, our email marketing, our chat, etc.
  • Bulk Load: We also import leads/users in bulk (e.g., during M&A), and expect AEP's identity resolution to be applied here as well.
  • User Behavior: These users typically aren’t logged in and are just expressing interest in our products, acting as leads.

AEP as a Collector

  • Purpose: AEP should collect user information (cookies, email, name, fingerprints, and other available methods) to as accurately as possible identify and unify user profiles.
  • Functionality: AEP should link all interactions to a single, unified Profile ID, even if the user interacts from different devices or browsers. It should also provide the best version of the profile (best name, best email, best phone) and list all products the person is interested in.

Example Scenario (Not Logged In Users)

  1. Initial Interaction:

    • A user fills out a form from a social media campaign for a credit card, possibly with minor typos.
    • The user provides their name, email, phone number, and consent for us to collect their information and send communications later.
    • AEP doesn't find any previous matching interaction, then gives this user a NEW Profile ID "X" 
  2. Subsequent Interaction:

    • The same user shows interest in a mortgage on one of our web forms (with Adobe's WebSDK) using their personal computer.
    • The information entered might vary slightly (name, email, phone number).
    • We expect AEP to identify this as the same Profile ID "X" from the previous interaction, avoiding the need to collect consent again.
  3. Another Interaction:

    • On another day, the same user applies for the same credit card product using their work computer via one of our web forms (with WebSDK).
    • The user might omit the country code or include a small typo in the phone number or name.
    • AEP should use all available data (e.g., FB and Google integrations, fingerprints, user behavior, fuzzy logic) to identify this user as the same Profile ID "X", performing real-time deduplication.

Our Goals

  • Deduplicate Records: We want AEP to deduplicate these records in near real-time, using all available information, and provide the unique Profile ID to our applications.
  • Unique Profile ID: Maintain a single lead/user record with a unique Profile ID (best name, best email, best phone number) linked to multiple products of interest, accessible by our internal applications (like Salesforce, so SF's Lead record can be linked to the AEP's Lead record).

Questions

  1. How can AEP deduplicate these records into a single, normalized lead record with a unique Profile ID in real-time?
  2. How can I, from my own application, read that Profile ID at each step, so that I can link the Salesforce lead records to that unique Profile ID?
  3. Can AEP select the best quality fields (name, email, phone) from all these interactions and present the best name, email, and phone as a single unique profile, along with all the products this profile has shown interest in?

Thanks!

3 Replies

Avatar

Community Advisor

Hi @JeanBaro2

Lets discuss everything step by step.

  • How are you planning to build this profile id? because ECID expires after 2 years until you explicitly clear your cookies i guess that's enough time.
  • AEP didn't de-duplicate the records but it'll stich multiple identities into one based on a primary identity using identity service, so basically you have to define a primary identity filed in your schema for example e-mail, every time a user logged in the other identities tied to the same email will merge and give you holistic view of the users. check out more on How Identity Service links identities 
  • You can check and validate all the merged identities in the identity graph viewer or check the complete profile of the user in the profile UI to stitch salesforce leads with other profiles in AEP you must have a common identifier in the both the datasets like email, phone number or CRM id which you can ingest in AEP using batch or streaming ingestion, once both the schema and dataset are enabled for profile the data will stich to build a real time customer profile.
  • AEP by default doesn't select the best data fragments from multiple datasets but let you define merge policies, these are rules which help you define which data will take precedence over the other if data is coming from multiple sources.

@jayakrishnaaparthasarathy please add if I've missed anything.

Avatar

Community Advisor

@Ankit_Chaudhary - Agree. 

In addition to that, since all the interactions you mentioned are digital channels, there is no need of deduplication becuase the same customer may interact with different scenarios and all those must be captured in real time for the campaign strategy. As Ankit mentioned, you can look for any identity that works with salesforce which primarly stitch the AEP & salesforce events to form a customer complete personas. In our case, we use email as an identity to stich the salesforce events with existing AEP profiles. You can use the different varioation of fields to track those elements and decide what needs to be utilised based on the quality of information you have tracked from different application.

I would recommed you to have a XDM architecture by consedering all your objective and scope along with other sources to decide upon the ingestion strategy.

Avatar

Administrator

@JeanBaro2 Did you find the suggestions helpful? Please let us know if you require more information. Otherwise, please mark the answer as correct for posterity. If you've discovered a solution yourself, we would appreciate it if you could share it with the community. Thank you!



Kautuk Sahni