Skip to Content

Odoo Integrations

Odoo and Outlook

Outlook covers three separate things people conflate: sending mail from Odoo, syncing the calendar, and seeing Odoo data beside an email. Odoo ships support for all three, and none of them make your inbox appear inside Odoo, which is what people usually meant.

Part of our guide to Odoo Integrations

Three different things

Untangling these first saves a lot of confusion, because "integrate Outlook" means at least three unrelated projects.

Sending. Odoo sends its mail through your Microsoft account, so messages come from your domain and land in the sent items of the account used.

Calendar. Meetings sync in both directions between Odoo and Outlook.

The side panel. A plugin showing Odoo information beside an email in Outlook, with buttons to log the message or create a record.

What none of these do is make your inbox appear inside Odoo. That expectation is the source of most disappointment here, and it is worth correcting before the project starts.

Sending mail

microsoft_outlook ships in Odoo 19 Community and configures the outgoing mail server to authenticate via OAuth rather than a stored password. Microsoft retired basic authentication for Exchange Online, so this is not an enhancement, it is the only route for most tenants.

Setup is an app registration in Entra ID with mail-sending permission, then connecting the outgoing mail server in Odoo. Tenant policy may require administrator consent.

Two constraints worth knowing before volume becomes a problem. The sending account's limits apply, so transactional email is comfortable and bulk email is not. And deliverability still depends on SPF, DKIM and DMARC being right for the sending domain, which the module does not configure for you.

Receiving, and why threading breaks

This is the part that actually matters for CRM and Helpdesk, and it is not really an Outlook feature.

Odoo receives mail through aliases: an address that routes into a model, so a message to it creates or updates a record. Replies thread onto the record because Odoo set a reply address it controls.

The common failure is a person emailing a customer from their own Outlook rather than from Odoo. The customer replies to that person, the exchange happens entirely in a personal mailbox, and the record shows nothing after the first message. Nothing is broken; the conversation simply left the system.

So the fix is procedural as much as technical: outbound customer conversation that should be visible has to start in Odoo. Configure the catchall correctly, and then tell people why it matters, because the configuration alone does not change behaviour.

The side panel

Built on mail_plugin, which is in Community. It surfaces the sender's Odoo record beside the message and offers actions: log this email, create a lead, see recent activity.

Useful for salespeople who live in Outlook, and honest about what it is. Logging is a deliberate click, so what ends up in Odoo depends on whether people click it. Teams that adopt it well treat it as a habit to establish rather than a switch to flip.

Calendar

Handled by microsoft_calendar, also Community, and covered alongside the rest of the tenant setup in Odoo and Microsoft 365.

The one point worth repeating here is that connection is per user. An administrator seeing it work has tested one account, and everyone else has to authorise individually before their meetings sync.

What to check when mail misbehaves

In this order, because the frequency runs roughly this way.

Is the outgoing server authenticated. An expired or revoked OAuth grant stops sending with a message that is easy to miss.

Is the reply-to what you expect. If replies are going to a person rather than to Odoo, threading cannot work regardless of anything else.

Are the DNS records right. Mail that sends successfully and arrives in spam is a DNS problem, not an Odoo problem.

Is the alias routing to the right model. A catchall that lands nowhere useful loses replies quietly.

That first-and-last pair covers most tickets, and neither is visible from inside Odoo without looking deliberately.

FAQ

Questions, answered.

How does Odoo send email through Outlook?

Through the microsoft_outlook module, which ships in Odoo 19 Community and authenticates the outgoing mail server with OAuth. Microsoft retired basic authentication for Exchange Online, so a stored password no longer works for most tenants.

Does the Outlook integration bring my emails into Odoo?

No. The side panel shows Odoo data next to an email and lets you log that message deliberately. It is not a mailbox sync, so nothing appears in Odoo unless somebody logs it or the message is sent to an Odoo alias address.

Why do replies to Odoo emails not appear on the record?

Because threading depends on the reply going back to the address Odoo used, usually a catchall or alias. A reply sent to a personal mailbox instead never reaches Odoo, which is why the reply-to configuration matters more than the sending configuration.

With CODEerts

Want your systems talking properly?

We are certified Odoo partners. We connect Odoo to stores, payment providers, messaging and reporting tools, and we maintain those connections through upgrades.

See how we can helpBook a call