Mailflow — a complete email client, right inside Odoo.
Connect Gmail, Outlook or any IMAP/SMTP mailbox and read, send, organise, collaborate on and automate your email — without ever leaving Odoo. A real inbox with two-way sync, shared team inboxes and threaded conversations.
No third-party gateway or relay — Odoo connects directly to your mail provider over IMAP/SMTP. Your mail never passes through us.
Stop bouncing between your inbox and Odoo.
|
Webmail in another tab
|
With this module
|
|
∞
Mailboxes & users
|
2-way
IMAP sync
|
9
Themes (incl. Gmail & Outlook)
|
10+
Odoo apps linked
|
0
External services
|
See it in action
Every mailbox, one screen — run a shared inbox like a support desk
A clean 3-pane dashboard across all your mailboxes with sender avatars, colored tags, saved smart folders and search. Each conversation carries an Open / Pending / Closed status, an SLA countdown and private team notes — and, when AI is enabled, an insight strip with priority, category and sentiment.
COLLABORATE PRIVATELY
Discuss with your team, right beside the emailInternal notes with @mentions the customer never sees, live presence, and an AI insight strip that summarizes, categorizes and prioritizes each message. |
MEASURE YOUR TEAM
Analytics for volume, response time & SLAA manager dashboard: incoming vs outgoing volume, median first-response time, open backlog, per-agent load, status mix and SLA outcomes over 7 / 30 / 90 days. |
REPLY IN THREAD
Reply without leaving the conversationReply, Reply-All and Forward dock inline under the thread — recipients, subject and quote prefilled. Rich text, attachments, snippets, drafts, send-later and a full-screen mode. |
AUTOMATION STUDIO
Visual drag-and-drop flows for your mailDrag trigger → condition → action nodes to route mail into CRM, Sales, Helpdesk, Project and more — auto-reply, assign, tag, move or wait. Start from the ready-made template gallery. |
GMAIL THEME
Feels like GmailPrefer the Gmail look? One click applies rounded nav pills, a filled search bar and borderless rows. |
OUTLOOK THEME
Or feels like OutlookFluent-style blue accent, squared corners and a blue bar on unread & selected rows. |
Themes, colors, wallpaper & density
Nine prebuilt themes, a custom accent color or multi-color gradient, a background tint / solid / wallpaper, plus text size, bold text and a compact density — all from Settings.
One module, the whole workflow
|
📥
Unified inbox & two-way syncRead, star, move, archive, spam and delete — every change pushed back to the IMAP server. Search, filter chips, tags and bulk actions. |
💬
Threaded conversationsThe whole conversation stacks in the reading pane, latest expanded. Reply docks inline — no popup, no context switch. |
👥
Team inboxesShare sales@ or support@ with users or groups; assign messages; everyone sends as the mailbox. |
|
🔒
Safe Mode & privacySuspicious HTML sanitised on ingest with a trust-sender allow-list. Block Tracking URLs strips pixels & beacons. |
📅
Calendar & scheduling.ics invite cards → Accept / Maybe / Decline into a calendar event. Snooze, send-later and remind-if-no-reply follow-ups. |
⚡
Automation StudioDrag-and-drop trigger → condition → action flows with a run log and a template gallery. |
|
✉
Rich composer & recipient autocompleteOdoo’s full rich-text editor with To/Cc/Bcc autocomplete against your contacts (or free-typed, validated addresses) as avatar chips, drag-and-drop attachments up to 25 MB, and a floating or docked composer that pops out to a full-size window without losing your draft. |
📋
Canned responses, signatures & draftsReusable snippets and email templates for the replies you send again and again, per-account signatures added automatically, and save-as-draft so nothing in progress is ever lost. |
👤
Sender avatarsEvery message and recipient shows a face: a matched Odoo contact’s photo, or a deterministic colored-initials circle for unknown senders — so the same sender is always the same color. |
|
📁
Nested foldersYour IMAP folders render as a real tree, subfolders indented under their parents exactly as they appear in Gmail or Outlook, with a graceful fallback for orphaned subfolders. |
🖨
Print conversation to PDFOne click renders the whole thread — every message’s sender, recipients, date and body — into a clean, print-optimized layout and opens your browser’s print / Save-as-PDF dialog. Email HTML is rendered inert for safety. |
🌐
Multi-language core UIThe core interface ships localized in German, Spanish, French, Dutch and Portuguese, with the source template included so you can translate the rest. |
Built for support teams, not just individuals
Everything a shared support@ or sales@ mailbox needs to run as a team — private notes, live presence, a shared status workflow, response targets and a manager dashboard.
|
📝
Private team notes with @mentionsDiscuss a customer email privately, right beside the thread. Notes are internal only — never emailed to the customer and never written back to IMAP. Tag a teammate who shares the mailbox from the Notify: chip bar and they get a live in-app notification pointing straight to the conversation. |
👀
Live presence & collision detectionSee “Jane is viewing” or “Sam is replying…” the moment a teammate opens the same email, refreshed on a live heartbeat. This advisory collision detection warns two agents before they answer — so a customer never gets two replies to the same message. |
|
🔄
Open / Pending / Closed statusEvery conversation carries a shared status. Sending a reply moves it to Pending; a new inbound reply automatically re-opens it to Open. Colored status pills show in the list and reading pane, with one-click status filters. |
⏱
SLA targets & breach alertsManagers set first-response and resolution targets per mailbox, with a warning threshold. Agents get an SLA badge and a live countdown (‘2h left’ / ‘overdue 15m’); on breach the team is alerted (deadlines are checked every few minutes) and the conversation can auto-assign to an escalation user. |
📊
Team & inbox analyticsA manager dashboard aggregates incoming vs outgoing volume, median first-response time, open backlog, per-agent load, status mix and SLA outcomes across a 7 / 30 / 90-day window — your team’s speed and workload at a glance. |
SLA policies and the analytics dashboard are manager-only; notes and presence are visible only to teammates who share the mailbox.
The customer’s whole history, beside their email
Open an email from a known contact and a 360° sidebar surfaces their related Odoo records — grouped by app, with per-group counts and clickable rows that jump straight to the record. Matching spans the contact’s whole company family (parent company + child contacts), and it only ever shows records the reading user is allowed to see.
📈 CRM opportunities |
🧾 Sales orders |
🧾 Invoices & bills |
🎟 Helpdesk tickets |
✅ Project tasks |
🛒 Purchase orders |
Appears only for senders matched to an existing contact, and only for the apps you actually have installed — nothing to configure. Reply with full context, every time.
AI that does the busywork
Mailflow works fully without AI. When you want it, connect the free AI Connector module and your own provider account — then AI reads, drafts and triages for you. Every feature below is opt-in, per company.
|
🪄
Draft & rewrite in the composerDraft a full email from a one-line prompt, or rewrite your draft in one click — improve, shorten, more formal, friendlier, or fix grammar. Returns ready-to-use HTML in the original language. |
💡
Suggested repliesGet up to three short, distinct reply drafts tailored to the conversation. Click one and the reply composer opens pre-filled — signature and quoted original included — ready to edit and send. |
🧵
Summarize a long threadOne click condenses the whole conversation into a few sentences of context plus bulleted key facts, decisions and action items — catch up in seconds instead of scrolling. |
|
🏷
Auto-triage incoming mailWith enrichment on, each new email is tagged in the background with a one-line summary, category (sales / support / billing / other), sentiment and priority — surfaced as a priority badge in the list and an AI insight strip in the reading pane. Perfect for helpdesk triage. |
🔀
AI intent routing in flowsAn Automation Studio node classifies each email as sales, support, billing or other and routes the flow down the matching branch — with a safe fallback to ‘other’ whenever AI is unavailable. |
🧲
Email → filled CRM lead or ticketWhen a flow creates a record, AI reads the email and fills curated fields — name, company, email, phone, job title, city and more — so the new lead, ticket or contact is genuinely usable, not a bare stub. |
Bring-your-own-key by design. All AI runs through the separate, free AI Connector (Multi-Provider) module — the mail client never stores an API key. Choose your provider and model per company (OpenAI, Anthropic, xAI and more), cap spend with per-user rate limits, and pay your provider directly per request. Without the connector installed the entire AI UI stays hidden and Mailflow works exactly as before. AI Assist and Auto-enrich incoming mail are separate toggles, both off by default, and Automation Studio flows are built by managers / administrators.
Fast by design
Triage feels instant and forgiving — fly through your inbox from the keyboard, take back a send, and undo any action with a single click.
|
⌨
Keyboard shortcuts + Ctrl-KA full single-key layer (j/k to move, o open, c compose, r reply, e archive, / search, ? for the cheat-sheet) plus Compose, Go to mailboxes, Focus search and Shortcuts wired into Odoo’s Ctrl-K command palette. Typing in a field never triggers a shortcut. |
↩
Undo SendCaught a typo the instant you hit send? Outgoing mail is held for a short, configurable grace window with a sticky ‘Message sent — Undo’ toast. Click Undo and it comes back as an editable draft; do nothing and it goes out. |
⏰
Send Later, Snooze & remindersSchedule an email for the right moment (in 1 hour, tomorrow 8 AM, Monday, or a custom time), snooze incoming mail until later, and set ‘remind me if no reply’ follow-ups that nudge you only if the thread stayed silent. |
|
🔍
Gmail-style operator searchSearch the way you already do: from: to: subject: before: after:, plus has:attachment and is:unread / starred — with quoted phrases and live, debounced results. |
📌
Saved searches / smart foldersTurn any filter — ‘unassigned support’, ‘starred from Acme’ — into a named, pinned smart folder in the sidebar. Keep it private or share it with the whole team; one click re-applies the saved search and its filters. |
🔔
Desktop alerts & unread badgeOnce you allow browser notifications, native desktop alerts fire on new mail while the tab is in the background, and the browser tab title keeps a live ‘(3) Mailflow’ unread count — so you know the moment mail lands, even from another tab. |
|
🖱
Row quick actionsHover any message to archive, delete, toggle read / unread or snooze it — without opening it first. Every action removes the row instantly and refreshes folder counts on the spot. |
📂
Drag messages onto foldersFile email the natural way: drag a single row or a whole ticked selection onto any sidebar folder. The drop target highlights on hover and the move runs instantly, with an Undo toast. |
↺
Instant, undoable triageArchive, delete, spam, move and snooze remove rows immediately — zero flicker — then run server-side with a one-click Undo that restores them to the source folder. If a call fails, the list reconciles itself back to the truth. |
Route mail into the apps you already use
📈 CRM Leads |
🧾 Sales Orders |
🛒 Purchase / RFQ |
🧾 Vendor Bills |
🎟 Helpdesk |
✅ Project Tasks |
💼 Recruitment |
🧾 Expenses |
💬 Discuss |
👥 Contacts |
📅 Calendar |
➕ Any mail.thread |
Replies thread straight back onto the record — and the generic "Create record" node targets any Odoo model that accepts email.
GDPR-ready by design
Your mail never leaves your control. Odoo connects directly to your provider — there is no third-party relay, gateway or SaaS in the middle that could see, store or process your messages.
|
🏢
Data stays in your DBMessages, attachments and contacts live in your own Odoo database — on your server or hosting of choice. Nothing is sent to us. |
🔐
Per-mailbox access controlShare a mailbox with named users or groups only. Odoo record rules enforce who can read, send and act on each account. |
🔒
Safe Mode & no trackingIncoming HTML is sanitised, and Block Tracking URLs strips pixels and beacons so senders can't silently profile your team. |
🗑
Right to erasureA contact's mail is standard Odoo data — delete it with the usual record deletion to honour erasure requests. |
Optional AI Assist is bring-your-own-key and off by default — enable it only if you want it, using your own AI provider account.
Works with Gmail, Outlook & any IMAP mailbox
Gmail / Outlook OAuth2 reuses Odoo's built-in integrations, or use a standard IMAP/SMTP app password. No third-party service in the middle — Odoo connects straight to your mailbox. Community & Enterprise, Odoo 19.
Need help or customization?
Installation support, custom features, and Odoo development — from the developer who built it.
Contact developer| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Calendar (calendar)
• Contacts (contacts) • Discuss (mail) |
| Lines of code | 10163 |
| Technical Name |
unified_mail_client |
| License | OPL-1 |
| Website | https://github.com/roshank8s/ |
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