AI Summary - 20-sec read - Reviewed by experts
- When Odoo stops emailing customers - invoices, quotes, order confirmations - it is almost never a software bug. It is mail configuration or deliverability, and both are fixable.
- First check whether the message left Odoo at all: a stuck outgoing queue means a mail-server or authentication problem; a sent message that never arrived means a deliverability problem.
- The usual mail-server causes are a wrong SMTP host or port, a bad username or password, or a mismatch between the sender address and what your provider allows you to send as.
- The usual deliverability causes are a sender domain with no proper authentication records, so inboxes silently bin your mail as spam even though Odoo reports it sent.
- Short on time? We will get your Odoo email flowing and landing in inboxes, not spam. Book a free call.
Short on time? Book a free call.
Nothing erodes trust in a new ERP faster than a customer saying "I never got the invoice". You raised it in Odoo, the screen said it was sent, and yet it never arrived - and now finance is copying documents into Gmail by hand and quietly wondering why you switched systems at all. Here is the reassuring part: Odoo email problems are almost never a bug in Odoo. They are configuration or deliverability, and both follow a small, predictable set of causes. The trick is knowing which of the two you are dealing with, because the fixes are completely different, and then working through the usual suspects in order instead of guessing.
First question: did the email leave Odoo at all?
Every diagnosis starts here, because it splits the problem cleanly in two. Look at the outgoing mail queue and the message status. If messages are stuck, failing, or piling up unsent, Odoo could not hand them to a mail server - that is a connection or authentication problem inside your setup. If messages show as sent but the customer never received them, Odoo did its job and handed the mail off, but it was rejected or silently dropped somewhere after - that is a deliverability problem out on the internet. These two look identical from the customer side ("I did not get it") and have nothing in common under the hood. Ten seconds looking at whether the queue cleared tells you which half of this article you actually need, and stops you reconfiguring a mail server that was working fine.
When mail is stuck in Odoo: the outgoing server
If messages are not leaving, the outgoing mail server configuration is the place to look, and the causes are boringly consistent.
- Wrong host or port. The SMTP server address or the port does not match what your email provider requires, or the encryption setting (TLS/SSL) is mismatched to the port. Confirm all three against your provider documentation - a port that is one digit off fails silently.
- Bad credentials. The username or password Odoo uses to log in to the mail server is wrong or has expired. Many providers now require an app-specific password rather than your normal login, and pasting the account password instead is a very common cause of a queue that will not clear.
- Sender address not allowed. The from-address on the mail does not match an address your provider lets you send as, so the server refuses it. The reply-to and from settings in Odoo need to line up with an address the mail server actually authorises.
Test the connection from within Odoo after each change - a working test but stuck mail points at the queue processor, while a failing test points straight back at these three settings.
Invoices and quotes not reaching your customers?
We will check your outgoing mail server, authentication, and sender domain, find exactly where the mail is dropping, and get it flowing to real inboxes again. No pitch, reply in 2 hrs, no card needed, NDA on request.
Get a free auditWhen mail leaves but never arrives: deliverability
This is the more frustrating case, because Odoo reports success and the failure is invisible from your side. The mail left, a receiving server took one look at it, and quietly filed it in spam or refused it outright. The near-universal cause is a sender domain without proper authentication. Modern inbox providers check whether your domain has published the records that prove a given server is allowed to send mail on its behalf, and whether the message passes an alignment check. If those records are missing or wrong, your perfectly legitimate invoice looks, to the receiving server, exactly like a forgery - so it goes to spam or the void. Fixing this lives in your domain settings, not in Odoo: publish the sender-authentication records for whatever service actually sends your mail, keep the sending domain consistent, and warm up a new setup gradually rather than blasting a thousand messages on day one. Deliverability is a domain-reputation problem, and no amount of Odoo configuration fixes a domain the internet has learned to distrust.
Email that lands in spam is as good as email you never sent.
We will fix your outgoing mail server and your sender-domain authentication together, so Odoo mail leaves cleanly and lands in the inbox - not the junk folder. Reply in 2 hrs, NDA on request.
Book a free callDesign it so it stays fixed
Once mail flows, keep it flowing with a few decisions that prevent the problem coming back. Use a dedicated transactional email service for the mail your business depends on rather than a personal mailbox, so you get proper deliverability tooling and you are not at the mercy of a consumer provider tightening its rules. Keep one consistent sending domain and authenticate it properly, so your reputation builds instead of scattering. Monitor the outgoing queue rather than waiting for a customer to complain - a queue quietly filling with failures is an early warning you want to catch. And treat email as part of the implementation, not an afterthought bolted on the week before go-live; getting mail servers, sender identity, and the automations that trigger mail right together is exactly the kind of detail a proper Odoo implementation covers, and it ties directly to how your scheduled actions and automation rules fire mail on your behalf. When the setup gets genuinely involved - multiple sending domains, high volume, strict compliance - it is worth an expert eye, which is part of what our Odoo support exists for.
Takeaways
- Odoo email failures are almost always configuration or deliverability, not a software bug - and the two need completely different fixes.
- Check the outgoing queue first: stuck mail is a mail-server or authentication problem; sent-but-missing mail is a deliverability problem.
- For stuck mail, verify the SMTP host, port, and encryption, the login credentials (often an app-specific password), and that the sender address is one your provider allows.
- For missing mail, the cause is usually a sender domain without proper authentication records, so inboxes silently mark legitimate mail as spam.
- Use a dedicated transactional email service, keep one authenticated sending domain, and monitor the queue so failures surface before customers complain.
Frequently asked questions
Odoo says the email was sent, so why did the customer not get it?
Because "sent" only means Odoo handed the message to a mail server successfully. What happens after is out of Odoo hands - the receiving server can still file it in spam or reject it. That is a deliverability problem, and it almost always traces to a sender domain without proper authentication records. Fix it in your domain settings, not in Odoo: publish the records that prove your sending service is authorised, and keep the sending domain consistent so its reputation can build.
Why is my outgoing mail stuck in the queue?
Because Odoo could not successfully hand it to your mail server. The usual causes are a wrong SMTP host, port, or encryption setting, expired or incorrect credentials (many providers now require an app-specific password), or a sender address the server will not accept. Work through those three, run the connection test in Odoo after each change, and the queue should clear. If the test passes but mail still will not send, check that the queue processor is actually running.
Do I need a separate email service, or can I use Gmail?
A personal mailbox can work for tiny volumes, but for the mail your business depends on - invoices, quotes, order updates - use a dedicated transactional email service. It gives you proper authentication, deliverability monitoring, and sending limits built for volume, and it will not throttle you the way a consumer provider can. Just as important, it keeps your business mail on a domain you control and authenticate, which is what protects you from landing in spam.
How do I stop Odoo mail going to spam?
Authenticate your sending domain properly and keep it consistent. Inbox providers check whether your domain has published the records that prove a server is allowed to send on its behalf; without them, even a legitimate invoice looks like a forgery and gets binned. Publish those records for whatever service sends your mail, send from one steady domain rather than several, and warm up a new setup gradually. Deliverability is about domain reputation, and reputation is built, not configured overnight.
The short version: when Odoo stops sending email, resist the urge to reconfigure everything. Check the queue first to learn whether the mail is stuck inside Odoo or dropping after it leaves. Stuck mail is a mail-server and credentials problem; missing mail is a domain-authentication and deliverability problem. Fix the right one, move your critical mail to a dedicated service on an authenticated domain, and watch the queue so the next issue reaches you before it reaches your customers.
Leads the Odoo practice at Braincuber. Has delivered Odoo ERP implementations, NetSuite/Tally migrations, and Shopify–Odoo integrations for US mid-market and D2C brands. Owns scoping, data migration, and go-live for every Odoo engagement.
