Salesforce Integration Guide

Connect your Salesforce instance to your Tenfold Dashboard

    Audience

    This document is written for both customers and prospective customers who are interested in using Tenfold within a Salesforce environment. It is recommended that readers should have a basic level of familiarity with Salesforce APIs, Salesforce administration, general networking, and Tenfold.

    Goals

    The goal of this document is to provide knowledge, reference, and procedural information necessary to understand a proposed Salesforce/Tenfold integration.

    This document is NOT intended as a specific system or network design document. If further clarification is needed, consult with a Tenfold representative.

    Terminology

    To ensure a common frame of reference, this guide uses the following terms in conjunction with this Salesforce integration:

    • Application Programing Interface (API): A set of clearly defined methods of communication used by Tenfold for reading and writing data.
    • Tenfold Cloud: A set of Web Services that receives events from the telephony system and takes further action such as querying and saving to the CRM.
    • Tenfold User Interface (TUI): An agent facing user interface which agents will interact with to identify callers, viewing recent activities, saving notes, dispositioning calls, etc.

    Customer responsibilities

    You are responsible for supplying the physical and/or IP connection(s) to Salesforce and LAN, and for obtaining and loading any licensing required by Salesforce. You are also responsible for configuring Salesforce to support the Tenfold integration.

    Salesforce requirements

    Supported interfaces

    • Classic
    • Lightning
    • Console

    Connection requirements

    Tenfold Cloud connects to Salesforce APIs via HTTPS. If your organization requires whitelisting of IPs to access the Salesforce API, please consult the Tenfold Allow List.

    Role setup

    In order for Tenfold to update task records (i.e. phone calls logged to Salesforce) and properly set relationships, the API user must be higher in the role hierarchy than users of the Tenfold integration. Additionally, both the API user and end-users in Salesforce must have the appropriate roles assigned. This provides the Tenfold API user with the access required to set relationships and update tasks.

    For example:


    Image

    Permissions

    Tenfold leverages an API user to establish the initial integration, obtain the Oauth token, and perform all API calls/writes to the SFDC instance.

    The below section outlines the out of the box permission requirements for the core Tenfold integration. Additional permissions may be required to support your use case.

    Alternatively, you may connect Tenfold to Salesforce via an Administrator account which provides sufficient privileges for the Tenfold integration.


    System permissions

    The following system permissions are required for the Tenfold integration.

    Table 1. System permissions required for the Salesforce integration user

    PermissionPurpose
    API EnabledAllows Tenfold to interact with the Salesforce API.
    Edit TasksEnables Tenfold to create and update phone calls and follow up tasks.
    View Setup and ConfigurationAllows Tenfold to dynamically build API queries based on the permission set assigned to the API User. This Permission depends on the View Roles and Role Hierarchy.
    View Roles and Role HierarchyThis permission is a dependency of the View Setup and Configuration.
    View All UsersAllows Tenfold to import users into Tenfold Dashboard.
    Modify Metadata Through Metadata API FunctionsAllows Tenfold to create the workflows and workflow rules required for omnichannel agent status updates to be pushed from Salesforce to Tenfold.



    When adjusting system permissions in the API user’s Permission Set after Tenfold has been connected to Salesforce you must re-initialize the integration by following these steps.

    1. Change the selected CRM in the Tenfold Dashboard to another CRM.
    2. Switch the CRM selection back to Salesforce.
    3. Re-connect Tenfold to your production or sandbox environment.
    4. Click the “Synchronize Fields” button in Tenfold Dashboard > Company Settings > CRM.


    Object Permissions

    Each object enabled for the Tenfold integration requires Modify All and Create object permissions. If it is desired to reduce permissions further, be mindful that the Tenfold API user requires the appropriate permissions and sharing settings to read and write relevant Salesforce records and support your use case.

    Table 2. Account object permissions required for the Salesforce integration user

    Account Object
    FieldPermissions
    Account Name

    Read Access

    Edit Access

    Account Owner

    Read Access

    Edit Access

    Created ByRead Access
    Phone

    Read Access

    Edit Access

    Table 3. Contact object permissions required for the Salesforce integration user

    Contact Object
    FieldPermissions
    Account Name

    Read Access

    Edit Access

    Asst. Phone

    Read Access

    Edit Access

    Contact Owner

    Read Access

    Edit Access

    Created ByRead Access
    Email

    Read Access

    Edit Access

    Home Phone

    Read Access

    Edit Access

    Mobile

    Read Access

    Edit Access

    Other Phone

    Read Access

    Edit Access

    Phone

    Read Access

    Edit Access

    Table 4. Lead object permissions required for the Salesforce integration user

    Lead Object
    FieldPermissions
    Created ByRead Access
    Email

    Read Access

    Edit Access

    Lead Owner

    Read Access

    Edit Access

    Lead StatusRead Access
    Mobile

    Read Access

    Edit Access

    Name

    Read Access

    Edit Access

    Phone

    Read Access

    Edit Access

    The Task object does not allow for control of Object Permissions in the permission set. Set the following Field Permissions on this object.


    Table 5. Task object permissions required for the Salesforce integration user

    Task Object
    FieldPermissions
    Assigned To

    Read Access

    Edit Access

    Call Duration

    Read Access

    Edit Access

    Call Type

    Read Access

    Edit Access

    Comments

    Read Access

    Edit Access

    Created By

    Read Access

    Edit Access

    Due Date

    Read Access

    Edit Access

    Name

    Read Access

    Edit Access

    Priority

    Read Access

    Edit Access

    Related To

    Read Access

    Edit Access

    Status

    Read Access

    Edit Access

    Subject

    Read Access

    Edit Access

    Task SubType

    Read Access

    Edit Access

    Type

    Read Access

    Edit Access

    Table 6. Opportunity object permissions required for the Salesforce integration user

    Opportunity Object
    FieldPermissions
    Account Name

    Read Access

    Edit Access

    AmountRead Access
    Created ByRead Access
    Opportunity Name

    Read Access

    Edit Access

    Opportunity Owner

    Read Access

    Edit Access

    ProbabilityRead Access
    StageRead Access

    Table 7. Case object permissions required for the Salesforce integration user

    Case Object
    FieldPermissions
    Account Name

    Read Access

    Edit Access

    Case NumberRead Access
    Case Owner

    Read Access

    Edit Access

    Created ByRead Access
    StatusRead Only
    Subject

    Read Access

    Edit Access



    Installation

    Configure the Oauth connection

    Establishing the initial connection from Tenfold to Salesforce takes only a minute. If you configured the connection through Connected App access, do not perform these steps.

    1. Start by navigating to your Tenfold dashboard at https://dashboard.tenfold.com
    2. Select the Company Settings link in the top navigation
    3. In the sub-navigation, select CRM
    4. Select Salesforce as your CRM. You will be able to select between authenticating for either a Production/Developer or Sandbox instance.
    5. Select Default from the Authentication Type box.
    6. Click the Connect with production button.
    7. A redirect window will appear and either:
      • If you are already logged into Salesforce, the handshake will automatically occur.
      • If you are not already logged in, then a Salesforce login screen will appear.
    8. You will be prompted to grant Tenfold relevant permissions and the window will automatically close.


    Configure the Connected App connection

    Establishing the initial connection from Tenfold to Salesforce takes only a minute. If you configured the connection through Oauth, do not perform these steps.

    1. Start by navigating to your Tenfold dashboard at https://dashboard.tenfold.com
    2. Select the Company Settings link in the top navigation
    3. In the sub-navigation, select CRM
    4. Select Salesforce as your CRM. You will be able to select between authenticating for either a Production/Developer or Sandbox instance.
    5. Select Credentials from the Authentication Type box.
    6. Enter your client ID and Client Secret into the appropriate boxes.
    7. Click the Save button. If the credentials and permissions are correct, you should see a message at the top of the screen saying the connection tested successfully.


    Install OpenCTI

    Tenfold Download page will keep an up to date link to the latest OpenCTI managed package for both production and sandbox installs. You can find the download page here - Tenfold UI Releases

    Follow the prompts on the screen.


    OpenCTI - Add users

    Within Salesforce as an admin:

    1. Navigate to setup->call center.
    2. Select Tenfold Embedded UI.
    3. Select Manage Users. This brings you to a list of users enabled for Tenfold OpenCTI. If this is a fresh install the list may be empty. Select Add More Users to add users to the call center for Tenfold OpenCTI
    4. Search for the usernames that should be able to use OpenCTI, select them, and click on Add Users.


    OpenCTI - Enable the interface in Lightning

    Within Salesforce as an admin:

    1. Start by navigating to the App Manager within the setup page.
    2. Select the dropdown to the right of the Salesforce Lightning app you would like to update and select edit.
    3. Select Utility Items then Add Utility Item.
    4. Add Open CTI Softphone and click save.


    Missing Something?

    Check out our Developer Center for more in-depth documentation. Please share your documentation feedback with us using the feedback button. We'd be happy to hear from you.