Let’s imagine a scenario in which Salesforce needs to integrate with a system of record for account information.
This system, which we’ll call AccountSOT, is the “source of truth” for some account-related fields. This includes the account name, addresses, phone numbers, and FAXs (don’t laugh, some companies still use them).
The initial integration already in place is whenever an account is created or updated in AccountSOT, Salesforce receives the update and adjusts accordingly.
Now, when Salesforce users want to update account information that originated from AccountSOT, we have a few options.
1. Users are not allowed to make changes to the account name, address, phone and FAX. They need to follow the business process of updating AccountSOT first, which will update Salesforce through the existing integration.
2. Users are allowed to make changes to these fields in Salesforce, which triggers a request to update the record in AccountSOT. If AccountSOT accepts the change, a confirmation response is sent back to Salesforce. If the change is not accepted, the updates in Salesforce are rolled back.
3. Users request a change in Salesforce, but through an indirect method. So they don’t actually update the appropriate fields, but submit a change request within Salesforce to AccountSOT. If AccountSOT accepts the change, then the appropriate fields are updated. Else, the fields are not updated.
The takeaway
Given these options, which would you choose and why? (I’ll share my thoughts in a subsequent email)
If you have another viable option, let me know.