Like a lot of organisations, Grassroots IT has a ‘main’ software application that we use to run the business. In our case, it’s a product called Connectwise, which is specifically designed for IT service providers just like us. It’s what we use to manage all service tickets, projects, procurement, CRM, invoicing and so on. We consider it to be the ‘one true source’ of information in our business.
There’s a lot that Connectwise does really well, but there are some bits that it either doesn’t do at all, or that it doesn’t do very well. For these areas we use other applications that can integrate well with Connectwise. For example, we use Xero as our accounting platform because firstly, Connectwise simply doesn’t have this functionality, and secondly because we can seamlessly integrate Xero with Connectwise so that information automatically flows freely between the two.
Another add-on product that we use to complement Connectwise is Mailchimp, which we use for all of our email marketing. Unfortunately though there is no native integration between Connectwise and Mailchimp, so keeping information updated in both has long been a manual process. Thankfully though using Microsoft’s workflow automation tool called Flow, we’ve been able to implement realtime two-way sync between Connectwise and Mailchimp to ensure that both databases are now automatically updated.
What is Microsoft Flow?
Microsoft Flow is a fairly recent additional to Microsoft’s range, offering similar functionality to existing services such as Zapier and IFTTT. The advantage that Flow has over these other services is it’s deeper integration into the extensive Microsoft stack of products and services, such as Office 365, SharePoint and so on. In fact Flow is embedded right within SharePoint Online already, and is included at no extra charge if you use Office 365.
Basically Microsoft Flow can be thought of as ‘middleware’, or a service that can sit between two other services. You define a ‘trigger’, and a resulting ‘action’. For example you may define a trigger to fire when a new email arrives, and a resulting action may be that you want any attachments on that email to be saved to a folder on your computer. And the best thing is that (for the most part) you create these ‘Flows’ with an easy to use graphical interface and no need to know any complicating computer coding.
The list of things that can be connected with Flow is extensive, including services such as Facebook, Twitter, SharePoint, Salesforce and Mailchimp just to name a few. Have a look at the Flow website to browse the full list of available connectors, and see some examples of what can be achieved.
How we connected Connectwise and Mailchimp
As we started looking at this particular problem we realised that we needed to syncronise changes in Mailchimp and Connectwise in both directions. That is to say that changes made in Connectwise needed to be synchronised to Mailchimp (such as a new Contact being added), and changes in Mailchimp needed to be synchronised to Connectwise (such as someone unsubscribing). The good news is that both Connectwise and Mailchimp have mature API’s available which allowed us to define what’s called a Webhook on each.
When an item is updated in Mailchimp it sends a Webhook into Microsoft Flow, telling Flow details about what has just happened. Flow then takes that information, and talks to Connectwise to make the corresponding change. There is a similar Webook in Connectwise which sends notifications back the other way through Flow, which then updates Mailchimp.
For the super-geeks out there, here’s what the first part of one of our Flows looks like. For the rest of you, this isn’t nearly as complicated as you might think!
The other cool thing that we were able to do using Flow was to post status updates into a Slack channel each time a Flow runs. This gives us a super quick and easy way of monitor what Flow is doing.
What could you do with Flow?
Have a think about your existing business software and processes, and where some automation could help to either speed things up, or reduce manual handling. What software do you already use that could be better integrated? Do you use Excel? What about SalesForce? Facebook? Email? All of these things can be easily automated and brought together using Microsoft Flow. Honestly, the possibilties are endless.