What is an Association Field?
Unique identifiers (UIDs) allow integrations to take a UID, such as an Account ID, and find the specific record that the UID belongs to. As part of this process, you not only find which record the UID belongs to, but you can also return other data points that are associated with that record.
Association mappings allow you to pass through one data point (such as a user ID, or email) to ClientSuccess > We then take that data point, and go find other information that's associated with the record.
For example, a Salesforce Account ID will tell you the Account Name, Account Owner and any other Account fields associated with a particular Account. In the example below, the Account ID of "0014B00000fCN8j" provides us with a great deal of details about this Account:
The power behind this lies in that you can provide us with an ID that's not user-friendly, such as an Account ID "0014B00000fCN8j", and we can use that ID to find and return related data that IS user friendly, such as the Account Name: "New York Times".
Nobody is going to understand what "0014B00000fCN8j" is referring to, but when you return the Account Name, that is something you're likely to recognize. This "association" becomes particularly important due to many systems, including Salesforce, allowing for the use of "Lookup" fields.
In your Salesforce Account object you will likely have fields that refer to other objects in Salesforce. The most common example would be the Account Owner field:
Although you see a full name being displayed in this field ("David Tuttle"), the actual data or value stored in this field is the Salesforce User ID for whichever Salesforce User is listed here. In the case above, "David Tuttle" is what you see in the UI, but the actual value stored is "0054B000001capL":
This means that if we map to your Account Owner field, what we'll receive is the User ID of "0054B000001capL", and that's what would be displayed in ClientSuccess. Instead, we want to have the friendly name displayed in ClientSuccess, not the ID. You have two options to achieve this:
1. Perform the lookup in Salesforce and pass the friendly name to ClientSuccess:
- Create a Custom Formula Field in your Salesforce which will key off your Account Owner field, though it will house the Account Owner's friendly name (David Tuttle) in the field, as opposed to the User ID (0054B000001capL).
- Instructions on creating a formula field can be found here.
- For example, if you are looking up the Account Owner field, you would use a simple formula of ‘Owner.FirstName & " " & Owner.LastName’ on a new field in Salesforce named, for example, “ClientSuccess Assigned Sales Rep”. This will put the friendly sales rep name in a field that is easy to pull over in the integration.
- You would then configure the mapping in CS as below:
- On the ClientSuccess side (left) of the mapping, you can see the field you're mapping "Assigned Sales Rep", the data we're expecting to receive from Salesforce "Employee Full Name", and that we're going to take that data and go "lookup" the User that is associated with what we receive.
On the Salesforce side (right), map to the field that houses a string/text version of your Account Owner/Sales Rep. In this example, a custom field we created called "ClientSuccess Sales Rep":
- Please note that Salesforce formula fields are "Read-Only" fields. This means that we will not be able to bi-directionally sync with them. These will be Salesforce > ClientSuccess only.
2. Pass the ID to ClientSuccess and perform the lookup in ClientSuccess:
- First, setup your mapping as outlined below.
On the ClientSuccess side (left) of the mapping, you can see the field you're mapping "Assigned Sales Rep", the data we're expecting to receive from Salesforce "CRM ID" (aka Salesforce User ID), and that we're going to take that data and go "lookup" the User that is associated with what we receive
On the Salesforce side (right), map to the lookup field that houses the User ID of your Sales Rep (in this case, the commonly used "Account Owner" field):
- Next, add the Salesforce User ID in ClientSuccess for each user you expect to sync with ClientSuccess. You can find this field in Global Settings > Teams > User > Salesforce System ID:
- Salesforce will provide you with a 15 digit User ID, but ClientSuccess will need the 18 digit version. There are a number of free tools online that will take your 15 digit Salesforce IDs and convert them to 18 digit ones. Simply Google "15 to 18 converter", or use the same tool we use.
- If you have users that do not need access to ClientSuccess (e.g. Sales Rep), you can set them up in the "Sales (Limited)" role. These users do not impact your license count. See here for details.
- We will pull the ID from Salesforce, do the lookup in ClientSuccess, and populate the friendly name in CS. The friendly name will be populated in the "Assigned Sales Rep Association" pick-list field in ClientSuccess.
3. You can also pass the ID to ClientSuccess for non-user fields as well:
- Set the Client Success Custom Field type to "Picklist" in Global Settings > Custom Fields. ClientSuccess will accept whatever values are sent in.
- Once the IDs have come over from Salesforce, simply go in to Global Settings > Custom Fields and overwrite the ID with a friendly name. Once the ID is re-labeled, the friendly name will be displayed going forward.
- If you need to see the mapping of ID to friendly name, please contact Support.