Most of the credit for this post goes to
- ISSUE: When a username is changed in Salesforce for a user that is synced into Gainsight, the User Sync job, which uses the Salesforce Username as the upsert key by default to maintain the connected Gainsight User, creates a new user record:
- The new Gainsight user has the SAME Salesforce User ID, but has the NEW username from Salesforce – this user will not reflect the applied Gainsight license, etc. since that info remains unchanged on the original user record with the now out-of-date username.
- This original Gainsight User will not be updated by the sync job going forward because the username no longer matches the username in Salesforce, so changes in Salesforce to Last Name, or Title, etc. get carried to the newly-created user record that was created.
- The original Gainsight User, however, is the record that should be retained and re-linked to the source SFDC user, as that record has been assigned Gainsight license and permission bundles in Gainsight and is associated with owning CTAs, etc.
- Note: This would all be much easier if Gainsight allowed SFDC User ID as a valid upsert identifier, which it does not as of today.
- PROCESS TO FIX ISSUE – STEP 1: IN USER MANAGEMENT, ON THE NEWLY-CREATED USER WITH THE NEW USERNAME AND SAME SFDC ID:
- Update the First and Last name to Duped SFDC User (or similar)
- Update the username with "dupe." in front so you have "username@userdomain.com"
- Set the user to Inactive
- STEP 2: ON THE ORIGINAL USER RECORD THAT STILL HAS THE OLD USERNAME
- Update the username to the NEW username that''s in Salesforce.
- STEP 3: GO TO "GAINSIGHT SHARING" IN THE ADMIN SUITE, AND THEN TO "USER ATTRIBUTES" SUBTAB. CLICK "REFRESH USER DATA" AND ALLOW THE REFRESH TO FINISH BEFORE MOVING TO THE NEXT STEP.
- Note: For SFDC edition, this can be found under Administration > Gainsight Data Permissions
- STEP 4: WHEN USERS ARE UPDATED AND THE USER CACHE IS REFRESHED:
- Go to the Salesforce Connector and run the User Sync job manually for "all data" (or if this is for a single user that was changed recently in SFDC, set the date parameters to capture it).
- Confirm that the ORIGINAL, VALID User record in Gainsight for which you have updated the username has been updated by the Connector, and the new user that you had changed to "dupe.user" was NOT updated (Modified Date in User Management will show what was written to by the User Sync).
- STEP 5: ONCE THE SYNC IS UPDATING THE CORRECT USER RECORD, OPEN A SUPPORT TICKET FOR FINAL STEP:
- Create report of users STARTSWITH "dupe." Show the GSID, Username and SFDC ID fields.
- Dump to a CSV and open a ticket with support requesting that the SFDC ID on the attached usernames be set to NULL. This will take care of any dependencies on connector jobs in the future, etc.