By Henning Lund - May 15, 2020
With today’s technologies, setting up CRM-ERP data integration projects is a seamless experience, one that can be done without changing a single line of code in your programs. No need to fear that your company will lack bandwidth to implement the integration thoroughly. For example, in most cases, when we implement a Salesforce – Microsoft Dynamics integration for our clients, the entire work is usually done within 3-8 man days in total depending on the scope, so it’s much easier to implement than most people think.
In fact, the trickiest part is probably to decide what you should integrate! Therefore, I have collected a list of the most common ERP-CRM integrations.
Often, what drives the initial need for a CRM-ERP integration is the need to optimize the CRM Quote -> ERP Sales order process. To process an order, you need first the customer data transferred because the order is linked to a customer. The logical workflow is to integrate customers from CRM to ERP because a customer account will typically origin from a lead in CRM. But it’s not always the case, and often the customer integration is bi-directional so both the sales and the finance organization can maintain the customer information. This eliminates conflicts between sales and finance about whose task it is to create the entry manually in the other system.
It’s actually funny that contacts are often on the list, because in most of the ERP-systems a main finance contact is the only thing needed. Of course there can be many other good reasons to integrate contact data, but in most cases, the contacts integration is limited. A decision parameter for this is also, that contact data is typically the piece of master data that is most difficult to maintain because people switch position, employer, or even name. And a good principle is that you should not transfer data you do not trust.
If you work with products and you want to create quotes from your CRM system, then you need to make the product information available there. And if you want to support a Quote to Sales Order process, then the data also has to be consistently maintained in both systems.
“Product and Item” is good example of how different naming in different systems can create doubts about whether you are mapping the correct fields. Very often, the data labels have different names, so it requires insight into both systems in order to perform a good mapping. Personally, I maintain the lists and have made them a standard tool so I can quickly start the integration Items-products. It is usually fairly easy to integrate Products and Items, and the integration can be bi-directional or one way, depending on your business process for creating new items. Just a side note: Generally, you are better off if you can avoid creating redundant data between systems manually. It’s much easier to create new records (for example items) via the integration, because this way the link between the two records is created from the beginning, and no additional work is needed to establish that.
CRM and ERP systems have different pricing and discounting models and at a first glance it does not seem so easy to integrate. It is however doable and once you have a method you can replicate and reuse it for future integrations. For example, I’ve been doing a lot of Salesforce – Microsoft Dynamics integrations where the Dynamics pricing and discount models have been converted into price books, in many cases also including the currency dimension.
In the past, the main thing that prevented me from creating quotes directly in CRM was the lack of items and pricing information, and lack of understanding that (in most cases) it is quite easy to create these transfers - the value it brings is tremendous.
When I started working with CRM systems back in the late 90’s my “Nirvana” was to automate the Quote to Order integration. The workaround was to create a Quote in the ERP system and manually enter the totals in the CRM system. And when it became an order, I just converted the quote to a sales order in the ERP system, and then updated the opportunity stage in the CRM system to closed won. I’ve seen that this is also the working model for many companies. It’s a workaround that is fairly simple and flexible.
The downside is that you don’t have the details in the CRM system and therefore the sales person has to operate multiple systems throughout the day to collect the information needed to perform the sales process and that is not optimal. Another downside is that you cannot do combined statistics of for example sales of specific products related to specific activities. The solution for that has been to build a data warehouse as a separate system and load data from the CRM and the ERP system into it. I’m not going to claim that data integration can completely eliminate the need for data warehouses, but to a large extend you will be able to make all the required reports directly from the CRM system, with updated data, and at lower costs.
What is most appreciated is that fact that eventually the effect of a robust integration is, that the sales organization is working entirely in the CRM system, and they will never need to enter the ERP system. It transforms the perception of a CRM system from being a supporting tool to being the sales operating system. This results in efficiency gains and you don't have to buy the sales user license for both systems.
For more complex or managed sales processes it’s common to have an add-on solution. This could for instance be a product configurator or a guided selling tool. They exist both for ERP and CRM systems, however my advice is to keep a strict process around this so you only perform product configuration in one system because it will be very difficult to replicate the exact systems behavior and algorithms.
You can have a product configurator in the ERP system and a simplified guided selling system in the CRM system, in Salesforce, for example Salesforce PDQ. In these cases, there are two alternatives in regards to integrating to the ERP Sales order. Either the additional CRM sales app updates a standard quote on an opportunity, or the integration can be switched from the quote module to the other module. Both work equally fine and the best fit will be determined on what suits your business process and reporting requirements the best.
This part is often forgotten in the scoping documents, but it makes perfect sense to include it. Once the quote is transferred from the CRM to a sales order in ERP, the sales order should be synced back to the CRM system in order to maintain a full picture on the account/opportunity.
Another element in the integration can be to keep synchronizing the order when there are changes to it. For example, it can be the customer changing the order, it can be part delivery or part invoicing, or replacement of one product with another. These changes should of course be synced. You should be aware of the fact that some of Microsoft’s embedded standard integrations (e.g. between Microsoft Dynamics CRM and NAV) do not support this and are therefore of limited value.
The synchronization can be one direction- or bi-directional, depending on your business processes.
Sales history is always on the list of integrations in scope, because it is valuable information. In CRM systems like Salesforce that has supporting Artificial Intelligence, sales history is a valuable asset for getting correct predictive actions. Generally, for any customer interaction, marketing etc. sales history is must have information.
Sales history is captured by transferring booked invoices from the ERP system to the CRM system. To get the full picture you will in most cases also need to include credit memos.
In ERP systems, an Invoice contains an invoice header and invoice lines, so when you transfer an invoice between the systems, you are actually transferring multiple tables. I recommend transferring the full details because the effort is basically the same.
To get the most out of your sales history you can link the information to the related tables in CRM. Of course the customer is linked to the account, but also, the items on the item line should be linked to the items table to enable better reporting and drill down facilities in CRM.
In CRM, you can create additional roll up summary fields based on the sales history records so you don’t have to pull a report so see summarized information such as Total Sales FY. You can create as many as you like and have your sales history dashboard at your fingertip.
To complete the quote to cash process I can recommend to transfer payments (via ledger entries) as well. It gives some additional information that is often hard to get in regards to payment patterns, overdue amounts etc. directly on an opportunity or an Account in the CRM system. Besides being valuable information to the sales organization it can also help your cash collection and be a negotiation parameter for new deals with the customer.
Payments can be linked to the exact invoice/Opportunity/account etc. in CRM, which activates the use of payment information and source statistic reports.
There are many other possible integrations, especially for service and case management (Service Cloud), however these are very much similar to those mentioned above and they are following the same logic.
There are many different aspects of data integration and I think that making something that in reality is quite complex really simple for the users to setup and maintain is the big driver for migrating rigid custom integration on to affordable, robust, flexible and ready to use data integration platforms like RapidiOnline.
On a side note, with RapidiOnline you get all of the integrations from 1-7 as out-of-the-box standard, customizable integrations with an implementation effort of typically 4-8 man days depending of scope and need for additional transfers or customizations. Feel free to get in touch if you want to know more.