Skip to main content
🚧 We’re in the process of improving this guide and expect a little bit of back and forth as we make sure it’s right for all Salesforce versions. Any feedback you might have would be sincerely appreciated.

Initial setup & authentication

Quick steps:
  1. Confirm Company name
  2. Candu issues certificate
  3. Integration Profile Setup
  4. Integration User Setup
  5. Client App Setup
  6. Candu sets up your sync
  7. Confirm mapped fields and Enable

1. Confirm Company name

Candu will issue a signing certificate for use in the integration flow, for this we’ll need to confirm the company name: Organization Name - usually in Company Settings → Company Information Salesforce organization name

2. Candu will issue a certificate

Based off the provided company name, Candu will generate a certificate and private key for use accessing the API. You’ll upload the certificate in step 5. Note: The certificate will be issued with the email engineering+{companyName}@candu.ai.

3. Integration Profile setup

Create a new profile to be used for the integration Create an integration profile Ensure the created profile has the following permissions:
  1. Administrative Permissions
    1. API Enabled
    Enable API permission
  2. Standard Object Permissions
    1. Accounts: Read, View All Records, View All Fields
    2. Contacts: Read, View All Records, View All Fields
Account object permissions Contact object permissions

4. Integration User Setup

Create a Candu User, with email: engineering+{companyName}@candu.ai and associate the above Profile to this User. Create the integration user Note: this email must match the certificate generated in step 2.

5. Client App Setup

Next we’ll set up an External Client App - usually in Apps → External Client Apps → External Client App Manager It should be configured as follows:
  1. Basic Information
    1. Contact Email: engineering@candu.ai
    External Client App basic information
  2. API (Enable OAuth Settings)
    1. Enable OAuth
  3. App Settings
    1. Callback URL: https://app.candu.ai/salesforce/auth/callback
    2. OAuth Scopes
      1. Access Headless Passwordless Login (pwdless_login_api)
      2. Manage user data via APIs (api)
      3. Perform requests at any time (refresh_token, offline_access)
OAuth settings and scopes
  1. Flow Enablement
    1. Enable JWT Bearer Flow
      1. Upload the Candu certificate
  2. Security
    1. Check: Require secret for Web Server Flow
    2. Check: Require secret for Refresh Token Flow
    3. Uncheck: Require Proof Key for Code Exchange (PKCE) extension for Supported Authorization Flows
      1. We do not support PKCE at the moment
JWT flow and security settings Back in External Client App Manager, click on the newly created App. In Policies, click Edit (located on the right of the tab)
  1. Oauth Policies - Set Permitted Users: Admin approved users are pre-authorized
  2. App Policies Once Oauth Policies is set to pre-authorised, add the Profile we created earlier to Selected Profiles
App policies and selected profiles Next, within the newly created app, click Settings → Oauth Settings, then click Consumer Key and Secret Locate Consumer Key and Secret Take a note of the Consumer Key on the following screen. We do not require the Consumer Secret Consumer key screen

6. Candu team sets up your sync

This step is not currently self-serve. The Candu team will set up your Workspace with the correct Salesforce endpoints. For this, please provide us with the following information:
  1. Your Salesforce authentication host URL, for example:
    1. https://login.salesforce.com - usually it’s this for cloud managed instances
  2. Your Salesforce token and query URLs, for example:
    1. https://orgfarm-06fe5fea5a-dev-ed.develop.lightning.force.com/services/data/v63.0/token
    2. https://orgfarm-06fe5fea5a-dev-ed.develop.lightning.force.com/services/data/v63.0/query
  3. The Consumer Key from step 5

7. Confirm Mapped Fields and Enable

Once initial set up is performed, you’ll be able to manage your integration via the Candu dashboard.
  1. Configure mapping IDs for contacts and accounts.
  2. Set up traits you’d like to import
  3. Confirm details enable
Candu Salesforce mapping and sync configuration

After setup

Initial sync

The first sync after you enable the integration can take 24 to 48 hours to complete. After that, Candu syncs on the schedule you choose in the integration settings.

Adding new Salesforce fields

You don’t need a resync or a support request to bring in fields you add to Salesforce later.
  1. In Candu, go to Settings → Integrations → Salesforce → Configure Fields.
  2. New Account and Contact fields appear in the field list right away.
  3. Map each new field to a Candu trait and save.
Candu syncs only the fields you’ve mapped. New mappings are included the next time the scheduled sync runs, and you can then use them in Segments like any other trait.