Skip to main content

Microsoft Dynamics integration guide

Audience

This document is directed to customers and prospective customers interested in using Tenfold in a Microsoft Dynamics environment. Those who will perform the procedures described in this guide should have a basic level of familiarity with Microsoft Dynamics APIs, Microsoft Dynamics administration, general networking, and Tenfold.

Goals

The goal of this document is to provide knowledge, reference, and procedural information necessary to understand a proposed Microsoft Dynamics/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 Microsoft Dynamics integration:

  • Application Programming Interface (API): A set of clearly defined methods of communication used by Tenfold for reading and writing data.

  • Click to Dial: A feature in the Tenfold UI which allows agents to click a phone number to dial a contact.

  • 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 for identifying callers, viewing recent activities, saving notes, dispositioning calls, etc.

Customer responsibility

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

Dynamics requirements

Version requirements

Microsoft Dynamics 365 8.2.1.0176 or later

Microsoft Dynamics USD 4.1 or later

Connection requirements

Accessible via TCP port 443 (https) to Tenfold Cloud

Dedicated Service Account (i.e. API User)

Permissions

The tables shown below outline the out of the box entities and respective field permissions required for the core Tenfold integration. Read and/or write permissions for additional fields, both standard and custom, may be required for your Tenfold deployment.

Legend:

DynamicsPermissionLegend.png
Table 1. Core Records Tab

Entity

Privilege

Access Level

Account

Create

Organization

Account

Read

Organization

Account

Write

Organization

Account

Delete

User

Account

Append

Organization

Account

Append To

Organization

Action Card

Create

User

Action Card

Read

User

Action Card User Settings

Read

User

Activity

Create

Organization

Activity

Read

Organization

Activity

Write

Organization

Category

Read

User

Connection

Read

User

Connection Role

Read

Organization

Contact

Create

Organization

Contact

Read

Organization

Contact

Write

Organization

Contact

Delete

User

Contact

Append

Organization

Contact

Append To

Organization

Customer Relationship

Read

User

Data Import

Read

User

Data Map

Read

User

Duplicate Detection Rule

Read

User

Email Signature

Read

User

Email Template

Read

User

Feedback

Read

User

Follow

Read

User

Import Source File

Read

User

Lead

Create

Organization

Lead

Read

Organization

Lead

Write

Organization

Lead

Delete

User

Lead

Append

Organization

Lead

Append To

Organization

Mail Merge Template

Read

User

Note

Read

Organization

Opportunity

Create

Organization

Opportunity

Read

Organization

Opportunity

Write

Organization

Opportunity

Delete

User

Opportunity

Append

Organization

Opportunity

Append To

Organization

Opportunity Relationship

Read

User

Queue

Read

User

Report

Read

User

Saved View

Create

User

Saved View

Read

User

Saved View

Write

User

Saved View

Delete

User

Saved View

Append

User

Saved View

Append to

User

Saved View

Share

User

SharePoint Site

Read

Organization

Sync Error

Read

User

Trace

Read

Organization

User Chard

Read

User

User Dashboard

Read

User

User Entity Instance Data

Read

User

User Entity UI Settings

Create

User

User Entity UI Settings

Read

User

User Entity UI Settings

Write

User

User Entity UI Settings

Delete

User

User Entity UI Settings

Share

User



Table 2. Sales Tab

Entity

Privilege

Access Level

Competitor

Read

Organization

Product

Read

Organization

Product

Append

Organization

Product

Append To

Organization

Product

Append To

Organization

Quote

Read

Organization



Table 3. Service Tab

Entity

Privilege

Access Level

Case

Write

Organization

Case

Read

Organization

Case

Write

Organization

Case

Delete

User

Case

Append

Organization

Case

Append To

Organization

Knowledge Article

Read

Business Unit

Knowledge Article Image

Read

Business Unit

Knowledge Article Views

Read

Business Unit

