QUESTION:
I am getting the following error when merging Contacts, why?
- 2010-07-27T05:13:07-06:00,,"Dedupe action for single group started",Contact,,,,,,""
- 2010-07-27T05:13:07-06:00,Single Table Dedupe,"Merge to Master",Contact,Merge,0034000000dLFc5AAG,0034000000bM9RTAA0,,,""
- 2010-07-27T05:13:08-06:00,Single Table Dedupe - SalesforceMerge,"Merge Call Failure",Contact,,,,,,"Object reference not set to an instance of an object."
- 2010-07-27T05:13:08-06:00,,"Dedupe action for single group ended",Contact,,,,,,""
ANSWER:
Check to see if both Contacts are enabled as self-service users. This can be done by copying the contact ID's shown in the error log and pasting them in the Salesforce URL to bring up the contact records. If both show "View Self-Service" then they are both active.
Salesforce does not allow deletion of a Contact when self-service is enabled. If both contacts have self-service enabled the self-service CANNOT be transferred to the non-master and as a result it will attempt to delete a contact with self-service enabled at the end of the merge and the merge will fail.
This is by design because Salesforce does not allow orgs to ever delete any type of user, regular users or Self-Service users. Just as regular users cannot be deleted because they may be the owner of a record, or the author of a case comment, Self-Service users cannot be deleted because they may be the author of a case comment. This is something Salesforce enforces at the system level, regardless of whether or not that specific Self-Service user has ever authored a case comment.
WORKAROUND:
Before merging contacts that both have active Self-Service usernames, deactivate one Self-Service username. The merged record will adopt the active Self-Service username.