Is there a function that would allow for archiving of all delivered email (aka not spam)across a domain?

Due to the new legalities of email being used as court evidence my corporation wants to be able to store every message sent and received.

I do believe exchange has a way of dumping all emails in to a separate sql database. Is this already possible with zimbra?

I want this to be seamless, so no matter what every non spam email that touches the sever is stored, so the user is not responsible for the archiving.