A made-to-order Odoo widget that adds a live elapsed-time timer directly to your views, letting teams start, pause, and log time from the same record they are working on. ECOSIRE builds it to your exact workflow and installs it on Odoo 17, 18, or 19. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $249.00 USD; request a quote for a scoped proposal.
Manifeste de l'app
Conçu autour de votre flux de travail
A made-to-order Odoo widget that adds a live elapsed-time timer directly to your views, letting teams start, pause, and log time from the same record they are working on. ECOSIRE builds it to your exact workflow and installs it on Odoo 17, 18, or 19.
Aucune configuration à faire vous-même — une app fonctionnelle conçue, installée et prise en charge par ECOSIRE.
Commencez par un prix de développement unique. Nous cadrons le projet avec vous au lancement.
ECOSIRE la développe, la configure et l'installe sur votre Odoo.
Vous êtes en ligne en 2–4 semaines environ, avec une période d’assistance après le lancement.
Every team that runs Odoo eventually hits the same friction with time capture: staff work inside a record — a task, a ticket, a sales order, a manufacturing order — but to log the time they spent, they have to break context, open a separate timesheet or activity, and reconstruct how long the work actually took. That guesswork erodes the accuracy of billable hours, project cost analysis, and payroll. Odoo core does ship a timer inside the Timesheets and Field Service apps, but it is bolted to account.analytic.line and the project/task model; it does not exist on arbitrary models, it cannot be dropped into an ordinary form or list view, and the moment you want a running clock on helpdesk.ticket, crm.lead, mrp.workorder, or your own custom model, native Odoo runs out of road.
The Web Timer Widget we build for you is a reusable OWL field widget plus a lightweight timing model that you can attach to any Odoo view. Technically, it is a custom @odoo/owl component registered in the field registry, backed by a small mixin model (extending models.Model) that stores timer_start, accumulated duration (a fields.Float in hours), and a @api.depends-computed running total that ticks in the browser and reconciles against server time on stop, so a lost connection or refreshed tab never loses or double-counts elapsed time. The widget renders start/pause/resume/stop controls inside the form or list via a QWeb/XML template, writes through the ORM (respecting your ir.model.access.csv grants and any record rules on the host model), and can post the result straight onto a linked account.analytic.line, a chatter log, or a field on the record itself — whichever your workflow needs. Because it is a proper field widget, it inherits Odoo's access control, multi-company rules, and audit trail rather than living in a disconnected browser tab.
We tailor the build to how your team actually works. That includes deciding which models carry a timer, whether multiple concurrent timers are allowed per user, rounding and minimum-billable rules, idle-timeout auto-pause, and how the captured duration flows downstream — into timesheets for invoicing, into manufacturing labor cost, into helpdesk SLA reporting, or into a custom QWeb report you can print or email. Where you need programmatic control — starting or stopping timers from an automated action, a scheduled job, or an external system — we expose clean methods callable over Odoo's XML-RPC/JSON-RPC API. The widget is written to work identically across Odoo Community and Enterprise; on Community it gives you timer capability that would otherwise only ship inside Enterprise Timesheets, and on Enterprise it extends that capability to models the native timer never reaches. It ships tested against Odoo 17.0, 18.0, and 19.0.
Because this is a build-to-order product, nothing is pre-listed for instant download. After you request a quotation we run a short scoping call, confirm the target models and downstream flow in writing, and give you a fixed quote and delivery date. Typical delivery is 2–4 weeks from confirmed scope. We develop on a staging copy of your database, run UAT with your team, and deploy behind a tested rollback plan, then hand over the full git repository and documentation. Pricing starts from $249 (indicative, single-company base scope); the number of host models, multi-company timer isolation, downstream integrations (timesheets, MRP, helpdesk, or an external system over RPC), and custom reporting depth increase the quoted scope.
Teams whose revenue depends on accurate billable time. They need staff to capture hours from inside the task, ticket, or project record they are working on — feeding account.analytic.line and invoicing — instead of reconstructing timesheets from memory at week's end.
Helpdesk and service leads who want a running clock on helpdesk.ticket or a service order to measure real handling time against SLAs, without asking agents to leave the record or maintain a separate stopwatch.
Plant and ops managers who need real labor time on mrp.workorder or operational records to cost jobs accurately, where Odoo's native timer never reaches the models they run on.
The people who own the Odoo instance and want timing capability added the right way — as an access-controlled, multi-company-safe field widget with a maintainable git repo and upgrade path — rather than a fragile one-off patch.
| Critère | ÉCOSIRE | Construction personnalisée | Concurrent | Odoo natif |
|---|---|---|---|---|
| Where the timer can live | Any model or view you specify — tasks, tickets, orders, custom models | Wherever you build it, if scoped correctly | Usually one or two fixed models the vendor chose | |
| Fit to your workflow | Built to your confirmed rounding, downstream flow, and rules | Fully bespoke but you own the spec and risk | Take it as shipped; limited configuration | |
| Security & multi-company | Honors ir.model.access.csv, record rules, company_id | Depends on your team's implementation | Varies; often untested for multi-company | |
| Version & edition coverage | Tested on 17/18/19, Community and Enterprise | Whatever you build and maintain | Often lags new Odoo releases | |
| RPC & automation control | Documented XML-RPC/JSON-RPC methods + automated actions | Possible if you design for it | Rarely exposed cleanly | |
| Ownership & maintainability | Full git repo handover + docs + compatibility matrix | You own it and all upkeep | Vendor-controlled, closed roadmap | |
| Support | Post-go-live support window + optional ongoing engagement | Your own team | Vendor support tiers, variable | |
| Time to value | 2–4 weeks from confirmed scope, fixed quote | Unpredictable; depends on internal capacity | Instant install but may not fit |
No. This is a build-to-order product. ECOSIRE designs, builds, installs, and supports the widget for your specific Odoo instance and workflow. There is no instant download — after you request a quotation we scope it with you and then build it to your confirmed requirements.
Typical delivery is 2–4 weeks from confirmed scope. The exact date is fixed in your quote after the scoping call, and depends on how many models carry a timer, the downstream flows involved, and any custom reporting or RPC integration you need.
Pricing starts from $249 as an indicative single-company base scope. We never quote a firm price before understanding your requirements — we hold a short scoping call, confirm the target models and downstream flow in writing, then issue a fixed quote and delivery date. The number of host models, multi-company isolation, integrations, and reporting depth drive the final number.
We build and test against Odoo 17.0, 18.0, and 19.0, on both Community and Enterprise. On Community it gives you timer capability that otherwise ships only inside Enterprise Timesheets; on Enterprise it extends timing to models the native timer never reaches.
Every build includes a post-go-live support window for defect fixes and configuration questions. You also receive the full git repository, so your team or ours can maintain and extend it. We provide a version-compatibility matrix and can quote a separate engagement to port the widget forward when you upgrade Odoo.
Yes. Because the timer is a proper Odoo field widget backed by an ORM model, it honors your ir.model.access.csv grants, any record rules on the host model, and company_id multi-company isolation. It does not bypass Odoo security or live in a disconnected browser tab.
Yes. We can wire automated actions so a stage change or field update auto-starts or auto-stops a timer, and we expose clean methods callable over Odoo's XML-RPC/JSON-RPC API so external systems or scheduled jobs can control and query timers.

A build-to-order Odoo localization that loads Algeria's full wilaya and commune hierarchy with bilingual French and Arabic names, wired into partner addresses and reporting. ECOSIRE builds, installs, and supports it after your quotation.

A build-to-order 2Checkout (Verifone) payment integration for ERPNext, giving global digital-goods sellers card acceptance, 45+ local payment methods, multi-currency checkout, and reconciled invoices. ECOSIRE scopes, builds, installs, and supports it on your ERPNext v15/v16 instance.

A build-to-order 2Checkout / Verifone payment gateway for Magento 2 and Adobe Commerce: localized checkout in 12 languages, iDEAL, Giropay and regional methods, multi-currency global selling, subscription billing and tax/invoicing automation — engineered, installed and supported by ECOSIRE.
A made-to-order Odoo widget that adds a live elapsed-time timer directly to your views, letting teams start, pause, and log time from the same record they are working on. ECOSIRE builds it to your exact workflow and installs it on Odoo 17, 18, or 19.