| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 1710 |
| Technical Name |
no_office_preview_pro |
| License | OPL-1 |
| Website | https://www.oudayet.com |
| Versions | 16.0 17.0 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 1710 |
| Technical Name |
no_office_preview_pro |
| License | OPL-1 |
| Website | https://www.oudayet.com |
| Versions | 16.0 17.0 18.0 19.0 |
Office Preview Pro.
Every office format Odoo doesn’t preview — rendered inline.
PowerPoint, Word, Excel, OpenDocument, legacy Office, CSV and Markdown — all in one module.
Odoo 16 11 FORMATS $49.99 USD 9 LanguagesStop downloading attachments to read them
Odoo shows images and PDFs inline. Every other office file — Word, Excel, PowerPoint, OpenDocument, CSV, Markdown — opens as a download button. Users download, switch apps, lose context, forget to come back. Pro renders them all inline right inside the existing Odoo viewer.
Without Pro
A salesperson attaches a pitch deck or a contract. Odoo shows a download button. The team downloads, opens it in another app, loses the context. Multiply by every conversation.
With Pro
Click any attachment, see it inline. The conversation continues without anyone leaving Odoo.
See it in action
Real chatter, every office format, the preview modal you already know.
PowerPoint, inline. The slide renders as a real PDF page inside Odoo’s existing modal — same look and feel as a native PDF attachment.
Flip through every slide. Full PDF.js navigation: page counter, thumbnails sidebar, zoom, fit-to-width — everything users already know from the native PDF viewer.
Not just PowerPoint. ODT, ODP, legacy DOC and RTF render the same way — rendered once, then instant on every subsequent click.
One-click setup verification. The setup wizard runs a live health check and shows the LibreOffice version string — you know in two clicks whether the host is configured correctly.
Configurable, not a black box. Turn any format on or off, set a maximum preview size, and re-check the LibreOffice install — all from one settings page.
All supported formats
Click an attachment, see it inline. Pro covers every common office format in one module.
Render in the browser — works on any Odoo host
.docx, .docm, .dotx, .dotm — headings, paragraphs, lists, tables, embedded images.
Excel .xlsx, .xlsm, .xlsb, legacy .xls, OpenDocument .ods — sheet tabs, merged cells, number formats.
Rendered as a clean Bootstrap table. First row treated as headers. Handles quoted fields and embedded line breaks.
.md and .markdown — headings, links, lists, tables, fenced code blocks, blockquotes.
Render on your host — LibreOffice on a self-hosted Odoo
PPTX (modern), PPT and PPS (Office 97-2003 binary). Slide layouts, bullets, embedded images, tables.
ODT (text), ODP (presentation). The OpenDocument formats LibreOffice / OpenOffice produce natively.
Microsoft Word 97-2003 binary. Common in archived contracts, ISO documentation, legacy templates.
Rich Text Format. Still in use by enterprise document management systems and email signatures.
Why “100% local” matters
HIPAA, GDPR, banking, defence — document content is not allowed to leave your network. Cloud-based preview services route your bytes through external servers. Pro never does — in-browser parsing in the user’s tab, or LibreOffice on your own host.
Industrial sites, ships, military bases — many Odoo instances run with no outbound internet. Modules that depend on Microsoft Office Online or any external preview service break here. Office Preview Pro just works.
A salary spreadsheet, a draft contract, a pitch deck, an internal memo — some attachments should not even briefly cross an external server. Pro keeps every byte inside your Odoo instance.
How it works
1. Click an Office attachment in any chatter, message thread, or attachment list.
2. The existing Odoo modal opens — same look, same behaviour as for images and PDFs.
3. The document content renders inline. Word, Excel, CSV and Markdown render directly in the browser. PowerPoint and OpenDocument files are converted on your Odoo host and shown through the native PDF viewer.
4. Close the modal and you are back where you were. No download, no app switch, no bytes sent off the server.
First click renders. Every other click is instant.
PowerPoint and OpenDocument files are converted once and remembered — re-opening the same attachment is instant. Replace the attachment and the preview refreshes automatically. Word, Excel, CSV and Markdown render directly in the browser, so they are fast every time.
What you need
Word, Excel, CSV and Markdown render right in the browser. No host install, works on any Odoo host including managed ones like Odoo.sh.
Required only for PPTX, ODT, ODP, DOC, RTF. Debian/Ubuntu: apt-get install --no-install-recommends libreoffice-core libreoffice-writer libreoffice-impress fonts-liberation. Adds ~280 MB. We do not bundle LibreOffice; that would bloat the package and freeze the version.
You need shell access to install LibreOffice. Odoo.sh and other managed hosts that don’t allow apt installs cannot run the server-side path. The in-browser formats (Word, Excel, CSV, Markdown) still work everywhere.
Three ways to preview Office files in Odoo
Inline Office preview is a common need. The market roughly splits into three approaches — each with its own trade-offs.
| Approach | Offline | Setup | Data exposure |
|---|---|---|---|
| In-browser + on-host (this module) | yes | install (+ LibreOffice for some formats) | stays on your network |
| Cloud preview integrations | no | none | sent to external host |
| Separate document-server modules | on-prem only | extra service required | stays on your host |
Available in 9 Languages
Office Preview Pro speaks your team’s language. Every button, error message, and configuration label is translated — users see the preview in the language set under Preferences → Language, no extra setup.
Translation files live under i18n/. Regional variants (fr_BE, nl_BE) inherit from the base language.
No bytes leave your server.
In-browser formats (Word / Spreadsheet / CSV / Markdown) parse entirely in the user’s tab using bundled libraries. Server-side formats (PowerPoint / OpenDocument / legacy DOC / RTF) are converted by the LibreOffice you installed on your own host. We do not phone home, do not log content, do not send anything to any external endpoint. The full source is included in the package — audit it before installing.
What this module does NOT do
PPTX / ODT / ODP / DOC / RTF need LibreOffice on the host, which Odoo.sh and similar managed hosts do not allow. The in-browser formats (DOCX, XLSX, CSV, Markdown) still render everywhere.
Read-only preview. We render to PDF; the user cannot edit slides or paragraphs in place. Download the attachment to edit in PowerPoint / Word / LibreOffice.
PDF is a static format. PPTX slide animations render as their final state. Embedded video does not play.
Pro covers the Office and OpenDocument families. CAD viewers, EPUB readers, and archive previews are out of scope here.
FAQ
No. Word, Excel, CSV and Markdown render right out of the box on any Odoo host. PowerPoint, OpenDocument, legacy Word and RTF need LibreOffice on a self-hosted Odoo — one apt-get command. The settings page has a one-click health check to confirm the install.
For Word, Excel, CSV and Markdown: a fraction of a second — the browser renders them directly. For PowerPoint and OpenDocument: under a second on the first click, then instant on every click after that thanks to caching.
No. Concurrent previews are handled cleanly — we tested the multi-user case so simultaneous opens don’t collide.
No. Everything happens inside your network — either in the user’s browser or on your own Odoo host. Bytes never leave.
Settings → General Settings → Office Preview Pro. Three blocks: LibreOffice setup with the health check button, a behaviour block for the server-side formats, and per-format toggles for the in-browser formats.
At a glance
| Odoo version | 16.0 — Community and Enterprise |
| Version | 16.0.1.1.0 |
| License | OPL-1 — $49.99 USD |
| Languages | EN, FR, ES, DE, NL, PT-BR, IT, ZH-CN, AR |
| External services | none — no cloud, no extra container, no internet required |
| Host install | LibreOffice on the host for PowerPoint / OpenDocument / legacy Office. Nothing extra for Word, Excel, CSV, Markdown. |
| Setup | install the module, run the one-click LibreOffice health check, done |
Found a bug?
Reach out via the Odoo App Store contact form — bug reports get a fix in the next maintenance release.
Office Preview Pro — $49.99 — Odoo 16
© Naim OUDAYET — OPL-1
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