Zoho Mail for Odoo | Email Client, Shared Team Inbox & Admin Console
by Tedred Technologies https://tedred.com$ 379.81
TedRed for Odoo 18.0
Zoho Mail for Odoo — email client, shared team inbox and admin console
Read, write and manage Zoho Mail without leaving Odoo. Every message shows the partner it came from and their open leads, orders and invoices; shared addresses go to the sales team that owns them; administrators run the whole Zoho organisation from the same screen.
A better way to work
Answer email where the customer record already is
Zoho Mail for Odoo puts a complete email client in the Odoo backend — folders, labels, conversations, structured search, drafts and attachments, all live against the Zoho Mail API with each user’s own OAuth2 token. What makes it more than a second inbox is the panel beside every message: the partner who sent it, their open leads, sales orders and invoices, and one click to log the email onto any of them.

From start to finish
How a message becomes a record

Create the Zoho client
Register a self-client in the Zoho API console and paste the ID and secret into General Settings.
Connect a mailbox
Each user authorises their own account. Tokens are stored per user, so nobody reads anyone else’s mail.
Map team inboxes
Point a Zoho group such as sales@ at an Odoo sales team. Its members see that inbox; everyone else does not.
Authorise the console
An administrator grants the organisation scopes once to manage mailboxes, licences, groups and domains.
Complete toolkit
Everything a mail client should do, inside Odoo
Full mailbox
Folders, Zoho labels, threaded conversations, structured search by sender, subject, attachment name and date range, drafts, and attachment upload straight to Zoho.
A reader that behaves
Sender HTML is allowlist-sanitised and rendered in a sandboxed frame, quoted history folds away, embedded images render, and tracking pixels are removed before anything loads.
Composer in the pane
Reply, reply-all and forward with correct In-Reply-To and References headers. Formatting toolbar, drag-and-drop attachments, pasted screenshots, signatures and Zoho drafts.
Odoo context panel
The sender resolved to a partner, with their leads, sales orders and invoices, one-click logging onto any of them, and customer or lead creation from an unknown address.
Team inboxes
Zoho groups mapped to Odoo sales teams. Membership is enforced by a record rule and re-checked before every call, so a shared address reaches its team and no one else.
Organisation console
Subscription and licence use, mailbox create, enable, disable, role, password, storage and aliases, groups, domain DNS status, and provisioning mailboxes from Odoo users.
Screenshots
Seen in the product



Before and after
What changes once it is installed
| Day to day | Zoho in another tab | Zoho inside Odoo |
|---|---|---|
| Answering a customer | Switch tab, search the address in Odoo, hope it is the right partner | The partner, their leads, orders and invoices are already beside the message |
| Filing an email against a deal | Copy, paste into the chatter, lose the formatting | One click logs it on the lead, order or invoice with the sender and date intact |
| A shared address like sales@ | Everyone reads everything, or nobody does | Mapped to a sales team, so only that team sees it |
| Turning an enquiry into a lead | Retype the name, address and message | Create the customer and the lead from the message itself |
| Adding a mailbox for a new hire | Log into the Zoho admin console separately | Provision it from the Odoo user, matched on address |
| Remote images and tracking pixels | Whatever the sender wanted | Tracking pixels removed; images load by default, blocking is a setting |
Every row is something the module does today, not a roadmap.
Checkable, not claimed
Security you can verify
The module holds OAuth tokens and renders mail from the internet inside a page that carries the Odoo session. Both are handled deliberately.
Requirements
| Odoo version | 18.0, Community or Enterprise |
|---|---|
| Depends on | mail, crm |
| Zoho plan | Any Zoho Mail plan with API access. The organisation console additionally needs an organisation admin to authorise it. |
| Zoho data centres | zoho.com, zoho.eu, zoho.in, zoho.com.au, zoho.jp, zoho.sa — the account’s home region is detected during authorisation |
| Outbound internet | Odoo must reach accounts.zoho.* and mail.zoho.* |
| Front end | Ships prebuilt; no node or build step on the server |
Nothing here depends on an Enterprise-only model.
All strings are translatable and the interface follows the user’s Odoo language and reading direction, including right-to-left.
Both standard Odoo apps. CRM is used for lead matching and for mapping team inboxes to sales teams.
Questions answered
Frequently asked questions
Does it work with Odoo Community?
Yes. The module depends only on Mail and CRM, both standard, and uses no Enterprise-only model.
Where are the passwords stored?
Nowhere. Authentication is OAuth2: each user authorises their own mailbox and Odoo keeps a refresh token for that user alone. Administrators authorise the organisation console separately, because Zoho refuses organisation endpoints to a mailbox token.
Can a salesperson read a colleague’s mail?
No. Every call runs with the signed-in user’s own token, so a user can only ever reach their own mailbox plus any team inbox their sales team is mapped to.
Which Zoho data centre does it use?
Whichever the account belongs to. The user picks a region when connecting, and if the account actually lives elsewhere Zoho says so on the callback and the module follows it.
Does it need a build step on the server?
No. The React client is committed prebuilt, so installing the module never requires node. The source is included if you want to rebuild it.
Need a demo, setup help or customisation?
TedRed brings technology, design, media and marketing under one roof. Our Odoo team can help you evaluate, configure and extend this module.
Talk to TedRedtedred.com · support@tedred.com
© TedRed · Odoo solutions designed with clarity, built for results.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
CRM (crm)
• Discuss (mail) • Calendar (calendar) • Contacts (contacts) |
| Lines of code | 5372 |
| Technical Name |
zoho_mail |
| License | OPL-1 |
| Website | https://tedred.com |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module