Skip to main content
Microsoft 365 SharePoint & OneDrive Document Integration — A build-to-order Odoo module that stores, syncs, and edits your Od — 1/1Illustrative preview

A build-to-order Odoo module that stores, syncs, and edits your Odoo attachments directly in Microsoft 365

SharePoint and OneDrive — with two-way linking, Office Online editing, and filestore offload over the Microsoft Graph API.

ECOSIRE scopes, builds, installs, and supports it for your tenant.

What is Microsoft 365 SharePoint & OneDrive Document Integration?

A build-to-order Odoo module that stores, syncs, and edits your Odoo attachments directly in Microsoft 365 SharePoint and OneDrive — with two-way linking, Office Online editing, and filestore offload over the Microsoft Graph API. ECOSIRE scopes, builds, installs, and supports it for your tenant. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

OAuth2 connection to your Microsoft 365 tenant via a customer-owned Microsoft Entra ID app registration, with token refresh handled server-side and no third-party credential storage
Background auto-upload of Odoo `ir.attachment` files to a mapped SharePoint document library or OneDrive folder on the Microsoft Graph API
Per-model folder-mapping rules so each nominated `res.model` (e.g. `sale.order`, `project.project`) routes to a specific site, library, and folder path
Two-way linking that shows live SharePoint/OneDrive files on the Odoo record without duplicating storage — the record points to the Graph item, not a copied blob
'Open in Office Online' Word/Excel/PowerPoint co-authoring links surfaced from the chatter attachment widget and from Documents
Storage offload mode that keeps the master copy in Microsoft 365 and shrinks the Odoo filestore, reducing backup and disk footprint
Queued background sync worker (built on `ir.cron` / automated actions) with exponential-backoff retry and explicit Microsoft Graph throttling / rate-limit handling
Folder auto-provisioning from a configurable per-record naming template (e.g. `{company}/{model}/{name}-{id}`) created on first attachment
Permission mapping that aligns Odoo record access with SharePoint sharing-link scope so external visibility matches internal access
Per-document sync-status field and audit log capturing `uploaded`, `linked`, `failed`, and `retried` states with timestamps and error detail
One-click bulk migration tool to move existing Odoo attachments into SharePoint/OneDrive at go-live, batched to stay within Graph limits
Multi-site and multi-library support so large tenants can spread records across several SharePoint sites and document libraries
Security enforced via `ir.model.access.csv` and record rules on the connector config, sync-log, and mapping models — connection settings are admin-only
Clean `__manifest__.py`-declared codebase with XML/OWL views, compatible with Odoo 17.0, 18.0, and 19.0 on Community or Enterprise

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your Odoo.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

Odoo Compatibility
Odoo 17, Odoo 18, Odoo 19
Editions
Enterprise & Community
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
PostgreSQL 12+

About this Product

Odoo's native attachment handling was designed to keep files inside the Odoo filestore, not inside your document platform. For a Microsoft 365-centric organization this creates a painful split: contracts, quotes, and delivery notes live as ir.attachment blobs in Odoo, while the rest of the business collaborates, co-authors, and version-controls documents in SharePoint and OneDrive. Teams download from one system and re-upload to the other, the Odoo filestore balloons on every server and backup it touches, and there is no single place where a file's permissions, version history, and audit trail actually live. Odoo core (base, mail, web) gives you the chatter attachment widget, and Enterprise adds Documents, but neither connects your records to a Microsoft 365 tenant or lets a user co-author a spreadsheet in Office Online straight from a sale order.

This is a made-to-order Odoo module that ECOSIRE builds against your specific tenant and record model. At its core is a clean-room connector to the Microsoft Graph API, authenticated with OAuth2 through a Microsoft Entra ID app registration that you own — so tokens, consent, and data residency stay entirely inside your Microsoft 365 environment. We extend ir.attachment and add supporting models (models.Model with typed fields, @api.depends computes for live sync state, and locked-down ir.model.access.csv plus record rules) so that when a document is attached to a record it is uploaded in the background to a mapped SharePoint document library or OneDrive folder. The Odoo record then shows the live file through a two-way link rather than a duplicated copy, and an "Open in Office Online" action launches Word, Excel, or PowerPoint editing in the browser directly from the chatter and from Documents.

Technically, the sync runs on Graph through a queued, retrying worker (built on Odoo automated actions / ir.cron) that respects Graph throttling and rate limits, records a per-document status (uploaded, linked, failed, retried) in an audit log, and provisions folders from a configurable per-record naming template — for example a dedicated SharePoint folder per sale order or per project. Folder-mapping rules are defined per model, so each res.model you nominate routes to the right site and library, with multi-site and multi-library support for large tenants. Permission mapping aligns Odoo record access with SharePoint sharing links, storage offload shrinks the filestore by keeping the master copy in Microsoft 365, and a one-click bulk migration tool moves your existing Odoo attachments into SharePoint on go-live. Everything is delivered as clean __manifest__.py-declared source with XML/OWL views and works across Odoo 17.0, 18.0, and 19.0 (Community or Enterprise — we confirm your edition during scoping since Enterprise Documents changes some integration points).

Because this is build-to-order, nothing is auto-downloaded. After you request a quotation we run a short scoping call to confirm your tenant setup, the models and libraries in scope, permission rules, and migration volume; then we build, test on a staging database, and install on your Odoo. Typical delivery is one working week from confirmed scope. Pricing starts from $999 (indicative, single-company base scope); multi-company routing, additional models and SharePoint sites, deeper permission/sharing-link mapping, and large existing-attachment migration volumes increase the quoted scope. You receive a fixed quote after the scoping call — never a surprise on delivery.

