5 best kept secrets of Salesforce-MS Dynamics integration
By Henning Lund - February 13, 2020
When you want to integrate Salesforce with Microsoft Dynamics ERP (whether it is AX, GP, NAV, 365 Business Central or 365 for Finance and Operations), you want to work with the experts. The keys to the success of your project lie in the details and the full understanding of the systems you integrate.
When you have done your homework and have gotten your organization ready for your data integration project, you will need to find the right solution and, just as importantly, the right partner. Working with a general data integration expert will take you a long way, but to give you a fast, easy-to-use, reliable and robust Salesforce Dynamics ERP integration solution, you need a solution built by people who understand Salesforce and Microsoft Dynamics extensively.
1- Handling timestamps
The biggest challenge when you want to make a data integration with Microsoft Dynamics 365 for Finance and Operations is the system does not support timestamps.
What are timestamps? A timestamp is a sequence of characters or encoded information identifying when a certain event occurred, usually giving date and time of day, sometimes accurate to a small fraction of a second. It i s a time registered to a file, log, or notification that records when data is added, removed, modified, or transmitted.
Since Microsoft Dynamics AX does not support timestamps, it makes it troublesome to identify new and modified data. If you don't want to transfer an entire table every time you want data synchronized, then you need a way to detect, which data is modified or added. There can be several ways to do this.
You can develop triggers in the code that update a timestamp field on the record. This requires a developer to create a timestamp field on each table or a similar functionality that gets updated every time a record is modified. This can be done, though not easily. A record can be modified via man different actions (manual update, import without executing any code, or a functionality from elsewhere in the system) which you need to detect in order to maintain the consistency of the timestamp. It can be very difficult to be sure that the code captures all possible changes and upcoming changes can be more than challenging. If you should choose such a way to deal with it, you need to make sure that you take all the tables into consideration - also related tables and it means that both the programming, testing and maintenance can be massive and the integration will inevitably become fragile and expensive to maintain because it adds another layer of complexity to a system that is already complex by nature.
You can create comparison tables in Microsoft Dynamics AX or 365 for Finance & Operations, where your programmer can compare new and old values and this way detect which records are being modified. This is in many ways a more solid way to detect changes. However, it requires significant work to custom-build this logic and maintain it. If you are only looking at integrating one table it may not be a big deal but if you have 30 tables or more, it can quickly become a massive project. Most Microsoft Dynamics AX or 365 Finance and Operations implementations perform a lot of transactions thus there are many records in the systems. Therefore, this kind of method can create a big overhead in reading/writing data that can negatively impact the performance of the system which is not easily overcome - and not cheap.
At Rapidi, we have developed the Rapidi Mirror Technology, which is a highly optimized variant of the above method. The mirror is a separate binary SQL database (MS SQL, MySQL or similar) designed to solve the timestamp issue without having the constraints in the above methods. It is completely programming free which means that you don't have to write a single line of code. It requires almost no effort to setup because it's all automated regardless of any customizations or add-ons in Microsoft Dynamics AX/365 for Finance and Operations. Regardless how a record is modified it is detected as a change and can be used by the integration platform RapidiOnline to identify the specific records that are changed. In other integration scenarios you need to create fields on the records to contain the link to the other system/other systems. The RapidiOnline solution has a LinkStorage feature where this link is built and maintained in the integration platform. This way you can have an integration without having to manually create any code or fields and your upgrade path is unaffected. The Rapidi mirror works not only with Microsoft Dynamics 365 Finance and Operations and Microsoft Dynamics AX. It can also be used to solve similar problems that can appear in custom developed systems e.g. on SQL. The RapidiMirror is generic and can work with other systems as well (Microsoft Dynamics GP has the same challenge) and it works with both on premise and cloud applications.
2- Helping you transfer just the data you need
When it comes to choosing which data to transfer, working with Salesforce and MS Dynamics ERP is once again a clear advantage because they will know exactly what CRM data you will need in your ERP and vice versa. For example, at Rapidi, we have studied Salesforce-Microsoft Dynamics integrations for years and we have developed pre-configured templates that will easily let you integrate the most relevant data:
Item price-product price
Sales order-sales order
These pre-configured templates are pretty much ready to use and support the quote to order process that most companies are looking for when integrating their ERP and CRM systems. However, should you need other transfers, they can easily be set up based on our extensive knowledge of both products.
3- Doing more than just data transfer
Transferring data from Salesforce to Microsoft Dynamics (and vice-versa) is one thing. Making sure that the data is displayed at the right place and in a meaningful format in the other system is another thing. When you have performed hundreds of data integration projects, you have a pretty good idea of where in Salesforce people will have use for Microsoft Dynamics ERP information. For example, at Rapidi, we have developed a Lightning Component that adds complementary functionality to Salesforce and was developed based on learnings from what works best on the ERP side. It incorporates the ERP thinking into the sales environment as salespeople can drill down for details on open orders or sales history. They can lookup accurate pricing and get a fast overview of the main sales KPIs from within Salesforce. The Lightning component displays ERP data such as Sales History, Sales Orders, Payments, etc. from Microsoft Dynamics ERP in Salesforce and makes it available for advanced reporting. When you have this ERP information in Salesforce, you can use it to:
provide better and more accurate customer service
build reports that combine pipeline and sales history for better forecasting
perform all sales-related work without having to switch systems
This type of advanced integration functionality (there can be others, depending on your organizations specificities and needs) gives you the full value of your Salesforce-Microsoft Dynamics ERP integration.
The financial information is calculated in Roll Up Summary Fields based on the transactional information transferred from Microsoft Dynamics NAV. These are calculated fields so you can create new fields or modify existing ones to match your needs.
4- Keeping the integration robust & secure
In today’s cyber-world, maintaining the integrity of your data while it’s being integrated is paramount. Your data is of upmost value to you and your organization and you must protect your systems from ever being exposed to the outside world so hackers cannot gain access. Every organization that starts looking into a data integration project wishes to have a robust and secure system. But what does it mean and how do you make sure you get what you need?
At Rapidi, we have developed our data integration service to run via the RapidiConnector, a unique technology that we have developed to ensures that data communication between RapidiOnline and your on-site systems is not compromised. The RapidiConnector resides in your network and automatically compresses and SSL encrypts data before transferring, making it practically impossible to decipher. If you require an extra level of security, we can use your own SSL certificate.
An added advantage of housing the RapidiConnector on your network is you don’t need to open any in-bound ports on your firewall to be able to deploy RapidiOnline integration. This means your internal systems stay secured and protected. Another bonus: it’s also very easy to get to your data integration process started.
5- Ensuring fast data transfers
Organizations typically manage many disparate data sources, with volumes significantly growing year over year. Transferring and connecting data sources has therefore become a priority many places, however not necessarily an easy one to solve. Having one reliable source of data for an organization is vital as employees need data that they can trust in order to do their job efficiently. That is why organizations often want to make sure that their data is transferred fast – if not real-time then close. More and more turn to data virtualization as an option. However, data virtualization is just another way of handling transfer of data and will not give you as such the same immediate benefits as a ready-to-use full blown data integration solution. At Rapidi, we have developed our data integration solution, RapidiOnline to maximize the rate of your data transfer via the APIs to secure the data consistency and deep integrations.
Communication between the RapidiOnline system and the RapidiConnector (the tool used to compress, encrypt, and transfer data between RapidiOnline and your onsite systems) is ultra-fast. The RapidiConnector is a master at stripping data of unnecessary meta information and compressing it to ensure the most efficient data transfer. This method can reduce the amount of data sent by a factor of up to 50. For example, instead of sending 1000 bytes for each customer record, the RapidiConnector only needs to send 20 bytes. This dramatically reduces both the transfer time and bandwidth needed.
When looking for a provider of Salesforce-Microsoft Dynamics ERP integration, remember that working with solutions experts will not only allow you to get the integration implemented fast and easily. They will also make sure that you go the extra mile and that you make the biggest difference possible for your organization.
Follow us on LinkedIn to learn more about Rapidi and RapidiOnline, or download this e-book for additional information about the RapidiOnline data integration solutions.
About the author
With over 25 years’ experience in strategically propelling businesses forward, Henning is considered a business development entrepreneur with a passion for transforming businesses, sales and marketing operations through out-of-the-box thinking, concepts building and process automation to improve overall performance and scalability.