- Inicio
- Apps
- SaaS Tools
- PDF Print Preview for Odoo
Vista previa ilustrativaA build-to-order Odoo extension that renders any QWeb PDF report inside the browser so users can preview,
page through, and print without first saving a file.
ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 environment.
¿Qué es PDF Print Preview for Odoo?
A build-to-order Odoo extension that renders any QWeb PDF report inside the browser so users can preview, page through, and print without first saving a file. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 environment. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Características clave
Hecho a medida, listo para ti
Sin configuración por tu cuenta: una app funcional creada, instalada y con soporte de ECOSIRE.
- 1
Haces el pedido
Empieza con un precio único de desarrollo. Definimos el alcance contigo en el arranque.
- 2
Creamos e instalamos
ECOSIRE la crea, la configura y la instala en tu Odoo.
- 3
En marcha + soporte
Sales en vivo en aproximadamente una semana laboral, con dos semanas de soporte tras la puesta en marcha. Los defectos en el código que entregamos se corrigen sin coste.
Especificaciones técnicas
- Compatibilidad con Odoo
- Odoo 17, Odoo 18, Odoo 19
- Ediciones
- Enterprise y Community
- Licencia
- La licencia requiere confirmación
- Requisito de Python
- Python 3.10+
- Base de datos
- PostgreSQL 12+
Sobre este producto
Every Odoo team hits the same friction with reports. A user clicks Print on an invoice, delivery slip, or sales order, Odoo streams back a PDF, and the browser immediately drops it into the Downloads folder or hands it to a plugin the user has to hunt through. Just to confirm the right template rendered — correct company logo, tax lines, page breaks — someone opens the file manager, launches a viewer, checks, then deletes a file they never wanted. Multiply that across hundreds of documents a day and you get cluttered download folders, misprinted batches, and support tickets that begin with "the layout looks wrong." Odoo core has no in-browser preview surface for QWeb reports: ir.actions.report is wired to return the binary as an attachment or stream, and the standard report controller has no viewer step in between.
We build a focused extension that inserts a real preview stage in front of that download. Technically, we override the report action flow so a report_type of qweb-pdf opens an in-browser viewer dialog — an OWL component embedding a pdf.js canvas — instead of triggering an immediate file save. The component calls the existing /report/pdf/<report_name>/<ids> controller (or a thin custom controller we add for streaming) via the standard JSON-RPC action service, receives the rendered bytes, and paints them page-by-page with zoom, page navigation, fit-to-width, and a Print button that targets only the document iframe. Because we reuse Odoo's own IrActionsReport._render_qweb_pdf and wkhtmltopdf pipeline, the preview is byte-identical to what the printer or the eventual download would produce — no second rendering engine, no drift between "preview" and "real" output.
The build is configured to your rules rather than a generic toggle. We add a preview_before_print flag on ir.actions.report (surfaced in the report form view via XML) so you decide per report — or per report category — whether Print opens the preview or keeps the legacy direct download. Access is governed through ir.model.access.csv and record rules so users only ever preview documents they are already entitled to see, and an optional automated action can log preview events for audit. Everything ships as a versioned module with a proper __manifest__.py, pinned to your target series, and is tested against Community and Enterprise (the viewer is framework-level, so it works in both; Enterprise's studio-defined reports are supported the same way).
Delivery is build-to-order. After a short scoping call we confirm exactly which reports get the preview, your Odoo version and edition, and any branding or audit requirements, then produce a fixed quotation. Typical delivery is one working week from confirmed scope: we develop against a staging copy, run UAT with your team, and hand over installable source, docs, and a git repository. Pricing starts from $999 (indicative, single-company base scope); the number of report templates in scope, multi-company preview rules, custom streaming controllers for very large PDFs, and edition-specific report handling increase the quoted scope.
lo que obtienes
- Installable, versioned module source for your Odoo edition and series (17.0 / 18.0 / 19.0)
- Installation and configuration on your staging environment, including per-report preview flag setup
- Technical documentation: architecture, controllers, action override, and extension points
- End-user guide plus a live training session for staff and administrators
- UAT sign-off on staging with a documented rollback plan before production go-live
- Post-go-live support window for defect fixes and configuration adjustments
- Git repository handover with full commit history and tagged release
- Short maintenance/upgrade notes covering how the module tracks future Odoo versions
¿Para quién es esto?
Finance & billing teams
Staff who print or email dozens of invoices, credit notes, and statements daily and need to eyeball the layout — tax lines, totals, company branding — before committing paper or a downloaded file. They want to catch a wrong template before it reaches a customer, not after.
Warehouse & operations users
People running batch prints of delivery slips, picking lists, and labels who currently drown in throwaway PDF downloads. In-browser preview lets them confirm the right documents and page ranges before sending a batch to the printer.
Odoo administrators & internal IT
Admins who own the report configuration and want a controlled, per-report rollout governed by access rules rather than a blunt global setting. They value that the preview reuses Odoo's native rendering so there is nothing new to maintain in parallel.
Document-heavy service firms
Consultancies, agencies, and back-office teams that generate quotations, work orders, and contracts and need a fast look-and-print loop without cluttering shared machines with sensitive downloaded files.
Cómo se compara PDF Print Preview for Odoo
| Criterio | ECOSIRE | Construcción personalizada | Competidor | Nativo de Odoo |
|---|---|---|---|---|
| Fit to your reports & rollout rules | Per-report preview flag, configured to your document set and branding | Fully bespoke but you specify and maintain every detail | Fixed global behavior, little per-report control | No preview stage at all |
| Rendering accuracy | Reuses native `_render_qweb_pdf` — byte-identical to print/download | Depends on how the developer wires the controller | Usually native pipeline, but varies by vendor | Renders directly to download; no in-browser view |
| Access & security | Enforced via `ir.model.access.csv` + record rules, optional audit log | Only as strong as the build team's discipline | Generally respects ACLs; audit varies | Standard Odoo ACLs, but nothing to preview |
| Odoo 17/18/19 + Community & Enterprise | Built and tested for your exact series and edition | Whatever you commission and test | Depends on vendor's supported matrix | In-scope by default but lacks the feature |
| Support & ownership | Support window + full git repo and source handover | You own it; you also own all maintenance | Vendor support terms vary; source often obfuscated | Covered by your Odoo support, feature absent |
| Upgrade safety | Pinned manifest, tracks native report flow, low-risk upgrades | Risk depends on how closely it followed core patterns | Reliant on vendor keeping pace with new series | Always current, but no capability to preserve |
| Time to value | one working week from confirmed scope, with UAT and rollback | Often longer; full spec-to-delivery cycle | Instant install, but generic and untailored | Immediate, yet the gap remains unsolved |
| Total cost profile | From $999 indicative; fixed quote after scoping | Typically highest — full bespoke development | Low sticker price, tailoring/support costs later | No cost, no feature |
Preguntas frecuentes sobre PDF Print Preview
How long does delivery take?
This is a build-to-order module. Typical delivery is one working week from confirmed scope. After a scoping call we agree which reports get the preview, your Odoo version and edition, and any audit or branding rules, then build against a staging copy, run UAT with your team, and hand over. Complex multi-company or large-PDF streaming requirements can extend the timeline, which we state in the quotation.
How does pricing and scoping work?
Pricing starts from $999 as an indicative single-company base scope. We do not quote a firm price until a short scoping call, after which you receive a fixed quotation. Drivers that increase scope include the number of report templates in scope, multi-company preview rules, custom streaming controllers for very large PDFs, and edition-specific report handling.
Which Odoo versions and editions do you support?
We build and test for Odoo 17.0, 18.0, and 19.0. The preview is implemented at the framework level (OWL client action plus a report-action override), so it works on both Community and Enterprise, including Studio-defined reports. We pin the module's `__manifest__.py` to your target series.
Is the preview the same as the real printed output?
Yes. The viewer renders the exact bytes produced by Odoo's own `_render_qweb_pdf` / wkhtmltopdf pipeline via the standard `/report/pdf` controller. There is no second rendering engine, so what you preview is identical to what prints and what would download — no drift between preview and final document.
What about support and updates after go-live?
Every build includes a post-go-live support window for defect fixes and configuration adjustments, plus a git repository handover so your team owns the source. Beyond the included window we offer ongoing support and version-upgrade work as a separate engagement; because the module tracks Odoo's native report flow, upgrades between series are typically low-risk.
Can we control which reports open the preview?
Yes. We add a `preview_before_print` flag on the report action, surfaced in the report form view, so you enable preview per report or per category. Reports left un-flagged keep Odoo's default direct-download behavior, letting you roll out gradually.
Is document access still secure?
The preview never bypasses Odoo's permission model. It calls the same report controller the user already has rights to, and access is enforced through `ir.model.access.csv` and record rules, so a user can only preview documents they are already entitled to open. An optional audit log records preview events.
Módulos relacionados

Paytrail Payment Gateway for Odoo (Finland)
A build-to-order Odoo payment provider that aggregates Finnish online banking, cards, and wallets through Paytrail, with server-side HMAC signature verification, refund support, and EUR localization. ECOSIRE builds, installs, and supports it after you request a quotation.

PayU India Payment Gateway for Odoo
Accept UPI, cards, netbanking, and EMI via PayU on your Indian Odoo checkout — built, installed, and supported by ECOSIRE.

Peppol Enhancement for e-Invoice
A build-to-order Odoo enhancement that extends native Peppol e-invoicing with multi-endpoint routing, participant validation, and richer document lifecycle handling. ECOSIRE scopes, builds, installs, and supports it on your Odoo 17/18/19 instance.

Pesapal Payment Gateway for Odoo
Accept cards and M-Pesa/Airtel mobile money on Odoo eCommerce via Pesapal API v3, with IPN reconciliation and refunds. Built and supported by ECOSIRE.
PDF Print Preview
A build-to-order Odoo extension that renders any QWeb PDF report inside the browser so users can preview, page through, and print without first saving a file. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 environment.
- Override of the `ir.actions.report` action flow so `qweb-pdf` reports open an in-browser preview dialog instead of an immediate file download
- OWL client component embedding a `pdf.js` viewer with page navigation, zoom, fit-to-width, and thumbnail rail
- Preview bytes fetched from Odoo's own `/report/pdf/<report_name>/<ids>` controller, so the preview is byte-identical to the printed and downloaded output
- Print button that targets only the document iframe, bypassing the browser's whole-page print dialog