What you get

  • Installable Odoo module source code for your commissioned version, targeting your confirmed Odoo 17.0 / 18.0 / 19.0 edition
  • Microsoft Entra ID app-registration guidance plus installation and configuration on your Odoo instance (connection, libraries, mapping rules)
  • Technical documentation covering the models, Graph integration, sync worker, and configuration options
  • End-user guide plus a live training session for the teams who attach documents and use Office Online editing
  • Post-go-live support window for bug fixes and adjustments to the delivered scope
  • UAT on a staging database with a documented rollback plan before any production change
  • Git repository handover with full commit history and tagged release
  • Configured folder-naming templates and bulk-migration run for your existing attachments as agreed in scope

Who this is for

Microsoft 365-centric operations lead

Runs a business where SharePoint and OneDrive are the document backbone. Wants Odoo records to reference the same files everyone else co-authors, instead of maintaining parallel copies that drift out of sync.

Odoo administrator / IT manager

Owns the Odoo instance and the Entra ID tenant. Needs a governed OAuth2 connection they control, admin-only connection settings, and an audit log showing exactly what synced, failed, or retried.

Infrastructure / DevOps owner

Watches the Odoo filestore grow on every server and backup. Wants storage offload to Microsoft 365 so the database and filestore stay lean while files keep a single authoritative home.

Compliance and document-control manager

Requires document access to match record access and sharing to be traceable. Values the permission mapping between Odoo record rules and SharePoint sharing links, plus the per-document audit trail.

How Microsoft 365 SharePoint & OneDrive Document Integration Compares

CriterionECOSIRECustom BuildCompetitorOdoo Native
AvailabilityBuild-to-order for your tenant; installed after scopingBuilt from scratch by your own devsInstant download, generic to all tenantsAvailable immediately, no M365 link at all
SharePoint / OneDrive syncTwo-way linking with no duplicated storageWhatever you have time to build and maintainOften one-way upload with copied filesNone — attachments stay in the Odoo filestore
Office Online editingWord/Excel/PowerPoint co-authoring from chatterRarely built due to Graph complexityVaries; sometimes download-onlyNot available
Storage offloadMaster copy in M365; filestore shrinksPossible but you own the edge casesSometimes duplicates rather than offloadsFilestore grows unbounded
Sync reliabilityQueued worker, retry, Graph rate-limit handling, audit logDepends on your engineering depthBlack-box; limited visibility on failuresN/A
Permission alignmentRecord access mapped to SharePoint sharing linksManual mapping to design and testTypically not mapped to Odoo record rulesN/A
Fit to your modelsPer-model mapping and naming templates you specifyFully bespoke but slow and costlyFixed model coverage, hard to extendN/A
Support & version upgradesPost-go-live window + 17/18/19 upgrade retainersFalls on your internal teamVendor-generic, no tailoring to your buildOdoo core support only

Frequently Asked Questions about Microsoft 365 SharePoint & OneDrive Document Integration

Is this an existing app I can download and install today?

No. This is a build-to-order Odoo module that ECOSIRE builds specifically for your Microsoft 365 tenant and record model. There is no instant download — after you request a quotation we scope, build, test on staging, and install it on your Odoo.

How long does delivery take?

Typical delivery is one working week from confirmed scope. The exact timeline depends on how many models and SharePoint sites are in scope, your permission-mapping rules, and the volume of existing attachments to migrate. We confirm dates in writing after the scoping call.

How does pricing and scoping work?

Pricing starts from $999 as an indicative single-company base scope. Drivers such as multi-company routing, additional models and SharePoint libraries, deeper permission/sharing-link mapping, and large migration volumes increase the quoted scope. You get a fixed quote after a short scoping call — no firm price is committed until scope is confirmed.

Do my Microsoft 365 credentials pass through ECOSIRE?

No. Authentication uses OAuth2 against a Microsoft Entra ID app registration that you own inside your own tenant. Tokens and consent stay in your Microsoft 365 environment; the connector holds only what your admins configure, protected by admin-only access rules in Odoo.

Which Odoo versions and editions are supported?

We build for Odoo 17.0, 18.0, and 19.0 on Community or Enterprise. We confirm your edition during scoping because Enterprise Documents changes some integration points; the delivered module targets your exact version.

What about support and updates after go-live?

Every engagement includes a post-go-live support window for fixes and adjustments to the delivered scope. Beyond that, we offer ongoing support and version-upgrade retainers — for example moving your module from Odoo 18.0 to 19.0 — quoted separately based on your needs.

Will the sync overload Odoo or hit Microsoft Graph limits?

No. Sync runs on a queued background worker built on `ir.cron` with exponential-backoff retry and explicit Microsoft Graph rate-limit handling. Uploads happen out of the user's request cycle, and every document carries a status (`uploaded`, `linked`, `failed`, `retried`) so nothing fails silently.

Request a quote

Microsoft 365 SharePoint & OneDrive Document Integration

A build-to-order Odoo module that stores, syncs, and edits your Odoo attachments directly in Microsoft 365 SharePoint and OneDrive — with two-way linking, Office Online editing, and filestore offload over the Microsoft Graph API. ECOSIRE scopes, builds, installs, and supports it for your tenant.

  • OAuth2 connection to your Microsoft 365 tenant via a customer-owned Microsoft Entra ID app registration, with token refresh handled server-side and no third-party credential storage
  • Background auto-upload of Odoo `ir.attachment` files to a mapped SharePoint document library or OneDrive folder on the Microsoft Graph API
  • Per-model folder-mapping rules so each nominated `res.model` (e.g. `sale.order`, `project.project`) routes to a specific site, library, and folder path
  • Two-way linking that shows live SharePoint/OneDrive files on the Odoo record without duplicating storage — the record points to the Graph item, not a copied blob

Request a Quotation

Tell us about your Microsoft 365 SharePoint & OneDrive Document Integration requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.