Knowledge Interaction Insight

Read

Business Unit

Knowledge Search Insight

Read

Business Unit



Table 4. Business Management Tab

Entity

Privilege

Access Level

Business Unit

Read

Organization

Currency

Read

Organization

Organization

Read

Organization

Security Role

Read

Organization

Team

Read

Organization

User

Read

Organization

User Settings

Create

Parent: Child Business Units



Table 5. Service Management Tab

Entity

Privilege

Access Level

Entitlement

Read

Organization

Entitlement

Write

Organization

Entitlement

Append

Organization

Entitlement

Append To

Organization

Entitlement

Assign

Organization

Entitlement Template

Read

Organization

Entitlement Template

Write

Organization

Entitlement Template

Append

Organization

Entitlement Template

Append To

Organization

Knowledge Article Template

Read

Organization

Knowledge Base Record

Read

Organization

Knowledge Search Model

Read

Organization

Routing Rule Set

Read

User



Table 6. Customization Tab

Entity

Privilege

Access Level

App Config Master

Read

Organization

Attribute Map

Read

Organization

Customizations

Read

Organization

Entity

Read

Organization

Entity Key

Read

Organization

Entity Map

Read

Organization

Field

Read

Organization

Hierarchy Rule

Read

Organization

Model-driven App

Read

Organization

Option Set

Read

Organization

Plug-in Assembly

Read

Organization

Plug-in Trace Log

Read

Organization

Plug-in Type

Read

Organization

Process

Create

User

Process

Read

Organization

Process

Write

User

Process

Delete

User

Process

Append

User

Process

Append To

User

Process

Assign

User

Process

Share

User

Process Configuration

Read

Organization

Process Session

Create

User

Process Session

Read

Organization

Process Session

Write

User

Process Session

Delete

User

Process Session

Append

User

Process Session

Append To

User

Process Session

Assign

User

Process Session

Share

User

Relationship

Read

Organization

Sdk Message

Read

Organization

Sdk Message Processing Step

Read

Organization

Sdk Message Processing Step Image

Read

Organization

Solution

Read

Organization

System Application Metadata

Read

Organization

System Chart

Read

Organization

System Form

Read

Organization

System Job

Read

User

System Job

Write

User

System Job

Append

User

System Job

Append To

User

User Application Metadata

Create

User

User Application Metadata

Read

User

User Application Metadata

Write

User

User Application Metadata

Delete

User

View

Read

Organization

Web Resource

Read

Organization

Activate Real-time Processes

N/A

User

Execute Workflow Job

N/A

Organization

Run Flows

N/A

Organization



Table 7. Custom Entities Tab

Entity

Privilege

Access Level

Account Project Price List

Create

Organization

Account Project Price List

Read

Organization

Account Project Price List

Write

Organization

Account Project Price List

Delete

Organization

Account Project Price List

Append

Organization

Account Project Price List

Append To

Organization

Account Project Price List

Assign

Organization

Account Project Price List

Share

Organization

Channel Integration Framework v1.0 Provider

Read

Organization

Channel Integration Framework v2.0 Provider

Read

Organization

flowcardtype

Read

Organization

icebreakersconfig

Read

Organization

KPI Event Definition

Read

User

Notification Field

Read

Organization

Notification Field (Deprecated)

Read

Organization

Notification Template

Read

Organization

Notification Template (Deprecated)

Read

Organization

Post Configuration

Read

Organization

Recording

Read

Organization

Scheduling Parameter

Read

Organization

Teams Dialer Admin settings

Read

Organization

Template Tag (Deprecated)

Read

Organization

Tour

Read

Organization

App Profile

Read

Organization

App Extension

Read

Organization

Work Stream

Read

Organization

Session Template

Read

Organization

Application App Template

Read

Organization

Productivity pane configuration

Read

Organization

Pane tab configuration

Read

Organization

Pane tool configuration

Read

Organization

