In modern technology, there is a clear need to reuse objects and let the user configure each object once and repeatedly use it over and over again.
This is the basic assumption of the “Connection” configuration in Totango Customer Data Hub.
Connection to a data source is usually done by Ops or Data teams, and the main idea is that it will be configured once and you can reuse the same connection for several integrations.
Important note, the CRM integration family is a closed system, therefore, the data source connectors which are created can be re-used for only CRM integrations and not for other integration families.
Topics covered in this article:
Creating Salesforce Connection
Go to your Totango instance and click on Global Settings > Data Management > Customer Data Hub > Click CRMs and select Salesforce
(note: you will need Totango admin privileges).
- Create a new connection (or review your existing connections)
Configuring Salesforce Connection
Salesforce configuration is based on OAuth credentials and requires a dedicated connected app configured in Salesforce. The dedicated connected app is the authentication endpoint and the OAuth user holds the object permissions to your Salesforce.
Totango Customer Data Hub is using salesforce REST API v47.0 (/services/data/v47.0) to retrieve the data and update your sync-back attributes. Read more about Salesforce Rest API.
First, you will create the connected app in Salesforce, and then create the CRM connector in Totango.
Create A Connected App in Salesforce
Creating a connected app is needed for creating an authentication endpoint within Salesforce. The new connected app informs Salesforce of this new authentication entry point and includes the relevant authentication configuration. Read more about Salesforce connected apps.
Follow these steps to create a new connected app to sync data to Totango:
1. Open SalesForce, using Admin access.
In Lightning View:
- Open App Manager under Platform Tools --> Apps
- Click 'New Connected App' from the header
In Classic View:
- Click Apps under "Build" > "Create" menu
- Scroll the bottom of the page, under the "Connected Apps" section click New to start defining a new connected app.
2. Create a new connected app.
- Enter the name of your application (Totango Connected App or your choice).
- Please note: the name 'TotangoApp' and 'TotangoAppSandbox' are saved for the Totango package. Please do not use those names to prevent duplication.
- Enter the contact email information, as well as any other information appropriate for your application.
- Select Enable OAuth Settings.
- Enter this Callback URL: https://app.totango.com/auth/connector/callback
- OAuth copes are permissions given by the user running the connected app.
Add these scopes to the "Selected OAuth Scopes" and click "Save":
- Full access (full)
- Perform requests on your behalf at any time (refresh_token, offline_access) - enable it to allow the integration to ask for a token refresh without user intervention.
- Token validation is usually configured to 120 minutes, you can change it per your company standards.
- Click the "Save" button
- Click "Continue" button
- Note down your Consumer Key and Consumer Secret they are necessary for the next step of instructions
Important note, it will take 30-45 minutes before your new connected app is propagated through Salesforce infrastructure, the below steps will fail if you have not waited for it. If you experience failure with the below after 1 hour has lapsed, please contact our support team (firstname.lastname@example.org).
Create a CRM Connector to Salesforce in Totango
After the Salesforce connected app is created, create the connection in Totango.
Enter the connection name(MyCompanyName SFDC Connector) and description (optional), client id(Consumer Key), client secret(Consumer Secret), and select the Salesforce environment type (production or sandbox), then click the “Test and Save connection” to connect using your OAuth credentials.
You will be asked to enter your Salesforce credentials unless you are already connected in a different tab of the browser. In the later, the oAuth configuration will take the credentials stored in your active browser session.
Important note, the OAuth user holds the object permissions to your Salesforce. We recommend creating a dedicated user for this integration which has the desired object access permissions (for example, the dedicated OAuth user can access Account object but not Contact object).
Question: Will the configured Salesforce integration jobs in Totango get impacted if there is a transition from Salesforce Classic to Salesforce Lightning (no change to backend code in SFDC)?
Answer: No, the jobs will not get impacted.