| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 5664 |
| Technical Name |
power_workflow |
| License | AGPL-3 |
| Website | https://github.com/power-workflow |
| Versions | 16.0 17.0 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 5664 |
| Technical Name |
power_workflow |
| License | AGPL-3 |
| Website | https://github.com/power-workflow |
| Versions | 16.0 17.0 18.0 19.0 |
Power Workflow
Visual Workflow Engine for Odoo 18
Power Workflow is a comprehensive workflow engine that provides enterprise-grade visual workflow capabilities for Odoo 18. Built with modern technologies (OWL 2.0 + LogicFlow), it enables users to create and manage complex business processes through an intuitive drag-and-drop designer without any coding.
Key Features
Visual Designer
Intuitive drag-and-drop workflow designer with real-time validation. Create complex workflows visually without coding knowledge.
Conditional Routing
Exclusive gateway with Python expression-based conditions. Route workflows dynamically based on record data or business rules.
Parallel Processing
Parallel gateway for concurrent task execution. Multiple approvers can work simultaneously on different branches.
Script & Service Tasks
Automate business logic with script tasks. Execute Python code or call model methods during workflow execution.
Task Management
Complete task lifecycle: claim, transfer, delegate, approve, reject. Multi-instance tasks for sequential or parallel approvals.
Deep Integration
Seamless integration with Odoo models. Auto-start workflows on record creation, display workflow panel in form views.
Supported Node Types
| Node Type | Description | Use Case |
|---|---|---|
| Start | Workflow entry point | Defines where the workflow begins |
| Approval | User task requiring action | Approval requests, reviews, confirmations |
| Condition | Exclusive gateway with conditions | Branching based on field values, expressions |
| Parallel | Parallel gateway | Concurrent processing, multi-party approval |
| Script | Automated script execution | Data transformation, calculations, API calls |
| Service | Model method call | Trigger model methods, business logic |
| Delay | Timer-based wait | Scheduled reminders, timeout handling |
| End | Workflow termination | Defines workflow completion |
Screenshots
Workflow Management
Manage all workflow definitions in one place. Create, edit, publish, and version your workflows.
Model Binding
Bind workflows to any Odoo model. Configure auto-start conditions and field mappings.
Workflow Panel in Form View
Real-time workflow status display in form views. Users can see current progress, complete tasks, and view history.
Operation Guide
1. Create Workflow Definition
- Navigate to Power Workflow â Design â Workflow Definitions
- Click New to create a new workflow definition
- Enter a name for your workflow
- Optionally configure variables to initialize workflow state
- Click Design to open the visual designer
2. Design Workflow
- Add Nodes: Drag elements from the left palette onto the canvas
- Start - Workflow entry point (required)
- Approval - User approval task
- Condition - Branching logic
- Parallel - Parallel execution
- Script - Python script execution
- Service - Model method call
- Delay - Timer delay
- End - Workflow end (required)
- Connect Nodes: Click and drag from node anchors to create connections
- Configure Nodes: Select a node to edit properties in the right panel
- Set node name
- Configure assignees for approval nodes
- Add conditions for outgoing edges from condition nodes
- Write scripts for script nodes
- Click Validate to check workflow correctness
- Click Save to save the workflow definition
3. Configure Condition Edges
For edges coming from a Condition node:
- Click on the edge to select it
- In the right panel, set the Display Name (shown on the edge)
- Set the Expression - a Python expression evaluated at runtime:
last_result == 'accept'- Check approval resultrecord.state == 'done'- Check record fieldrecord.amount > 1000- Check numeric value
- One edge can be left without condition as the default path
4. Publish Workflow
- Return to the Workflow Definitions list
- Find your workflow and click Publish
- The workflow is now active and can be bound to models
- To make changes, create a new version from the definition
5. Create Workflow Binding
- Navigate to Power Workflow â Configuration â Workflow Bindings
- Click New to create a binding
- Select the Workflow Definition
- Select the Target Model (e.g., Sale Order, Purchase Order)
- Configure Domain Filter if needed to limit which records trigger the workflow
- Enable Auto Start to automatically start workflow on record creation
- Configure which action buttons to show in the workflow panel
6. Using Workflow Panel
When a workflow is bound to a model, a workflow panel appears in the form view:
- View Progress: See current workflow status and active tasks
- Claim Task: Claim an unassigned task
- Approve/Reject: Complete approval tasks with comments
- Transfer: Transfer task to another user
- Delegate: Delegate task to another user
- View History: See all workflow actions and comments
Technical Stack
Frontend
- ✓ OWL 2.0 Components
- ✓ LogicFlow Visualization
- ✓ Bootstrap 5 Styling
- ✓ Responsive Design
Backend
- ✓ Native Odoo 18 Models
- ✓ JSON-based Graph Engine
- ✓ Python Expression Evaluation
- ✓ Mail Thread Integration
Installation
- Copy the
power_workflowmodule to your Odoo addons directory - Update the app list in Odoo
- Search for "Power Workflow" and click Install
- Navigate to Power Workflow menu to start creating workflows
Changelog
v1.0.0 Initial Release
- Visual workflow designer with drag-and-drop interface
- Support for Start, Approval, Condition, Parallel, Script, Service, Delay, End nodes
- Exclusive gateway with Python expression-based conditions
- Parallel gateway for concurrent task execution
- Workflow binding to any Odoo model
- Auto-start workflow on record creation
- Workflow panel in form views with real-time status
- Task actions: Approve, Reject, Transfer, Delegate, Claim
- Workflow history tracking
- Multi-instance task support (sequential, parallel, any, vote)
- Script tasks for automation
- Delay tasks with scheduled execution
- Workflow termination when any branch reaches end
- Deep integration with Odoo mail thread for notifications
v1.0.1 Bug Fix
- Fixed: Workflow panel button no longer shows on views without workflow binding
v1.0.2 Price Update
- Price adjusted from $20 to $20
- Fixed: Added '*' prop support to WorkflowDrawer for compatibility with additional props
v1.0.3 View Update
- Changed: Updated view navigation from 'tree' to 'list' for Odoo 18 compatibility
v1.0.4 Price Update
- Price adjusted from $30 to $40
Need Help?
For issues and feature requests, please contact the module developer.
Please log in to comment on this module