System of Record vs. External ID Sync Modes
When configuring data synchronization between two systems, you can choose between two primary sync modes: System of Record and External ID. Both modes support bidirectional sync, but differ in how records are matched and how identifiers are managed.
System of Record (SOR) Mode
-
Identifiers Used:
- The primary key of the System of Record (SOR) is the unique identifier for matching records.
- An additional field in both systems acts as the "external ID" to track the SOR primary key.
-
How it Works:
- Record Created in SOR:
- The record is synced to the other system.
- The external ID field in the non-SOR system is set to the value of the SOR's primary key.
- Record Created in Non-SOR:
- The record is synced to the SOR, which generates a primary key.
- The external ID field in the non-SOR system is updated to match the new SOR primary key.
- Updates:
- Updates in either system are matched using the SOR primary key (via the external ID field in the non-SOR system).
- Changes are propagated bidirectionally, always referencing the SOR primary key.
- Deletes:
- Deletions are matched and propagated using the SOR primary key and the external ID field.
- Record Created in SOR:
-
Use Case:
- Use SOR mode when you want one system to be the authoritative source for record identity, but still allow bidirectional updates.
External ID Mode
-
Identifiers Used:
- Both systems must have an "external ID" field.
- The external ID is the unique identifier for matching records across systems.
-
How it Works:
- Record Created:
- If a record is created in either system and has an external ID value, it is synced to the other system using that external ID.
- If a record is created without an external ID, it is not synced until the external ID is set.
- Updates:
- Updates are matched and synced using the external ID field in both systems.
- Deletes:
- Deletions are matched and propagated using the external ID.
- Record Created:
-
Use Case:
- Use External ID mode when records may originate in either system and you want a shared, user-defined identifier to link records.
Summary Table
| Mode | Identifier Used | Record Creation Logic | Typical Use Case |
|---|---|---|---|
| System of Record | SOR Primary Key + External ID | SOR PK is source of truth; non-SOR records get external ID set to SOR PK | Centralized identity, but bidirectional sync |
| External ID | External ID field | Only records with external ID are synced; external ID must exist in both systems | Decentralized, bi-directional, user-defined identity |