How to Match Online and Offline Customers

Mechanism to identify and integrate customers registered separately in Shopify and POS as the same person

customer integrationmatchingonline offlineidentity resolution
3 min read

About This Topic

When customers are registered separately in the online store (Shopify) and physical stores (POS), there is a need to identify them as the same person and integrate the data.

This is a challenge called "customer matching" or "identity resolution," and it is key to achieving omnichannel experiences.

Why Customer Matching is Necessary

Common Situations

Offline to Online
SituationCreated membership card at store (2 years ago) -> Registered online today
ProblemSame person but exists as separate records
Online to Offline
SituationRegistered online (last month) -> Asked to register at store today
ProblemAlready an online member but risk of duplicate registration

Example: Taro Yamada (yamada@example.com) is registered in POS with member number 00001. When registering online today, a separate record is created as Shopify customer ID 12345.

Problems Without Matching

Split points
Impact on CustomerPoints separate between store and online
Impact on OperationsIncreased complaint handling
Fragmented purchase history
Impact on CustomerCannot see overall purchase trends
Impact on OperationsCannot provide appropriate recommendations
Duplicate communications
Impact on CustomerSame DM arrives twice
Impact on OperationsCost increase, poor impression
Inconsistent member experience
Impact on CustomerTreatment differs by channel
Impact on OperationsBrand value decline

Basic Matching Approach

This Project's Approach

Primary key
ContentEmail address
Configuration
ContentSet as required field in both systems
Matching timing
ContentAutomatic matching at registration
Judgment criteria
ContentTreated as same person if matched

Fallback:

  • Email doesn't match -> Treat as new customer
  • Manual merge later is also possible

Reasons for adoption: Simple and reliable, easy to automate, no additional burden on customers

For Those Who Want to Learn More

Customer matching is explained in detail in three articles.

1. Matching Key Selection

Which information should be used as a key to match customers between two systems. Comparison and selection rationale for email addresses, phone numbers, names, etc.

-> Matching Key Selection

2. Address Data Normalization

Address formats differ between Shopify and POS, causing problems if stored as-is. Explanation of address normalization, particularly for Japanese addresses.

-> Address Data Normalization

3. Sync Error Recovery

How to handle cases where sync fails due to network issues or API rate limits.

-> Sync Error Recovery

Overall Matching Flow

Customer Matching Flow
Receive new registration request

Email address: yamada@example.com

Search existing customers

Search Shopify -> Not found / Search POS -> Found!

Matching decision

Email addresses match -> Identified as same person

Integration processing

Shopify: Create as new customer / POS: Update existing customer's member number with Shopify ID

Complete

Recognized as same customer in both systems

Benefits of This Mechanism

For Customers

  • Recognized as "the same person" across all channels
  • Points are integrated, usable at both stores and online
  • Receive appropriate recommendations based on purchase history

For Operations

  • No duplicate customer data, easier management
  • Ability to analyze purchase history across all channels
  • Ability to execute effective marketing campaigns

Related Topics