A centralized, configurable approval engine for Odoo that adds multi-step routing, live state tracking, and automation to any model. ECOSIRE scopes, builds, installs, and supports it for your instance — it is not an off-the-shelf download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $299.00 USD; request a quote for a scoped proposal.

A centralized, configurable approval engine for Odoo that adds multi-step routing, live state tracking, and automation to any model. ECOSIRE scopes, builds, installs, and supports it for your instance — it is not an off-the-shelf download.
现在无需付款。此操作会向我们的团队发送报价请求——我们会通过邮件跟进价格和后续步骤。
Most teams hit the same wall as they scale on Odoo: approvals live in too many places. Odoo ships genuine approval touchpoints — purchase agreements, expense validation, time-off officer sign-off, and the Enterprise approvals app for internal requests — but each is siloed to its own model, each carries its own rules, and none give you one consistent, auditable engine that spans sales orders, vendor bills, journal entries, custom project milestones, or your own bespoke models. The moment you need "any PO over $10k routes to the department head, then finance, then the CFO, but skips the CFO under $50k," or "changing a customer's credit limit needs two approvers from different teams," native Odoo runs out of road. People start approving over email and chat, the mail.thread chatter becomes the only record, and audit season turns into archaeology.
Reusable `approval.request.mixin` that adds multi-step approval state to any Odoo model — sales orders, vendor bills, journal entries, or fully custom models
Ordered `approval.step` configuration supporting sequential, parallel, and quorum (N-of-M) approval semantics per workflow
Approver resolution by specific `res.users`, `res.groups` role, dynamic manager-of-requester, or Python-domain-selected set
Conditional and threshold routing stored as domains evaluated against the source record (e.g. amount tiers, department, company) — no hard-coded branches
Downstream-action guards that block confirm/post/validate until required signatures are captured, raising a clear `UserError` otherwise
Full decision audit trail on `approval.request`: approver, timestamp, step, and comment for every action, mirrored to `mail.thread`
Approval Workflow Advanced is a build-to-order Odoo module that ECOSIRE designs, builds, and installs for your specific processes. Technically, it introduces a reusable approval engine layered onto Odoo's ORM: a configurable approval.workflow definition with ordered approval.step lines, each step carrying approver resolution (a specific res.users, a res.groups role, the dynamic manager-of-requester, or a domain-selected set), plus sequential/parallel/quorum semantics and optional conditional routing evaluated against the source record. An approval.request.mixin inherited into any target model — standard or custom — adds an approval_state selection field (draft/pending/approved/refused/cancelled), a computed next_approver_ids via @api.depends, and guard methods that block the downstream action (confirming, posting, validating) until the required signatures are captured.
Around that core we build the operator experience: approval.request records with a full decision audit trail (who, when, on which step, with comments), threshold and condition rules expressed as stored domains rather than hard-coded if branches, and escalation timers wired through Odoo's scheduled ir.cron so a stalled approval reminds or auto-escalates after N hours. Approvers act from a dedicated OWL/kanban dashboard, from the chatter activity, or via email; every state change writes to mail.thread for traceability. We enforce access with ir.model.access.csv and record rules so a user only ever sees the requests they raise or must decide, expose QWeb approval certificates for print/PDF, and surface the whole engine over Odoo's XML-RPC/JSON-RPC API so upstream systems can raise and query approvals programmatically. It is delivered clean across Odoo 17.0, 18.0, and 19.0, works on Community and Enterprise, and is designed so Enterprise-only dependencies are never assumed unless your edition already has them.
Because this is made to order, delivery follows a clear path: a scoping call to map your real approval matrices and target models, a fixed written quote, then a build on a staging copy of your database with UAT before anything touches production, followed by installation and a support window. Typical delivery is 2–4 weeks from confirmed scope. Pricing starts from $299 (indicative, single-company base scope); multi-company routing, deep localization of approval rules, integrations with external systems over the RPC API, and larger data-migration volume increase the quoted scope.
Needs enforceable spend controls — tiered approval thresholds on POs, vendor bills, and journal entries — with a complete audit trail for external auditors, not approvals scattered across email.
Runs Odoo day to day and wants one consistent approval engine across many models and departments instead of maintaining separate, inconsistent approval logic per app.
Wants the engine as a clean, documented addon they can extend — a mixin they can drop onto custom models, domain-based rules, and RPC hooks — rather than a black box they can't maintain.
Requires provable, tamper-evident sign-off: who approved what, when, and under which rule, with printable certificates and row-level access control on sensitive requests.
在 ecosire.com 上购买许可证并从您的帐户仪表板下载 Approval Workflow Advanced for Odoo 模块 ZIP。
将 ZIP 解压到服务器上的 Odoo 自定义插件文件夹中(或通过“应用程序”>“从 Odoo.sh / runbot 上的文件安装”上传)。
激活开发者模式,打开应用程序,单击更新应用程序列表,搜索 Approval Workflow Advanced for Odoo,然后按安装。
打开新菜单,粘贴您的 ECOSIRE 许可证密钥,连接任何外部凭据(Shopify、Amazon、Stripe 等),然后保存。
运行内置连接测试,同步前 10 条记录,并安排定期 cron。如果出现任何问题,请联系支持人员。
| 标准 | 伊科西尔 | 定制建造 | 竞争对手 | 奥杜本机 |
|---|---|---|---|---|
| Scope across models | One engine spanning any standard or custom model | Whatever you build, per model | Usually limited to the app's own model or generic requests | |
| Routing logic | Sequential, parallel, quorum, and threshold/conditional via stored domains | As coded — flexible but bespoke to maintain | Preset step types; limited conditional depth | |
| Approver resolution | User, group, manager-of-requester, or domain-selected set | Depends on your implementation | Often user/group only | |
| Audit & reporting | Full decision trail + chatter + QWeb certificates | Only if you build it | Basic history log | |
| Ownership & maintainability | Full source + git handover + docs, extensible mixin | You own it entirely, plus the maintenance burden | Vendor-controlled, closed to deep changes | |
| Fit to your process | Scoped and built to your real approval matrices | Fully custom but slow and costly to reach | You adapt your process to its assumptions | |
| Delivery model | Made to order, staging UAT + rollback, 2–4 weeks | Long internal build cycle | Instant install, then heavy configuration to fit | |
| Support & upgrades | Post-go-live window + optional version upgrades | Your team only | Vendor SLA if purchased |
No. Approval Workflow Advanced is built to order for your Odoo instance. After a scoping call we build it against your target models, edition, and approval matrices, test it on a staging copy of your database, then install it. There is no instant download — you receive a module tailored to your processes plus its source code.
Typical delivery is 2–4 weeks from confirmed scope. Simple single-company routing on standard models lands toward the shorter end; complex multi-company matrices, external integrations, or data migration extend the timeline. We agree the schedule in writing before work begins.
Pricing starts from $299 as an indicative single-company base scope. We hold a short scoping call to map your real approval flows and target models, then send a fixed written quote. Drivers such as multi-company routing, deep rule localization, RPC integrations, and data-migration volume adjust the final quoted price — you approve the fixed quote before we start.
We deliver clean builds for Odoo 17.0, 18.0, and 19.0 on both Community and Enterprise. The engine is designed not to assume Enterprise-only dependencies unless your edition already provides them, so it runs on Community without hidden requirements.
Every engagement includes a post-go-live support window for defect fixes and configuration help. Because you receive the full source and git repository, you can maintain and extend it yourself, or contract ECOSIRE for version upgrades (e.g. moving from 18.0 to 19.0) and enhancements as your processes evolve.
Yes. The core is a reusable `approval.request.mixin` that we inherit into any model — standard or custom-built — adding approval state, computed next-approver fields, and action guards. That is a primary reason teams choose a build-to-order engine over per-app native approvals.
Yes. Every decision writes an immutable trail on the `approval.request` record — approver, timestamp, step, and comment — mirrored into `mail.thread` chatter, with QWeb certificate reports for printable sign-off and record rules restricting who can view sensitive requests.
A centralized, configurable approval engine for Odoo that adds multi-step routing, live state tracking, and automation to any model. ECOSIRE scopes, builds, installs, and supports it for your instance — it is not an off-the-shelf download.