Enable integration with Microsoft Dynamics CRM
Summarize
Summary of Enable integration with Microsoft Dynamics CRM
Integrating ServiceNow with Microsoft Dynamics CRM via the Microsoft Dynamics CRM spoke allows seamless data exchange and process synchronization between the two platforms. This integration supports tracking renewals, assessing risks, and creating renewal opportunities during the engagement lifecycle, enhancing customer success management workflows.
Show less
Key Features
- Create renewal opportunities in Microsoft Dynamics CRM directly from renewal playbooks in ServiceNow.
- Automatically generate tasks in Microsoft Dynamics CRM from risk records when renewal dates are missing.
- Update ServiceNow records in real-time when changes occur in Microsoft Dynamics CRM task tables.
- Support for multi-currency handling with mappings between ServiceNow currencies and Microsoft Dynamics CRM currencies configured via script includes.
- Use of predefined script includes like
DynamicsCRMMappingConstantsandAleCRMUtilOOBto manage GUID mappings and perform CRM actions programmatically. - Optional UI actions to create CRM tasks from the ServiceNow interface.
Setup and Configuration
- Prerequisite: Configure the Recommended Actions application before enabling the integration.
- Set up the Microsoft Dynamics CRM spoke in ServiceNow for connectivity.
- In Microsoft Dynamics CRM, create accounts with names matching those associated with internal play tasks or risk records in ServiceNow.
- Define currencies in Microsoft Dynamics CRM corresponding to ServiceNow’s Customer contracts table, ensuring currency symbols are included in the
TechOnbConstantsscript. - Configure mappings between ServiceNow Sys IDs and Microsoft Dynamics CRM GUIDs using the
DynamicsCRMMappingConstantsscript include. - Customize the
getRiskSysIdFromCRMRequest()function in theDynamicsCRMTaskUpdateHandlerUtilOOBscript include to handle task updates from Microsoft Dynamics CRM. - Create subflows and decision policies to process task update events and webhook calls for dynamic integration handling.
Practical Usage Examples
ServiceNow customers can programmatically create opportunities and tasks in Microsoft Dynamics CRM using the AleCRMUtilOOB script. Sample code calls the executeAction method specifying the CRM platform, action type, and relevant record data, enabling automation within workflows.
Key Outcomes
- Streamlined renewal opportunity and task creation processes between ServiceNow and Microsoft Dynamics CRM.
- Improved risk management by automatically generating tasks for missing renewal dates linked to risk records.
- Real-time synchronization of task updates ensures data consistency across platforms.
- Enhanced control and customization through script includes and subflows tailored to customer-specific business logic.
Integrating your ServiceNow instance with the Microsoft Dynamics CRM platform enables seamless data exchange and process synchronization between the two platforms. This integration is done through the Microsoft Dynamics CRM spoke.
By enabling integration of the Microsoft Dynamics CRM platform during the engagement lifecycle you can track renewals, assess risks, and create renewal opportunities. The Microsoft Dynamics CRM integration is available with the Customer Success Management application and can be configured to work with other CRM platforms.
- Creating opportunity for renewals from renewal playbooks.
- Creating task from risk record when renewal date is missing in the account.
- Updating the ServiceNow records when any change is made to the CRM task table.
- Set up the Microsoft Dynamics CRM spoke. See Microsoft Dynamics CRM Spoke for details.
- On the Microsoft Dynamics CRM platform, you must do the following:
- Create an account with the same name as the account associated with your internal play task.
Before creating an opportunity from an internal play task, make a note of the account associated with the task.
Before creating a task from the risk signal, make a note of the account associated with Risk and Issue record as shown below.
In the Microsoft Dynamics CRM platform, you must create an account with the same account name (Genixify) associated with your internal play task as shown in the above examples. This account must be configured later in the mapping file.
- Create currencies that correspond to the currencies in the Customer contracts table. While creating currencies, you must add the name of the currency with the symbol in the
TechOnbConstantsscript include as follows:TechOnbConstants.MS_DYNAMICS_CRM_CURRENCY = { '£': 'CURRENCY_GBP', '$': 'CURRENCY_USD', '€': 'CURRENCY_EUR', '¥': 'CURRENCY_JPY', 'CHF': 'CURRENCY_CHF' };
Note:Sample mappings are shown in the following image.Use the DynamicsCRMMappingConstants script include to define mappings between ServiceNow Sys IDs and their corresponding GUIDs in Microsoft Dynamics CRM. - Create an account with the same name as the account associated with your internal play task.
- Update the
getRiskSysIdFromCRMRequest()function in theDynamicsCRMTaskUpdateHandlerUtilOOBscript include to handle the task updates from Microsoft Dynamics CRM by processing the input parameters and updating the associated risk signal record.The Process Task Update Event demo action can be further configured and added as part of a subflow. Create the subflow and add it to the decision table (Dynamics CRM Webhook Decision Policy) of Microsoft Dynamics CRM Spoke.
- (Optional) You can optionally configure an UI action to create a CRM task in your ServiceNow instance.
- Use the
AleCRMUtilOOBscript include to interact with CRM platforms like Microsoft Dynamics CRM.Use The
executeActionfunction perform actions like creating opportunities or tasks on the CRM platform.executeAction(CRMPlatformName, action, recordData) where - CRMPlatformName is the name of the CRM platform on actions are to be performed. - action is the action to be performed - recordData is the SysID of the risk signal record that is updated when the action is performed.
- Creating an Opportunity in Microsoft Dynamics CRM:
var aleCRMUtil = new AleCRMUtil(); var CRMPlatformName = 'MS_DYNAMICS'; var action = 'OpportunityCreationWithSpoke'; var recordData = { internalPlayTaskSysId: '02de3efaeb3d5a10ddd6f94fbad0cd16' }; var response = aleCRMUtil.executeAction(CRMPlatformName, action, recordData); gs.info('Opportunity Creation Response: ' + JSON.stringify(response)); - Creating a Task in Microsoft Dynamics CRM
var aleCRMUtil = new AleCRMUtil(); var CRMPlatformName = 'MS_DYNAMICS'; var action = 'TaskCreationWithSpoke'; var recordData = { riskSignalIssuesSysId: 'b07062b53ba29a10be57327aa5e45a0c' }; var response = aleCRMUtil.executeAction(CRMPlatformName, action, recordData); gs.info('Task Creation Response: ' + JSON.stringify(response));