Example Process - Mailchimp Unsubscribe

Scenario

You use both Mailchimp and you do some emails out for other purposes (eg a donation campaign sent by an external source). If a Mailchimp Subscriber unsubscribes from Mailchimp you want to ensure that Email Opt Out is checked to ensure that those people are then not emailed for other campaigns also. This is not a feature of Mailchimp For Salesforce, but it is really easy to do with Process Builder. 

Looking at Mailchimp For Salesforce there is a Mailchimp Subscriber record for each email address in each list - it has the format of "mymail@example.com - My List". That Mailchimp Subscriber record is either related to a Contact or a Lead via a related lookup. (On the Contact record you can show the related Mailchimp Subscriber by adding the MC Subscriber field). 

Create the Process

Name the process

Choose the Object

Choose the object MC Subscriber. 

Define the Action Group

The Salesforce record will be edited with the status of Unsubscribe when we sync the list with Mailchimp

Detail of the above conditions

Create the Criteria

The criteria will be whenever the Member Status in MC Subscriber is Unsubscribed 

We check the Do you want to execute... checkbox so this only fires when the Member Status is changed to Usubscribed. 

(It never goes back to Subscribed again, so we don't need to do much more than that). 

Create the Action

We are going to update the Contact 

The Record Type (note this is misleading - it is NOT anything to do with Record Types regularly in Salesforce) is set as below - the list of records related to the MC Subscriber record that are Contacts. 

We only want to update the Contact record if they are not already Opted Out so we say Filter the records based on Email Opt Out Equals False. 

Then we update the field Email Opt Out to True. 

And that't it! Activate the Process and away it goes.

Test it by unsubscribing someone in Mailchimp (that already has a MC Subscriber record in Salesforce) then sync the Mailchimp list with Salesforce. 

Notes and Gotchas

  • Why are you maintaining two separate lists? Is there a way you can do everything with Mailchimp? 
  • I would love to add a Chatter Post to say that this is why the Email Opt Out was checked, but you can't add a Chatter post on a related list. 
    • You could add a text field update that text field with a note to say Opted out via Mailchimp, and then set Feed Tracking on that field 
    • OR have a date field named Opted Out of Mailchimp, and set that field to today from this process and make another process to run when that field is updated to create a Chatter Post on the Contact. 
    • There should always be a record as to why something was done on the Contact record, especially if it was done automatically - this is where the Chatter feed is fabulous. 
  • What about a further Process if they have Email Opt Out = true then set the Campaign Member Status for all their Campaigns to Opt Out (you would have to create it)
    • OR use Flow to delete those people from Campaings. 
    • Be careful, as they may be on a Campaign for postal mail, so you need to know what your business strategy is. 
  • Ensure you know what the Email Opt Out field is currently used for and what ramifications this has.