User Profile Management with Shopify

A typical journey of a user visiting a Shopify store transitions from an anonymous visitor to a known user and finally to a registered customer. This article describes how users transition through these stages, how their actions reflect in MoEngage user profiles, and the steps to take when duplicate profiles appear.

Shopify User Tracking

A user visiting your store is tracked by two primary sources:

  • MoEngage Web SDK: Integrated with your store as part of the initial setup.
  • Webhooks: Real-time event notifications sent directly from Shopify to MoEngage after the integration is complete.

User tracking flow diagram showing SDK and Webhook sources

info

Information

When both sources track the same event, use the webhook version for segmentation and campaign creation. Webhook events are received directly from Shopify and provide the most reliable signal for campaign logic

User Profile Attribute Capture

Profile attributes such as first name, last name, and Shopify ID are tracked when a user creates an account. For anonymous users, these attributes are collected during checkout along with the checkout updated event.

Email addresses and mobile numbers are captured when a user submits an on-site messaging form, logs in, registers, or provides contact details during checkout. MoEngage uses the captured value as the unique identifier (UID) to recognize and merge profiles.

warning

UID selection is permanent

The identifier you choose during integration (email or mobile number) cannot be changed after setup without significant consequences for your entire user database. Verify which identifier is most reliably present at checkout before you complete the installation.

Profile Merge

Profile merge occurs when MoEngage finds two profiles with the same UID value. This process ensures user activity remains under a single profile when a customer visits from a new device.

In Shopify integrations, MoEngage uses the Cart token as a common identifier to merge SDK and Webhook events. This token is generated when the first item is added to a cart and refreshed each time the cart is emptied.

Profile merge logic diagram using Shopify Cart Token

Duplicate Profile Information

You might notice more user profiles in MoEngage than visitors reported in Shopify analytics. To troubleshoot profile count discrepancies, review the following scenarios:

  • Buy Now Button usage: If your site allows checkout without adding a product to the cart, SDK and webhook events cannot merge, which creates extra profiles.
  • Missing UID at checkout: If a user places an order from a new device without entering the UID attribute, MoEngage creates a separate profile that cannot be merged automatically.

To prevent these tracking discrepancies from creating persistent duplicate records, you can implement MoEngage's Identity Resolution to automatically reconcile and link user profiles.

Identity Resolution

If your store has persistent duplicate profile issues, enable Identity Resolution. Identity Resolution is a MoEngage feature that links user profiles from multiple sources into a single unified profile. This allows MoEngage to recognize a user using more than one identifier, such as both email and mobile number.

When you activate Identity Resolution, a one-time merge runs on all existing duplicate profiles based on your configured identifiers. Existing users merge over 48 hours, while new users merge immediately.

warning

Profile merges are irreversible

After two profiles merge, they cannot be unmerged. Review your identifier configuration and merge rules carefully before you activate this feature.

Identity Resolution Enablement

To enable Identity Resolution for your Shopify workspace, perform the following steps:

  1. Contact your Customer Success Manager to request enablement for your workspace.
  2. After enabled, go to Settings > Data > Identity Resolution in your MoEngage dashboard to configure identifiers and merge rules.

For more information on configuration steps, refer to the Unified Identity (Identity Resolution).

Webhook Profile Resolution Logic

MoEngage creates a new profile for a webhook event only when the system cannot resolve the event to an existing user. This ensures that every event is captured and that campaigns depending on those events trigger correctly. If you observe a high volume of new profiles from webhook events, enabling Identity Resolution is the most effective solution.

Previous

Next

Was this article helpful?
0 out of 0 found this helpful

How can we improve this article?