Intro
This article touches on the topic of creating multiple e-commerce websites within one and the same Odoo account. The purpose is to have per software product, a dedicated website with its own webshop. Also the E-mail communications need to be set-up conform the multi-branding.
ChatGPT prompt
In odoo I have a single user enterprise custom account and Odoo is used Online/SAAS. With that single account I want to create multiple websites that each on its own support the promotion and sales (webshop) of distinct software packages. so for example I have program A and program B, i want to create a www.a.com and a www.b.com. Both websites have the e-commerce set up with mollie to accept payments. Both websites also allow communication over forum and contact forms. For website A I want to use an e-mail with @a.com and for B similar @b.com. How can i set this up?
Response
Excellent — this is a very good and common use case for a SaaS Odoo Enterprise setup, but it requires a precise configuration because:
✅ you are on Odoo Online (SaaS) (so no direct access to server config or multi-database tricks),
✅ you want two fully distinct branded websites, each with its own domain, e-commerce, mail, and communication.
Let’s go step-by-step with the correct way to implement this in your single Odoo Online Enterprise account:
🧱 1. Multi-Website Setup in the Same Database
Odoo allows multiple websites inside one database.
Steps:
Go to Website → Configuration → Settings.
Under Website Management, enable ✅ Multi-website.
Then go to Website → Configuration → Websites → Create.
Create two websites:
Website A: Name “Program A”, Domain: www.a.com
Website B: Name “Program B”, Domain: www.b.com
Each website will then have its own pages, theme, products, blog, forum, etc.
🌐 2. Domain Mapping (DNS + Odoo)
Each website’s domain must point to your Odoo Online database.
Steps:
In your DNS provider (Gandi, GoDaddy, Cloudflare, etc.):
Add a CNAME record for www.a.com → yourcompany.odoo.com
Add a CNAME record for www.b.com → yourcompany.odoo.com
(Odoo automatically maps the hostname and routes the visitor to the matching website.)
In Odoo > Website > Configuration > Websites, edit each website:
Set Domain = www.a.com for Website A
Set Domain = www.b.com for Website B
Odoo will handle SSL certificates automatically (Let’s Encrypt) after DNS propagation.
💰 3. E-commerce (with Mollie)
Mollie is supported natively in Odoo Online.
Steps:
Go to Website → Configuration → Payment Providers → Mollie.
Configure Mollie per website:
Each website can have its own Mollie API key.
In the Mollie configuration, set Website = “Program A” or “Program B”.
Publish the Mollie provider for each site.
This ensures payments for A and B are processed through the right account or branding.
💬 4. Forum, Contact Forms, and Live Chat per Website
Each website can have:
Its own Forum (Website → Forum → Create)
Its own Contact Us form (Website → Pages → Edit → Add Form)
Its own Live Chat channel
Just make sure that when creating each item, you set Website = Program A or Website = Program B.
📧 5. Branded Email per Website (@a.com, @b.com)
This is the trickiest part on Odoo Online, because:
You cannot directly host mail servers on Odoo Online.
You must use external mail providers (e.g. Office 365, Google Workspace, Zoho, etc.) for sending and receiving.
Here’s how to do it cleanly:
Option A — Use Office 365 (or Google Workspace) per domain
Set up both domains (a.com and b.com) in your Microsoft 365 Admin Center.
Create mailboxes:
info@a.com, support@a.com
info@b.com, support@b.com
In Odoo:
Go to Settings → General Settings → Discuss → Outgoing Mail Servers
Add an outgoing mail server for each domain:
Server Name: smtp.office365.com
Login: info@a.com
Website: Program A
Repeat for info@b.com → Website B
Set the proper password or app password.
Similarly, set up Incoming Mail Servers if you want incoming messages synced (via IMAP).
💡 Each website can use its own outgoing mail server, so mails (order confirmations, contact replies) are sent with the correct From: address.
🧩 6. Link Everything Together per Website
Each website in Odoo can have its own:
| Component | Where to Configure | Example for A.com |
| Theme & Logo | Website → Configuration → Settings | Brand A Logo |
| Domain | Website → Configuration → Websites | www.a.com |
| Email From | Settings → Outgoing Mail Servers | info@a.com |
| Payment | Website → Payment Providers | Mollie (API key A) |
| Forum | Website → Forum | forum.a.com |
| Chat | Website → Live Chat Channels | Sales Chat A |
🧾 7. Optional: Multi-company Separation
If you eventually want different accounting or legal entities per website (e.g. invoices from “Company A BV” vs “Company B BV”), then enable Multi-Company and assign each website to a company.
Otherwise, keep one company and use branding differences only.
✅ Summary
| Goal | Configuration Step |
| Two separate domains | DNS + Odoo Website domains |
| Distinct branding | Themes per website |
| Separate payments | Mollie per website |
| Distinct mail senders | Outgoing SMTP per website |
| Forum + Contact forms | Each assigned to its website |
| Hosted on Odoo Online | Works – no custom server needed |
Checklist
🧱 A. Website Structure
| Step | Task | Where | Done |
| 1 | Enable Multi-Website | Website → Configuration → Settings | ☐ |
| 2 | Create Website A with Domain www.a.com | Website → Configuration → Websites → Create | ☐ |
| 3 | Create Website B with Domain www.b.com | Website → Configuration → Websites → Create | ☐ |
| 4 | Assign different themes/logos to each | Website → Edit → Customize | ☐ |
🌐 B. Domain & SSL Setup
| Step | Task | Where | Done |
| 5 | Add CNAME: www.a.com → yourdb.odoo.com | DNS provider | ☐ |
| 6 | Add CNAME: www.b.com → yourdb.odoo.com | DNS provider | ☐ |
| 7 | Wait for DNS propagation (~1 h) | DNS | ☐ |
| 8 | Verify domain in Odoo (SSL auto-provision) | Website → Configuration → Websites | ☐ |
💳 C. E-Commerce & Mollie
| Step | Task | Where | Done |
| 9 | Install Website + eCommerce + Mollie modules | Apps | ☐ |
| 10 | Configure Mollie for Website A (API key A) | Website → Payment Providers → Mollie | ☐ |
| 11 | Configure Mollie for Website B (API key B) | Website → Payment Providers → Mollie | ☐ |
| 12 | Assign each Mollie provider to its website | Provider → Website field | ☐ |
| 13 | Test checkout for both sites | Frontend | ☐ |
💬 D. Contact, Forum, Live Chat
| Step | Task | Where | Done |
| 14 | Create Forum A → assign to Website A | Website → Forum | ☐ |
| 15 | Create Forum B → assign to Website B | Website → Forum | ☐ |
| 16 | Add custom Contact Us forms per site | Website → Edit Page | ☐ |
| 17 | Configure Live Chat channel per site | Website → Live Chat Channels | ☐ |
📧 E. Email & Communication
| Step | Task | Where | Done |
| 18 | Add both domains to Microsoft 365 / Google Workspace | Mail admin | ☐ |
| 19 | Create mailboxes: info@a.com, info@b.com | Mail admin | ☐ |
| 20 | In Odoo, add Outgoing Mail Server for each domain | Settings → Technical → Email → Outgoing Mail Servers | ☐ |
| 21 | SMTP config for A: smtp.office365.com / login info@a.com | ☐ | |
| 22 | SMTP config for B: smtp.office365.com / login info@b.com | ☐ | |
| 23 | Assign each SMTP to its website | Mail Server → Website field | ☐ |
| 24 | (Optional) Add Incoming Mail Server via IMAP | Settings → Technical → Incoming Mail Servers | ☐ |
| 25 | Test mail sending from each site | Website → Contact Form | ☐ |
🧾 F. Optional Company Separation
| Step | Task | Where | Done |
| 26 | Enable Multi-Company | Settings → Users & Companies → Companies | ☐ |
| 27 | Assign Website A → Company A; Website B → Company B | Website record → Company | ☐ |
| 28 | Configure different invoice headers/logos per company | Accounting → Settings | ☐ |