Considerations for designing a single Microsoft Dynamics CRM organization to multiple Microsoft Dynamics ERP Companies integration

The latest release of Connector for Microsoft Dynamics supports integrating multiple Microsoft Dynamics ERP companies into a single Microsoft Dynamics CRM organization. Connector supports these scenarios if an instance of a Microsoft Dynamics CRM entity can tell Connector which company in the Microsoft Dynamics ERP it needs to be sent to. When this occurs, Connector honors that attribute and sends the entity to the appropriate Microsoft Dynamics ERP Company.

There are a number of mechanisms that you can use to customize Microsoft Dynamics CRM to provide this information. Then, you can use a filter in each map to specify which records integrate back to the Microsoft Dynamics ERP for the appropriate Microsoft Dynamics ERP company. And then records are sent into Microsoft Dynamics CRM, this property can be defined in the map as a constant value, since each pairing of a Microsoft Dynamics ERP Company and a Microsoft Dynamics CRM organization has its own unique set of maps. This posting IS NOT intended to be your guide for these types of deployments and integration scenarios, but we are trying to provide some insight into the upfront design considerations.

We are very specific about the scenarios that are be supported, however, because this functionality IS NOT how Microsoft Dynamics CRM naturally defines the data boundaries within the system today and serious data integrity / security concerns could arise, depending on the implementer’s specific scenarios. This means that the Microsoft Dynamics CRM administrator needs to be diligent in how this enterprise data is exposed to the users inside of Microsoft Dynamics CRM if there are security concerns.

Also, note that current Microsoft Dynamics CRM customizations are at the Organization level – meaning that if your Microsoft Dynamics ERP companies have different customizations in them, or they have different values for what corresponds to Microsoft Dynamics CRM Option Set Values (Picklists), you need to develop a way for your user to select the appropriate entry in Microsoft Dynamics CRM. For example, if Company A has "Federal Express" as a shipping method, and Company B has "FedEx" as a shipping method, then you need to customize all of the shipping method option sets in Microsoft Dynamics CRM to contain options similar to the following: "Federal Express –Company A"; "FedEx – Company B." The Microsoft Dynamics CRM user needs to know which company they want this data integrated to when they select the option set value. This is true for all option sets in Microsoft Dynamics CRM, so imagine what it will be like to manage Payment terms across all Microsoft Dynamics ERP companies in a single Microsoft Dynamics CRM organization – unless they are all the same across all of your companies. If all of your option set values are the same across all of your Microsoft Dynamics ERP companies, then you can reduce this overhead by several factors.

The implementer also needs to develop a way for salespeople in Microsoft Dynamics CRM to select which Microsoft Dynamics ERP company to send updates for accounts and contacts to. The implementer also needs to enforce this solution on any transactional data that is moving in both directions between each system, for example, sales orders. You could accomplish this with a drop down list or with Microsoft Dynamics CRM workflows / plugins that execute prior to integration. Or, you could use the Business Unit entity in Microsoft Dynamics CRM and filter on the well-known GUIDs for those entities within your deployment. Other issues might arise with entities in the Microsoft Dynamics CRM product catalog, asthey are mainly held at the organization level as well, and the various Microsoft Dynamics ERP companies might have different inventory, units of measure, and price lists. Many of these issues do go away if you are simply looking to integrate accounts / contacts and aren't interested in moving transaction data.

At a high level, there are two scenarios:

  1. One-way integration of multiple Microsoft Dynamics ERP companies
    to single Microsoft Dynamics CRM, ERP -> CRM
    1. Only reads data from the Microsoft Dynamics ERP into Microsoft
      Dynamics CRM. This scenario creates an integration from each Microsoft Dynamics
      ERP company to a single Microsoft Dynamics CRM organization. This is supported
      by all versions of Connector for Microsoft Dynamics.
  2. Two-way integration of multiple Microsoft
    Dynamics ERP companies to a single Microsoft Dynamics CRM organization with
    updates flowing back and forth, ERP <-> CRM
    1. This is NOT the default installation of the Connector, but it will
      be supported in the most common scenarios that we have identified. However, it
      will be up to the implementer to follow best practices to ensure success, as
      there are a great number of caveats to doing this type of integration.
    2. Customizations to Microsoft Dynamics CRM will be supported,
      depending on the scenario and the steps that the implementer has taken to
      ensure that users of Microsoft Dynamics CRM select the proper companies in the
      Microsoft Dynamics ERP to send the data to.
Comments (7)

  1. Bit late to comment on the article but I haven't been able to find any other information about this. I understand how to use the filters, but I was wondering if it's possible to synchronize for example one account in CRM to multiple ERP's? From what is described here, the idea seems to be that one account should only be synchronized to exactly one ERP. But what if we want to synchronize it to more ERP's, would that be possible (using of course the same integration key in CRM and all ERP's for that account)? I think setting up the filters to allow this isn't a problem, but I don't know if the connector would manage this correctly.

  2. thehetz says:

    @Draykin – you certainly could do this, simply by chaning the filters or eliminating them all together, however you'd need to advise users that changes in one ERP will be effecting the entire integrated system now.  For example, if you set up an integration like this an change a Customer record in ERP A, sync it to CRM, and then pull changes from CRM into ERP B – ERP B will now reflect the same data as ERP A.  Maybe this is what you want and maybe it isn't.  Connector would not have any way of knowing how you want this data flow managed so it would be up to the business requirements to determine how best to proceed with something like this.

  3. @thehetz Actually that sounds like what I would want the system to do. I just wasn't sure if, in the scenario you described, the system would manage the updates correctly and not get stuck in an infitine loop of updates from ERP to CRM and the other way around.

  4. Sahar Omar says:

    Is it possible to integrate one CRM to 2 NAV installations.

  5. thehetz says:

    @Sahar – it would certainly be possible if there are different URLs for the NAV web services for each installation.

  6. Sanish P says:

    What is the limit of maximum number of companies of AX ERP that we can integrate with single instance in CRM?

    1. thehetz says:

      @Sanish – there is no hard and fast limit. And there is no limit enforced within Connector for Microsoft Dynamics, however a good rule of thumb is not have more than 5 companies / organizations integrating with each other in a single instance of Connector. If you need more than this, you install another instance of Connector on another server and integrate more.

Skip to main content