We are in the middle of designing a synchronization between Oracle Customer Hub and a legacy application for Customer Information.
Please find below simplified data view:
Customer (Person/Org) Consists of the following elements:
Profile level attributes - like ID, name, dob, etc...
Child Level entitities like:
1- Address: 1 to n addresses
2- Phone Numbers: 1 to n Phone numbers
The require synchronization should be two way taking into consideration that the main requirement is fine-grained updates between both systems.
And the following are the principals that we need to adhere to:
1- Not to keep cross referencing information in the middleware (AIA)
2- Store Cross-referencing information on OCH - but only at the parent profile level.
3- No cross-referencing to be stored for the child level entities.
The issue is:
What can be the approach to synchronize the individual updates. Let's say an update in a phone number happend in OCH - how can we identify which phone number is updated to be able to update it n target legacy if we don't store identifiers for the individual child elements.
1- Always send old and new version of every update from source to be able to select and identifier from the target based on the elements in the old data - and then perform the update.
It will be so much appreciated of someone can share his thoughts/ideas on this. and if anyone faced the same kind of issue before.