fix: klaviyo remove duplicate profile due anonymousId mapped to external_id #3440
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What are the changes introduced in this PR?
For klaviyo destination, anonymous events (no
userId
), we are mapping the main identifier on klaviyo side,external_id
, withanonymousId
and once we get identify event for the same user we are mapping userId toexternal_id
leading to duplicating profiles. Klaviyo has a parameter asanonymous_id
which helps to track anonymous user, and once user is identified, it we can send bothexternal_id
mapped touserId
andanonymous_id
mapped toanonymousId
to merge the profiles. Hence, avoiding creation of duplicate profiles.This PR resolves this issue by mapping only
userId
to theexternal_id
parameter and mappinganonymousId
toanonymous_id
always.What is the related Linear task?
Resolves INT-2185
Please explain the objectives of your changes below
Put down any required details on the broader aspect of your changes. If there are any dependent changes, mandatorily mention them here
Any changes to existing capabilities/behaviour, mention the reason & what are the changes ?
N/A
Any new dependencies introduced with this change?
N/A
Any new generic utility introduced or modified. Please explain the changes.
N/A
Any technical or performance related pointers to consider with the change?
N/A
@coderabbitai review
Developer checklist
My code follows the style guidelines of this project
No breaking changes are being introduced.
All related docs linked with the PR?
All changes manually tested?
Any documentation changes needed with this change?
Is the PR limited to 10 file changes?
Is the PR limited to one linear task?
Are relevant unit and component test-cases added in new readability format?
Reviewer checklist
Is the type of change in the PR title appropriate as per the changes?
Verified that there are no credentials or confidential data exposed with the changes.