Drupal and Microsoft Dynamics CRM Integration: Our Journey So Far

Josh Brittenham
- 2 min read

Are coding and Drupal integrations the stuff of dreams? It’s not as simple as downloading a module off of the internet. When it comes to complex integrations like Microsoft Dynamics, there is much more than meets the digital eye. At WDG, we begin by diving deep into our technical discovery phase in order to flesh out how each integration will work – this enables us to create solutions that are tailored for optimal performance. Join us on an exclusive journey down under-the-hood insights about one of today’s most popular CMS platforms!


When tackling a big project like system integration, you want to make sure each step of the process is handled with care. We took this approach when beginning our Dynamics implementation – first we identified if there were any existing contrib modules or php libraries that could help out. Curiously enough, it seemed as though only webform submissions were possible through an available Drupal community module but thankfully further resources weren’t far behind! After a review of potential php libraries yielded some promising results, we decided on the Alexacrm/dynamics-webapi-toolkit library which provided us with clean code and ultimately let us continue experimenting in order to get data from Dynamics into our prototype module successfully.


With the Dynamics CRM, we hit permission barriers head on, and had to address the need to read entities with our API connection with our client. Come to find out, permissions in Dynamics are pretty granular and allow entities to be safely guarded down to the user level—which is great for security but difficult for someone doing research. In our preliminary phase of development, we work to ensure we can deliver our client a successful working implementation and in depth discovery is very much a part of that.

Lay of the Land

Microsoft Dynamics can be customized and tailored to suit the needs of any business model (kind of like how Drupal does), but that makes data acquisition a bit more challenging.  

Some clients will know exactly how their systems are developed and maintained while others have other things to do.  No matter what you do or don’t know about your systems we’re here to review and advise on the best possible outcomes.  In closing for now, a connection to Microsoft Dynamics can be described as initializing of OnlineSettings which is then used to initial an OnlineAuthMiddleware, which can then allow you to initialize an OData Client. And if you want to take it one step further you can use the OData Client to get a WebAPI Client, though to get lists you need to use the OData Client. 

Happy coding!

Looking to give your website a competitive edge? Let us help! Our integrations can provide the solution you need for any challenge that comes your way. Contact us today and get on track towards success.

Related Insights

Start a Project

Want to Skip Right
to the Good Stuff?

Contact Us