Plesk: smtp error (550): failed to add recipient internal domain

Fixing Local Email Deliverablity in Plesk when Email is Hosted Somewhere Else

The other day I ran in to an issue when I was transferring domains and email services in to Plesk. All of the email accounts could send out, and receive email with one exception. I could not send emails to two domains which have email hosted elsewhere, but have sites hosting on my Plesk installation. Roundcube kept spitting this error back at me:

smtp error (550): failed to add recipient internal domain

or this after fiddling with the tables in Postfix’s master.cf file:

Recipient address rejected: User unknown in virtual mailbox table

I couldn’t figure it out. I tried all of the articles I could find online. They almost all recommended changing settings inside Postfix, but to no avail. Changing the settings in main.cf and master.cf for Postfix, then restarting Postfix had no effect on how Plesk was trying to send the email.

Then it occurred to me. The default setting for Plesk is to create an email server for each domain, perhaps there was a way to disable this?

Sure enough, if you go to Domains > Select a Domain > Choose “Mail Settings” and you will find the checkbox to enable/disable “Activate mail service on this domain.” Once you’ve unmarked this checkbox email will use your DNS records to find the mail server, instead of trying to internally route the email through Plesk and Postfix.

A dumb oversight, for sure, but I just couldn’t find the answer available online.