basxsoftwareassociation/basxconnect

Archive/unarchive Mailchimp contact, when BC contact is deleted/undeleted?

wipascal opened this issue · 11 comments

Proposal:
BC delete -> MC archive
BC undelete -> no change on MC (currently there is no way of "remembering" which status the MC contact was in before deletion)
BC inactive -> MC archive
BC activate -> no change on MC (same reason as above)
BC delete permanently -> delete permanently from MC (it is then not possible to add that email address again. but in order to be GDPR-compliant we don't have a choice)

I am a bit unsure what is the best solution to the following problem: If two BC persons have the same email address, they are synchronized to the same MC subscription (because email addresses are unique in MC). So deleting one of them will archive the MC subscription that they are sharing. One option for preventing this would be to always check if an email address is being used by someone else who is still "active" and to not archive the MC subscription in this case.

To be honest, there are so many things to take into consideration that I am not sure whether it would not be better to just leave it as is. It is already possible to archive a MC subscription from BC: There is a checkbox that appears when one deletes an email address.

@freebeat what do you think?

@freebeat I thought about this a bit more and suggest we add a field status_before_archiving which remembers the status to which un-deleting a BC contact should lead.

The new Proposal:
Proposal:
BC delete -> MC archive
BC undelete -> set MC status to status_before_archiving
BC inactive -> MC archive
BC activate -> set MC status to status_before_archiving

I now implemented something which can be tested and reviewed.

Deactivating or deleting a contact should now archive the mailchimp contact. Restoring the BC contact should restore the MC contact as well.

Also, the subscription will be grayed out in BC. (In case of deactivating, a page reload is necessary to see it grayed out.)

Works as expected, thanks. What happens with mailchimp subscriptions in these cases?

  • Active -> Inactive
  • Inactive -> Active
  • Active -> Deleted
  • Deleted -> Active
  • Inactive -> Deleted
  • Deleted -> Inactive

Basically the mailchimp contact gets archived whenever the status is inactive or deleted (or both)
so e.g. inactive -> active will only unarchive the mailchimp subscription if the contact is not deleted in BC

Very cool, thanks

When I inactivate a contact with an active subscription, it gets archived in Mailchimp (which makes sense). At the same time the status of the subscription in BC is Subscribed. Should we change that, e.g. to "Archived"?
grafik

If you reload the page it gets grayed out. the reason why I left "subscribed" in the database is to that we know which status the subscription should go back to after reactivation...

What I could do is to reload the page after deactivation of contact. So that it is immediately visible that the subscription is no longer active

I think to the user it is not clear that the subscription is not active only through the color change. Could the previous state be stored somewhere else, e.g. in another field? This could even be visible...

Yes, I think your suggestion would be better than the current implementation.

Thanks, this works nicely now