Hi, I have a question about the configuration for custom domains for outgoing emails in Odoo, as described in the following documentation and video:
Odoo Documentation, DNS records to send emails in Odoo: https://www.youtube.com/watch?v=TzEXg6y3aOY
Issue Description:
The problem is that the bounce address (Return-Path) does not use the custom domain, even though this behavior is expected based on the documentation.
According to Odoo's documentation:
"The database can be configured to use a custom domain, in which case all default email addresses are built using the custom domain. If the custom domain is company-name.com, the sender address will be notifications@company-name.com, the reply-to address catchall@company-name.com, and the bounce address bounce@company-name.com. The custom domain can be utilized when sending emails either with Odoo’s email servers or an external one." |
My Configuration:
I am using Odoo v18.0 Enterprise SaaS, and my settings are as follow the structure below (note: 'mycustomdomain' is used as an example and does not reflect my actual domain):
- General Settings > Emails > Alias domain: @mycustomdomain.com
- Settings > Users & Companies > Company (only 1 company, no branches):
- Email Domain: mycustomdomain.com
- Bounce: bounce@mycustomdomain.com
- Catchall: catchall@mycustomdomain.com
- Default From: notifications@mycustomdomain.com
- Settings > Technical > Email: Alias Domains:
- Alias domain: @mycustomdomain.com
- Bounce Alias: bounce
- Catchall Alias: catchall
- Default From Alias: notifications
- Additionally, SPF, DKIM, and DMARC records have been configured in the DNS zones according to Odoo's documentation.
- For incoming emails, the necessary redirections have been set up in Google Workspace as outlined in Odoo's documentation. However, this is unrelated to the issue with outgoing emails.
Observed Behavior:
Despite this configuration, the headers of the outgoing emails, extracted from the EML files of sent messages, show the following:
- Return-Path: <bounce@mycustomdomain.odoo.com>
- Reply-To: <catchall@mycustomdomain.com>
- From: <notifications@mycustomdomain.com>
The bounce address (Return-Path) is still using odoo.com, which causes an SPF Alignment fail, leading to emails being flagged as spam.
This same behavior can be observed in the Odoo Experience video linked above:
Timestamp 10:53 (right side of the presentation): The From address uses the custom domain. The Reply-To address also uses the custom domain. However, the bounce address (Return-Path) uses the odoo domain.
I believe the Return-Path should be the custom domain instead of the Odoo domain. I also cannot understand how mail-tester.com shows a score of 10/10 if the domains of the From and Return-Path do not match. As far as I know, such a mismatch should cause an SPF alignment failure, which would negatively impact the score.
Timestamp 12:42: A redirection is created from the custom domain bounce address to the Odoo domain bounce address. However, I think that this redirection will never be triggered because the actual Return-Path remains as the odoo domain.
Timestamp 13:00: The correct configuration is demonstrated, where all email addresses (From, Reply-To, Bounce) belong to the same custom domain. This configuration would be the expected outcome; however, it does not match the email addresses extracted from the headers shown at timestamp 10:53.
Attempts to Solve the Issue:
I have reached out to Odoo support for assistance, and while the case is still open and I remain hopeful for a solution, the responses I’ve received so far have been generic. The support team has indicated that they cannot provide assistance with external configurations. Additionally, it seems the issue may have been misunderstood, as some of their replies referenced incoming email redirections for Google Workspace, which are unrelated to this problem.
Questions:
- Is my explanation correct, or am I misunderstanding something?
- Is there any additional configuration within Odoo that needs to be adjusted to ensure that the bounce address (Return-Path) uses the custom domain?
- Could this be a bug in Odoo's implementation?
The ultimate goal of all this is as simple as maintaining the original functionalities of Odoo while replacing the default Odoo domain with the custom domain.
Thank you in advance for your assistance!