A drag-and-drop layout designer for Odoo QWeb PDF reports with real-time preview, so your team can restyle invoices, quotations, and delivery slips without touching XML. Built to order, installed, and supported by ECOSIRE. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $299.00 USD; request a quote for a scoped proposal.
ایپ مینی فیسٹ
آپ کے ورک فلو کے مطابق تیار کردہ
A drag-and-drop layout designer for Odoo QWeb PDF reports with real-time preview, so your team can restyle invoices, quotations, and delivery slips without touching XML. Built to order, installed, and supported by ECOSIRE.
خود سیٹ اپ کی ضرورت نہیں — ایک کام کرنے والی ایپ جو ECOSIRE بناتا، انسٹال اور سپورٹ کرتا ہے۔
ایک بار کی تعمیر کی قیمت سے آغاز کریں۔ آغاز پر ہم آپ کے ساتھ مل کر دائرہ کار طے کرتے ہیں۔
ECOSIRE اسے آپ کے Odoo پر بناتا، ترتیب دیتا اور انسٹال کرتا ہے۔
آپ تقریباً 2–4 ہفتوں میں لائیو ہو جاتے ہیں، لانچ کے بعد معاونت کی مدت کے ساتھ۔
Every finance and operations team hits the same wall in Odoo: the invoice, sales order, or delivery slip PDF is "almost right," but the last mile — moving the totals block, adding a bank-details footer, tightening the tax breakdown, dropping in a signature line — means editing a QWeb <template>, wrestling with Bootstrap-grid markup and inherited xpath overrides, and pushing a module upgrade. So the change waits for a developer, a ticket, and a maintenance window. Odoo core lets you swap a logo and a paper format in Settings, but the moment you need real layout control it sends you straight into ir.actions.report XML. That gap is exactly where everyday branding and compliance changes go to die.
The Drag & Drop PDF Report Designer closes that gap. It is a visual layout editor that sits on top of Odoo's native QWeb reporting engine — not a parallel PDF system — so everything it produces is a real ir.actions.report rendered by wkhtmltopdf exactly as Odoo would. Business users drag blocks (header, party details, line-item table, tax/totals summary, terms, footer, signature, custom text and image zones) onto an A4/Letter canvas, bind fields to the report's model with a picker sourced from the ORM (fields_get over account.move, sale.order, stock.picking, or any model you nominate), set fonts, spacing, borders, and conditional visibility, and see a real-time preview rendered against a live sample record. No XML editing for the layout changes your team makes week to week.
Technically, we ship a Community-compatible addon with its own __manifest__.py, an ir.model layout store (your designs are data, versioned records — not code you have to redeploy), and a compiler that emits standards-clean QWeb at save time so the output stays fully compatible with translations (t-field, t-esc), multi-company rules, and res.company paper formats. Access is governed by ir.model.access.csv plus record rules so only authorized roles publish a report to production, and every design change is tracked. Power users keep an escape hatch: a raw-QWeb view for the rare block that needs a hand-written t-foreach or a @api.depends computed field, and the whole thing is reachable over XML-RPC/JSON-RPC if you want to script report provisioning across databases. It is built and tested against Odoo 17.0, 18.0, and 19.0, Community and Enterprise.
Because this is build-to-order, nothing is auto-downloaded. After a short scoping call we confirm which report models, layouts, and edge cases (multi-currency totals, per-company footers, localization-specific tax tables) are in scope, then build, test on a staging clone of your database, run UAT with your team, and deploy with a rollback plan — typically 2–4 weeks from confirmed scope. You receive the installable source, documentation, a git repo handover, and a post-go-live support window. Pricing starts from $299 (indicative, single-company base scope); additional report models, multi-company per-entity layouts, and deep localization requirements (country-specific tax and legal footer rules) increase the quoted scope. You get a fixed quote after the scoping call — never a surprise.
Owns invoice, credit note, and statement PDFs and needs them to reflect current branding, bank details, and tax presentation without filing a developer ticket for every wording or layout tweak.
Maintains the Odoo instance and wants business users to self-serve report layout changes safely, with role-based publishing and a staging-then-production path, instead of every change routing through them.
Manages quotations, sales orders, and delivery/picking documents and needs consistent, professional customer-facing PDFs that they can adjust in-house as processes and templates evolve.
Runs a lean team without in-house Odoo developers and wants full control over how company documents look, without paying for a developer every time a footer or line-item column needs to change.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Layout changes without a developer | Drag-and-drop for everyday changes, raw-QWeb escape hatch for the rest | Every change is a code edit and redeploy | Varies; often a fixed editor with limited field binding | |
| How designs are stored | Versioned `ir.model` records — data, not code | Hard-coded in module templates | Usually stored as records, portability varies | |
| Real-time preview | Live preview against a real sample record | Print-and-check cycle unless custom-built | Often present but may preview stale/mock data | |
| Fit to your exact process | Scoped and built to your models and edge cases | Fully bespoke, but you own all the effort | Generic; you adapt to its assumptions | |
| Odoo version coverage | Built and tested for 17.0 / 18.0 / 19.0, Community & Enterprise | Whatever you build and maintain | Depends on the vendor's version support | |
| Ownership & handover | Full source + git repo handover, you own it | You own it, but built from scratch | Licensed binary/module; source access varies | |
| Support & delivery | Staging UAT, rollback plan, post-go-live support window | Only what your team or contractor provides | Vendor ticket support, no tailored UAT | |
| Upfront cost & time | From $299 indicative; 2–4 weeks build-to-order | Higher effort, longer timeline, developer-rate cost | Low list price, but generic and self-fit |
This is a build-to-order module, not an instant download. After a scoping call to confirm which report models and layouts are in scope, typical delivery is 2–4 weeks from confirmed scope. We build on a branch, test on a staging clone of your database, run UAT with your team, and then deploy to production with a rollback plan.
Pricing starts from $299 as an indicative from-price for a single-company base scope. The final number depends on how many report models you need covered, whether you require per-company layouts, and localization depth. We give you a fixed, written quote after the scoping call — there is no open-ended hourly billing and no surprise on the invoice.
Every engagement includes a post-go-live support window for defect fixes and configuration help. Because you receive the full source and git repo, you own the module outright. We also offer ongoing support and version-upgrade engagements (for example moving your designs from Odoo 17 to 18 or 19) as a separate, quoted arrangement whenever you need it.
It is built to run on both. The module is Community-compatible and does not depend on Enterprise-only features, and it is regression-tested against Odoo 17.0, 18.0, and 19.0. If you use Enterprise, it coexists with your existing reports and the standard Print menu.
Yes. The designer compiles to standards-clean QWeb, so bound fields emit `t-field`/`t-esc` and keep working with Odoo's translation and `lang`-aware rendering. It is multi-company aware, honoring per-company logos, footers, and `res.company` paper formats, and design publishing is scoped by record rules.
It can target any model you nominate. Common starting points are `account.move` (invoices), `sale.order` (quotations), and `stock.picking` (delivery slips), but the field picker reads the model via the ORM's `fields_get`, so purchase orders, manufacturing documents, or custom models are all in scope — the number of models is one of the main scope drivers we confirm on the call.
There is a raw-QWeb escape hatch for exactly that. Business users handle everyday layout changes visually, and for the rare block that needs a hand-written `t-foreach`, a `t-set`, or a computed value via `@api.depends`, a developer can drop into raw QWeb without leaving the tool. You are never boxed in by the visual editor.
A drag-and-drop layout designer for Odoo QWeb PDF reports with real-time preview, so your team can restyle invoices, quotations, and delivery slips without touching XML. Built to order, installed, and supported by ECOSIRE.