About This Article
When a customer registers, information is synced to multiple systems behind the scenes. This process is fully automated, and customers are registered across multiple systems without being aware.
Sync Flow Details
Step-by-Step Flow
Customer enters required info in registration form and clicks submit button
Server validates input data (email format, required fields, etc.)
Create customer via Shopify Admin API. Save basic info and metafields
Get customer ID issued by Shopify (this becomes the master key)
Register Shopify customer ID as member number in POS system
Sync customer info to CRM for marketing (optional)
Send welcome email to customer and display registration complete screen
Data Flow Diagram
Name, email address, furigana, birth date, etc.
Data conversion and distribution (temporary processing only)
Basic info, metafields, address, customer tags
Member number (=Shopify ID), name, email
Contact, purchase history, tags
Registration Content for Each System
Information Saved to Shopify
| Field | Storage Location | Purpose |
|---|---|---|
| Name | Standard field | Orders, shipping |
| Email address | Standard field | Login, notifications |
| Phone number | Standard field | Shipping contact |
| Address | Standard field | Shipping destination |
| Furigana | Metafield | Shipping labels |
| Birth date | Metafield | Birthday coupons |
| Gender | Metafield | Marketing |
Information Saved to POS
| Field | Value | Purpose |
|---|---|---|
| Member number | Shopify customer ID | Master key for customer identification |
| Name | Same as Shopify | Receipts, customer service |
| Email address | Same as Shopify | For duplicate checking |
| Address | Saved normalized | DM mailing |
Processing Time and Customer Experience
Time Required for Sync
Estimated times when calling each API sequentially.
| Process | Duration |
|---|---|
| Shopify API call | ~500ms |
| POS API call | ~800ms |
| CRM API call | ~400ms |
| Email sending | ~300ms |
| Total | ~2 seconds |
Customer will see "Registering..." screen for about 2 seconds, so loading display is important to communicate wait time.
What Customer Sees
Enter required info, click submit button
"Processing member registration..." displayed for about 2 seconds
"Registration complete" "Welcome email has been sent"
Redirect to my page after registration complete
Error Handling Approach
Error Types and Responses
| Error Location | Response Policy | Customer Impact |
|---|---|---|
| Input validation | Display error content, prompt re-entry | Can fix immediately |
| Shopify API | Registration fails, prompt retry | Need to try again |
| POS API | Maintain Shopify registration, skip POS sync | Store use available later |
| CRM API | Maintain Shopify/POS registration, skip CRM sync | No impact |
Priority-Based Design
| Priority | Process | Response on Failure |
|---|---|---|
| Highest | Shopify registration | Treat entire registration as failed |
| High | POS sync | Log, re-sync later. Guide customer 'Please wait for store use' |
| Low | CRM sync | Log only, no customer impact |
| Lowest | Email sending | Log only |
Logging and Monitoring
Information to Record
| Timing | Recorded Content | Purpose |
|---|---|---|
| Process start | Timestamp, request ID | Tracking |
| Shopify registration complete | Customer ID, processing time | Success confirmation |
| POS sync result | Success/failure, error content | Troubleshooting |
| CRM sync result | Success/failure, error content | Troubleshooting |
| Process complete | Total processing time, final status | Performance monitoring |
Admin Notifications
Notify admin immediately when critical errors occur.
- When POS sync fails consecutively
- When processing time exceeds 3x normal
- When duplicate registration attempted with same email address
Benefits of This Mechanism
For Operations
- No manual data entry required at all
- Elimination of human errors
- Processing status visibility and tracking possible
For Customers
- Single entry completes registration across all systems
- Immediately usable as member both online and in-store
- No duplicate information entry required