I’m working on a fun little project right now, spurred by the upcoming July 1, 2014 changes to the Canadian Anti-Spam Legislation (CASL). In a nutshell, we cannot send electronic communications to our clients without obtaining consent. We already follow this practice, however, we don’t have a system to prove that we have obtained consent, and we don’t currently use double opt-in for subscribers.
As part of looking at this requirement, we decided to move from the software we currently use to send out our newsletters to a hosted system that is better at allowing mail recipients to self-manage their subscriptions. We have chosen to use MailChimp as our new email newsletter platform.
We use Temenos WealthManager as our wealth management platform, and while we can run with MailChimp in isolation, we would like to be able to see which of our contacts in WealthManager have subscribed to our newsletter. After much discussion about workflow and the complexities around bi-directional synchronization, we decided to go with the following approach:
I decided to use this project to explore some new (for me) technologies:
Here is an overview of how the system works:
Finally, I wrote a repopulate function which uses the MailChimp batch export API to retrieve a list of all subscribers, clear out all relevant contact categories in WealthManager, and then re-add the contacts back to the categories as required. We will use this to initially synchronize the systems, and in the event that they get too far out of sync.
We also have put in place monitoring of our webhook handler service to ensure that it is running.