Integrating Dynamics 365 & MailChimp with Zapier.
I’ve been working for a customer to integrate MailChimp, Calendly and LeadPages with Dynamics 365 using Zapier.
The first thing I can say regarding Zapier is that they have a really nice a quick customer support. I had some difficulties implementing my integrations and their replies where fast and mostly useful. Sadly the second thing I need to say is that their Dynamics 365 integration isn’t quite there yet. In the following article I’ll cover the leasons I learned while integrating Dynamics 365 CRM and MailChimp with Zapier.
Issues and Challenges using the Dynamics CRM integration
1) Lookups on custom fields don’t work well
When creating a contact in CRM from Zapier and trying to set a Lookup field, I get the following error:
People used to working with Odata querries will recognize a common error when trying to work with custom fields (new_contactcustom should be written new_ContactCustom). I have reported this issue to Zapier support but so far no fix has been implemented on their side.
Sadly I did not find a clean one. I ended up using an unused field “Address 3: Fax” and placing a string in that field. Depending on the value of said string, a workflow runs and updates the lookup field. If you do find one please leave a message in the comments or Email me!
2) We had trouble sending your test through.
“Cannot read property ‘Label’ of undefined. This is likely a problem with the app. Please contact support at firstname.lastname@example.org”.
After multiple tests and some hair going grey, I figured out that this is due to an API timeout between Zapier and Dynamics CRM. This was happening while we where using the trial version. In order to validate the Zap, you may press multiple times the “Send Test Data” button until the error disappears.
Once you are paying for the service, you will have access to the “Auto Replay” feature. This will keep retrying the Zap until everything ends up working (and it does).
3) Be careful with task consumption on updates
Picture this scenario: “You create contacts but you don’t always know their email immediately. When the email is added, the contact should be created in MailChimp.”
Simply creating a ZAP which, after an update on a Dyamics CRM contact, Adds/Updates a subscriber in MailChimp will just consume actions and leave you paying a hefty fee for additional tasks.
Now one good feature about Zapier is that if you implement a filter as your first task and the filter fails, you consume zero tasks. I’m using this feature coupled with a custom field in my “Contact” Entity to avoid consuming extra fields.
This is what my ZAP looks like:
As you can see, I have a custom field named “updatemailchimp” which I change to true with a workflow triggering upon update of the Email Field (or any field I’d want to keep up to date in MailChimp). This way I keep my task consumption as low as possible, running the MailChimp task only if there is an Email and my “UpdateMailChimp” field is “true”.
This concludes part 1 of my Zapier & Dynamics 365 integration. I had to implement some workarounds to match CheckBoxes with MailChimp groups and avoid using “Paths” (which are nice but consume a LOT of tasks). I’ll cover this in my second article regarding Zapier! Of course if you want a more streamlined integration and don’t mind not having your contacts update from MailChimp to CRM (nor spending 2 dollars per CRM user per month) you can always go with the excellent Powermailchimp addon!