The datacenter where the servers are located require per their AUP that emails be Can Spam Compliant. This includes:
Closed Loop Verification - This is where a person signs up, an email is sent out to the email address used, and they validate their email before any email is sent to them. Scripts sometimes sends emails to the list whether they are validated or not. The mailer doesn't check to see if an account has been validated, instead sending email to all the members. The mailer should take this into consideration when sending email.
Each email must have an opt-out option. To be compliant, the opt-out can't require a person to visit more than one page. Logging in, for example, isn't compliant as it requires a person to visit more than one page. It should be a one click process where they are immediately opted out or taken to a page with a form to fill out to opt them out.
On shared servers/hosting accounts, we must take immediate action in order to prevent the outgoing mail from the server from being blocked. This action blocks not only the site the complaint was about but anyone else that is on the server.
On Cloud servers/full dedicated servers, immediate action/replies should be take to prevent disruption of mail service on your server.