As we're reviewing how we're going to implement CRM, I just want to review some things regarding User records and Contact records. As a non-profit, we're likely going to have some custom entities linked to Contact records, such as Volunteers and Donors. And of course we'll have Staff members, most or all of whom will be CRM Users.
From what I've read, having a Contact record and a User record for the same person can get complicated, especially regarding email tracking (if they have the same email, for example). So it might seem to make sense to just have our staff as Users (or we might make a custom Employees entity, for more data, but it would link to the Users entity). But, cases definitely happen where people who are first Volunteers or Donors become Staff, and vice versa. So they'd already have a Contact record, potentially, or would need one when they leave. We really want to keep the info and history across these transitions.
So - I was pondering this. Volunteers and Donors and whatnot have a Contact record. When a person becomes a staff member, they would become a User (and get a corresponding Employee record automatically via workflow). If they already have a Contact record, the workflow puts a link to it, but maybe marks it inactive to cut down these conflicts? And/or asks for a personal email to put in there instead? When a person leaves, the User/Employee records are marked as inactive, and if the Contact was deactivated, reactivate it at this time.
Thoughts? Better ways to handle this?