all Technical posts

3 Microsoft Integration Platforms for Dynamics 365

Learn about the pros and cons of three Microsoft integration platforms used for Dynamics 365 integration.

If you’re getting started with integrating Dynamics 365 with the rest of your IT ecosystem, you’ll certainly need to make an informed decision about which of the Microsoft integration platforms is suitable for your business IT needs. There are three Microsoft integration platforms that you can look at and I’ll run through the pros and cons of each below.  We have also written an in-depth white paper about integrating Dynamics 365 which you can download here: “Dynamics 365 Integration – Unlocking the Value of Dynamics 365 Through Integration.”

BizTalk Server 

BizTalk Server can easily consume any of the Dynamics 365 endpoints, whether it is REST or SOAP. It can also support any integration patterns, like Providing Data, Retrieving Data, and Receiving Data. It should be noted, that to implement the “Receiving Data” pattern, custom code needs to be developed in Dynamics 365 to send the data directly to BizTalk Server. 

There are some technical challenges here, as Dynamics 365 endpoints are authenticated using OAuth 2.0, which is not supported by BizTalk Server out-of-the-box. However, because of the extensibility options that BizTalk Server offers, it is possible to use a custom WCF Behavior to add this functionality. 

BizTalk Server is currently available as both an on-premise platform or as an Azure Infrastructure as a Service (IaaS) platform. 

Azure Service Bus and Logic Apps

Dynamics 365 offers support for integration using Azure Service Bus and Logic Apps. These connectors cover some of the typical integration patterns of Dynamics 365: Providing data, retrieving data, and receiving data. It is important to note that, as opposed to BizTalk Server, no custom coding is needed to perform the required authentication with Dynamics 365. 

Service Bus provides decoupling through reliable message queueing and durable publish-subscribe messaging and contains queues, topics, and relays. Describing these components in short: 

  • Queues are used to store messages and are received by a single recipient.
  • Topics, like queues, are used to store messages but can have multiple recipients through different subscriptions. Also, optionally only messages that match certain criteria can be received through a filter on the subscription.
  • A relay provides two-way communication, messages are not stored but simply passed through to the destinationservice.

Azure Logic Apps provide a way to implement integrations, automate workflows and communicate with services and applications through its many available connectors. 

To implement a “Receiving Data” pattern, Dynamics 365 can directly write to queues or topics in Azure Service Bus. To enable this, a custom plug-in must be developed. Another option to implement this integration pattern is by using Logic Apps. Logic Apps provide a set of connectors to Dynamics 365, with these connectors you can: 

  • Create a new record
  • Delete a record
  • Get a record
  • List records
  • Update a record
  • Get a notification when a record is created
  • Get a notification when a record is created or updated
  • Get a notification when a record is deleted
  • Get a notification when a record is updated

There are also Logic App connectors for the Common Data Service, which are only relevant when Dynamics 365 Data Integration is used. With these connectors you can: 

  • Create a new record
  • Delete a record
  • Get a record
  • List records
  • Update a record
  • Generate a key value
  • Get a notification when a record is created
  • Get a notification when a record is updated

For a complete list of connectors and their description see https://docs.microsoft.com/en-us/connectors/crm/ and https://docs.microsoft.com/en-us/connectors/runtimeservice/. 

The “Get a notification” and “When a record is created/updated” connectors are polling based, meaning that you must supply an interval on how often you want to check for the specific event. Keep in mind that every time the Logic App is triggered Azure consumption costs are incurred, so setting the interval to 1 second will cost considerably more than setting it to 1 minute. For the current Logic App pricing details, see https://azure.microsoft.com/en-us/pricing/details/logic-apps/.  

Microsoft Flow with Dynamics 365

It’s now possible to integrate using Microsoft Flow. Flow is built on top of Logic Apps and they share the same workflow designer and connectors. Where Logic Apps are used for advanced integration scenarios by integration specialists, Microsoft Flow can be used by business users to automate simple workflows. However, Logic Apps has a richer ALM experience, offers greater control for administrators and more security capabilities.  With Microsoft Flow, you can implement all of the integration patterns. 

You should now have a better understanding about the main three Microsoft Integration Platforms and their pros and cons.

If you would like to learn more about integrating with Microsoft Dynamics 365, download our in-depth white paper “Dynamics 365 Integration – Unlocking the Value of Dynamics 365 Through Integration.”

 

 

Subscribe to our RSS feed