Shopify maintains an object called email_marketing_consent to determine the email subscription status of the customers. As part of Shopify <> Mailmodo integration, we ensure subscription status is kept in sync in both directions between Shopify customers and Mailmodo contacts. 


For e.g., if you manually mark a customer as unsubscribed in Shopify, they’ll be updated to unsubscribed in Mailmodo and vice versa. Similarly, if you manually mark a customer as subscribed in Shopify, they’ll be updated to subscribed in Mailmodo and vice versa.


  "email_marketing_consent": {
   "state": "subscribed",
   "opt_in_level": "confirmed_opt_in",
   "consent_updated_at": "2022-04-01T11:22:06-04:00"
  }

How does the two-way sync work?

From Shopify to Mailmodo
At regular intervals, for each Shopify customer, we update the subscription status for the Mailmodo contacts as per below:
Email marketing consent state in Shopify
Email subscription status in Mailmodo
State is subscribedMark contact as Subscribed in Mailmodo
State is unsubscribedMark contact as Unsubscribed in Mailmodo
State is not_subscribedMark contact as Subscribed in Mailmodo
State is email_marketing_not_applicableMark contact as Unsubscribed in Mailmodo

From Mailmodo to Shopify
Whenever Mailmodo contacts have Unsubscribed from all email types (i.e. account level unsubscribed) in Mailmodo, we update the Shopify email subscription status for the customer as Unsubscribed i.e. email_marketing_consent.state → Set to unsubscribed.


Note: Currently, we don’t update subscription status in Shopify if the contact has partially unsubscribed from certain email types in Mailmodo.