Automate Zuora update when two SFDC accounts are merged
Problem
When two accounts are found to be "duplicates" in Salesforce by an individual, the accounts are merged (AFAIK this is all not automated).
As a result of the merge one account survives and absorbs all the children (Opportunities, Quotes...) for the account that is destroyed.
Then a manual process needs to happen so the crm_id
for the Zuora Billing account associated to the destroyed Salesforce account is updated to the id of the surviving account.
Given this Zuora update is also a a manual effort performed by a different team we don't really know when the update will happen.
This makes it so Zuora cannot be blindly trusted as the SSoT by CDot because the crm_id
might be pending on manual update.
Proposal
Automate the process that updates the crm_id
for the Zuora Account associated to the destroyed SFDC Account.
Result
Once 2 SFDC Accounts are merged, the Zuora references (via the crm_id
attributes) are automatically updated.
Possible solutions to explore
On merging 2 SFDC Accounts:
- Callout from SFDC to Zuora to perform the update, CustomersDot will query Zuora for the
salesforce_account_id
- Callout to CustomersDot from SFDC, CustomersDot can then update Zuora.
- Place the id somewhere in SFDC where the 360 sync can access it when it is not able to find the
crm_id
for the Zuora Billing Account. So Zuora can autocorrect it.
Some of these options might not even be possible with today's architecture. I am inclined for Option 1.
Support Priority Score: (-, -, -, -, -, -, -, -, -, -, -) => 16
Availability & Testing
Given the proposal, tests for this automation should be written to ensure this automation acts as expected.
Things to consider:
- Are we merging the correct accounts?
- During the merge, is there any potential for conflict? E.g, the Zip code on one account is different than another.