You can send emails but you cannot receive emails. People that send you email get a message similar to this one:

May 1 03:14:52 mail postfix/smtp[62798]: 23CA4BD6B40: to=, relay=none, delay=0.01, delays=0/0/0/0, dsn=5.4.6, status=bounced (mail for mail.example.com loops back to myself)

Postfix did found a dns reply to your email server, but it hasn’t been configured to deal with address such as root@mail.example.com. In other words, your server is configured to accept user@example.com but not as user@mail.example.com. This is well known config problem with virtual domain. To fix this error either add system FQDN to mydestination or relay_domains. Postfix accepts mail for domain listed in virtual_mailbox_domains, virtual_alias_domains, and domains that resolve to IP addresses listed in inet_interfaces and proxy_interfaces. Update mydestination using postconf or by editing main.cf file:

mydestination = localhost.$mydomain, localhost, mail.example.com

Once you are done:
service postfix reload

If you run ISPConfig, you need to edit the local-host-names file in the postfix folder.

vi /etc/postfix/local-host-names

MAKE SURE YOU ADD AFTER (#### MAKE MANUAL ENTRIES BELOW THIS LINE! ####)
And add your host name to your server. I.E. I had to add server2039.myhosting.com to it and it fixed it.
Of course don’t forget to reload postfix.

service postfix reload