I finally got this. It saves the previous status (checked or unchecked) of my last transaction.
I am updating this because I found out a few things:
1. It still doesn’t work at all if I set “subscribe event” to “order created”
2. It works if I set “subscribe event” to “order completed”, but not completely. No matter I checked or not the opt_in checkbox, it always subscribe the email to the mailchimp list (or send an email depending on the configuration). Weirdly enough the custom field ‘ss_wc_mailchimp_opt_in’ is stored correctly in the database.
I found this line (108) in the class-ss-wc-integration-mailchimp.php:
if ( ! isset( $order->order_custom_fields[‘ss_wc_mailchimp_opt_in’][0] ) || ‘yes’ == $order->order_custom_fields[‘ss_wc_mailchimp_opt_in’][0] ) {
That seems the only place where the method subscribe is called on and I see nothing wrong with the condition.