How can I set up an outgoing/SMTP only email account/domain?

Is there a way to set up an email account for sending only?

I have a mail server that I used just for relaying SMTP. It seems with the settings you need to configure accounts that connect to IMAP or POP just to send email.

Even If I choose “disable SMTP authentication”, the email account settings force a user/password or choose “waiting for password”.

Perhaps I just need to go into Postfix configuration and add my SMTP relay service then use localhost???

Yeah, the whole email account setup could use a serious refactor. (Somewhat related discussion here)

The way I’ve done it is to setup a domain with my intended outgoing server and a working pop/imap servier that I didn’t plan to use (such as imap.gmail.com). Then, when setting up accounts just make sure that none of the accounts have “Enable Incoming” checked. It’s not an elegant solution, but it works.

@peterg
Thanks for the quick response.

I previously tried what you have described. Perhaps my difference is my SMTP server
doesn’t use authentication. I simply whitelist IP addresses that are allowed to use the relay.

I setup domain with my Google G Suite account, set IMAP, and used my smtp server in SMTP settings.

Then I tried editing the default outgoing account (Notifications), pointed it to my newly created Domain, enable incoming not checked, checked both Enable Outgoing and Default Outgoing.

Before I checked “waiting for password”, I was getting these errors on my SMTP relay server.

SMTP protocol error in "AUTH LOGIN" H=(JA9692) [my.ERPnext.server] AUTH command used when not advertised

When I check “waiting for password”, I don’t see any attempts at SMTP if I fill out the contact page on ERPnext. I’m not sure of any other way to send a test email.

Hmm…if you’re getting an AUTH LOGIN error with “disable SMTP authentication” set to true, that doesn’t seem right. Unfortunately, I don’t know anything about the SMTP library that Frappe uses.

Your best bet sounds like it might be the POSTFIX passthrough you suggested in your first post. Not ideal, but at least you have a bit more control over parameters that way.