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