Suggestion Setting

Read

Organization

Macro Connector

Read

Organization

Macro Action Template

Read

Organization

Macro Solution Configuration

Read

Organization

Smartassist configuration

Read

Organization

Adaptive Card Configuration

Read

Organization



Installation

Required information

Dynamics Hostname

Hostname of your Microsoft Dynamics Instance

Dynamics Service Account Username

The username for the dedicated Tenfold service account (i.e. API User)

Dynamics Service Account Password

The password for the dedicated Tenfold service account (i.e. API User)

Installation procedure

Establishing the initial connection from Tenfold to Microsoft Dynamics takes only a few minutes.

  1. Navigate to your Tenfold dashboard at https://dashboard.tenfold.com.

  2. Click Company Settings in the top navigation.

  3. In the sub-navigation, click CRM.

  4. Select Microsoft Dynamics as your CRM.

  5. Select the authentication method: OAuth or Credentials.

    To use credentials, input the following information into the form:

    • Hostname

    • Service Account Username

    • Service Account Password

    To use OAuth, input the following information into the form:

    • Hostname

    • Under Change Advanced Options

      • OAuth Client ID

      • OAuth Client Secret

      • OAuth Tenant ID

  6. Click Save.

    If the information provided is correct, Tenfold tests the connection and presents a success message.

Embedding within Channel Integration Framework

  1. Install Channel Integration Framework from the Microsoft Appsource store.

  2. Ensure non-admins have read access to the msdyn_ciprovider entity.

  3. Open the Apps menu within the Dynamics instance, it can be opened by clicking on the drop down arrow in the top left corner of the screen.

  4. Select Channel Integration Framework

  5. Select +New.

  6. Apply the following within in the Channel Provider Configuration

    • Name: Tenfold Embedded UI

    • Label: Embedded UI

    • Channel URL: https://app.tenfold.com/dynamics.html?base=<your_dynamics_instance_URL>

      Example: https://app.tenfold.com/dynamics.html?base=https://mydynamics.dynamics.com

    • Enable Outbound Communication: Yes

    • Channel order: 0

    • API Version: 1.0

    • Trusted Domain: ""

    • Custom Parameters: width=283 rich_context=true

      NOTE: The Dynamics instance URL can be sourced from the Tenfold CRM configuration page h ere. The Custom Parameters section can have any desired width, however, smaller width parameters may skew different image assets or truncate parts of the Tenfold UI.

  7. Select which Unified Interface App the Embedded UI is to be added to.

  8. Select the Roles that are going to use/see the Tenfold Embedded UI.

  9. Click Save & Close on the bottom right corner.

  10. Lastly, if using Google Chrome, each user's browser will need to have the "SameSite by default cookies" setting disabled otherwise dependencies of the CIF framework may not load.

    1. In the Google Chrome browser navigate to chrome://flags via the address bar.

    2. Search for "SameSite by default cookies."

    3. Disable the "SameSite by default cookies" setting.

      The browser relaunches automatically.

Permissions Troubleshooting

The following steps will help you find any missing privileges.

  1. Open up the Developer Tools of the browser and inspect the element (Ctrl + Shift + C in Chrome) to see the backend privilege name.

    Missing_permissions.png
  2. In most cases, requests with a status of 403 may mean that you need to configure additional permissions. To verify exactly which permission is required click on the request with status 403 and then the details of the particular request should be displayed.

    error.png
  3. Then move to the right and look for the missing permission. Each missing permission is described according to the following scheme: prvActionPrivilegeName, where Action is what privilege is missing, e.g. Read/Write/Create, etc. For example, as you can see in the screenshot below, the prvReadmsdyn_panetabconfiguration privilege is missing so we must set Read permission to the msdyn_panetabconfiguration field.

    example.png
  4. If you go further to the right, you will find the "LocalizedName" field, which indicates the name of the field for which we need to set the permission in our settings.

    field_name.png