Odoo Email Server Configuration: Avoiding the Silent Failure Trap

Misconfigured email servers are invisible failures — everything looks fine until a customer says they never got your invoice. Here's how to get it right.

graphs of performance analytics on a laptop screen
Photo by Luke Chesser on Unsplash

Email is the most underestimated component of an Odoo deployment. When email works, nobody notices. When it breaks, the impact is widespread — missed invoices, lost quotes, failed password resets, and customers who think you're ignoring them.

The Most Common Email Issues

1. Outgoing Server Disconnected

Odoo's outgoing mail server can silently disconnect after a password change, certificate renewal, or server restart. Emails queue up in mail.mail with status "exception," but no alarm fires. Checking your mail queue should be a weekly routine.

2. SPF/DKIM/DMARC

Without proper DNS records, your Odoo emails land in spam folders. Every production Odoo instance needs:

📊 Curious about your Odoo instance health? Try the free NonaGuard health check — results in 60 seconds, no signup required.

  • SPF record: Specifies which servers are authorized to send email from your domain
  • DKIM signing: Cryptographically verifies the email content hasn't been modified
  • DMARC policy: Tells receiving servers what to do with emails that fail SPF/DKIM

3. Catchall Domain Not Set

If mail.catchall.domain and mail.default.from system parameters aren't set correctly, replies to Odoo-generated emails bounce or get lost. This is one of the most frequently missed configuration steps.

4. Incoming Mail Fetch Failures

Odoo's mail fetcher (cron job fetchmail.server) can stop working because of OAuth token expiration, IMAP connection limits, or server-side changes. The cron fails silently, and incoming emails pile up unprocessed.

Configuration Checklist

  1. Verify outgoing mail server connection and test with a manual send
  2. Check SPF, DKIM, and DMARC DNS records
  3. Set mail.catchall.domain and mail.default.from system parameters
  4. Enable mail queue monitoring and alert on exception status
  5. Test incoming mail fetch if using fetchmail

NonaGuard checks email configuration as part of every scan — flagging disconnected servers, missing DNS records, and stale mail queues. Audit your email config with a free scan.

📡 Get Your Pulse Score

NonaGuard provides continuous Odoo health monitoring with a 0-100 Pulse Score. Know exactly where your instance stands — no guesswork, no manual audits.

Get Your Free Health Check →