Data Synchronization
Data synchronization is the process of keeping related information consistent between two or more systems.
It may happen continuously, in response to events, or on a scheduled basis.
What It Means in Practice
Imagine:
CRM contains a customer's email address.
Email platform contains the same customer.
If the email changes in the CRM, synchronization may update the email platform so both systems continue representing the same person correctly.
One-Way vs. Two-Way Sync
### One-way synchronization
System A → System BSystem A owns the information.
System B receives a copy.
### Two-way synchronization
System A ↔ System BBoth systems can change information.
Two-way synchronization introduces more complexity because conflicts need rules.
Source of Truth
One of the most important decisions is:
Which system owns this value?
For example:
PMS owns room inventory → Channel Manager distributes it.
or:
Point of Sale owns inventory → online store receives updates.
Your Inventory Sync glossary term is a commerce-specific example of this broader concept.
How Synchronization Happens
Synchronization may use:
- Webhooks
- Polling
- APIs
- Scheduled jobs
- Middleware
- Bulk imports
- Product Feeds
The appropriate method depends on how quickly the information needs to change.
Why It Matters
Unsynchronized systems create conflicting versions of reality.
Examples include:
- Wrong inventory
- Old email addresses
- Duplicate customers
- Different prices
- Reservations missing from one system
- Orders appearing with different statuses
The cost often appears as manual reconciliation.
Common Problems
Common problems include:
- No source of truth
- Two-way sync without conflict rules
- Duplicate records
- Updates arriving out of order
- Partial failures
- Pagination missing records
- Rate Limits interrupting large syncs
- Different identifiers in each system
- Deleted records never propagating
How to Improve
For every synchronized field, define:
- Source of truth
- Direction
- Frequency
- Identifier
- Conflict behaviour
- Failure handling
- Deletion behaviour
- Ownership
Where real-time synchronization is unnecessary, a simpler scheduled workflow may be more dependable.