I am exploring some option to connect two Sales force Orgs. My requirement is the following:
Any update to a record in one org should update the records in another org. Both org has an object with same name - XYZ. The object has an external id based on which it can upsert the record
Need to update the lookup record on XYZ object. If there is any parent of XYZ then that needs to be updated as well.
If there is any failure in upsert then the destination system where upsert has happened should show what records upsert has failed. like the bulk data load job logs
The connection can be real time or batch processing ( async). Real time - as soon as the records gets updated in one instance it should reflect in another instance. Batch - A batch file can get all the updated records in a day and update it in different instance.
Does Salesforce to Salesforce (S2S) is of any use here? Since it is an in built feature of salesforce will it help in using this here? Does it show any logs of the records which are upserted? Will I be able to also update the lookup object record on XYZ object.
Making an rest api/ bulk api callout from 1 salesforce instance to another instance where I need to update/insert the records. Bulk Api will produce log files. Can I send the records in JSON format from one instance to another using API callout?
Any suggestions? What is my best and optimal option here?