$ 170.57
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Community Apps Dependencies | Show |
| Lines of code | 7420 |
| Technical Name |
praetorx_flowforge_engine |
| License | OPL-1 |
| Website | https://praetorx.net |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Community Apps Dependencies | Show |
| Lines of code | 7420 |
| Technical Name |
praetorx_flowforge_engine |
| License | OPL-1 |
| Website | https://praetorx.net |
PraetorX FlowForge Engine
BPMN Process Execution for Odoo 19
Turn FlowForge diagrams into live process automation. Design a workflow, publish it, and let the engine route tasks to users, evaluate gateway conditions, execute Odoo methods, and collect form data — with a full portal for external users.
praetorx.net | Syntax & Sabotage
Core Features
Iterative BPMN token advancement with 500-step safety limit. Queue-based processing via background jobs. Tokens track position, state, and errors.
UserTasks appear in the Odoo systray as activities. Dynamic forms render 9 field types. Submissions become process variables.
Call any Odoo model method from a BPMN process. Create purchase orders, confirm sales, send emails — all triggered by process flow.
ExclusiveGateway evaluates conditions against process variables using safe_eval. Route by amount, role, department — any business logic.
External users complete tasks via /my/tasks without backend access. QWeb-rendered forms with validation, CSRF protection, and access tokens.
Record rules isolate data per company and user. ServiceTasks execute as process starter — never superuser. Portal users see only assigned tasks.
Supported BPMN Elements
| Element | Behavior |
|---|---|
| StartEvent | Auto-advance — creates token and begins process |
| EndEvent | Completes instance — marks process as done |
| UserTask | Pauses for human input — renders dynamic form |
| ServiceTask | Executes Odoo model method with parameter mapping |
| ExclusiveGateway | Condition-based routing with safe_eval |
| SequenceFlow | Connects elements — supports optional conditions |
Use Cases
Route purchase orders through department head → finance → CFO based on amount thresholds. Gateway conditions handle the logic.
Portal forms collect customer data. ServiceTasks create contacts, subscriptions, and welcome emails automatically.
Automate sales order → stock check → warehouse pick → shipping notification. ServiceTasks trigger Odoo workflows.
External vendors fill portal forms. Internal reviewers approve via task inbox. ServiceTask creates the vendor record on approval.
Screenshots
Process Engine
Running process instance with token tracking — see which elements have completed, which are active, and the full execution timeline.
Task Inbox
UserTask inbox with dynamic form rendering — selection fields, text inputs, checkboxes, and validation. Integrated with Odoo activities and chatter.
Knowledge Integration
Approved BPMN processes generate Knowledge articles with the full process flow, task details, and linked forms — auto-documented and always up to date.
Setup Guide
- Odoo 19.0 (Community or Enterprise)
- PraetorX FlowForge (Designer) — required dependency
- PraetorX Base — required dependency
portalmodule — for external task forms
No additional Python dependencies.
Install from the Odoo Apps menu. Search for "FlowForge Engine".
FlowForge Designer and PraetorX Base will be installed automatically as dependencies.
- Design a BPMN diagram in FlowForge (Designer)
- Navigate to FlowForge → Process Definitions
- Create a new definition, link it to your diagram
- The BPMN XML is parsed into an executable process graph
- Click "Start Instance" to launch a process
- Go to FlowForge → ServiceTask Configuration
- Map a BPMN ServiceTask ID to an Odoo model + method
- Define parameter mapping using
${variable}references - The method executes as the process starter (not superuser)
Engine User: Start process instances, complete tasks in inbox, view own instances.
Engine Manager: All User permissions + manage process definitions, configure ServiceTasks, view all instances, cancel/reassign tasks.
FAQ
/my/tasks. Forms are QWeb-rendered with CSRF protection and access tokens. No backend access required.error state with a traceback. Managers can cancel stuck instances or reassign blocked tasks.praetorx_flowforge, praetorx_base, and portal.Release History
v19.0.1.0.0 — March 2026
Initial Release for Odoo 19
- BPMN 2.0 XML parser — extracts executable process graphs
- Process definitions with version pinning
- Token-based execution engine (iterative, queue-based, 500-step limit)
- UserTask inbox with dynamic form rendering (9 field types)
- ServiceTask execution — call any Odoo model method
- ExclusiveGateway with safe_eval condition evaluation
- Portal task inbox for external users (/my/tasks)
- Odoo activity integration (systray badges)
- Multi-company record rules
- Background cron job for process advancement
You May Also Like
Made with ♥ by Syntax & Sabotage
Anbieter: Lars Weiler · Impressum · support@syntaxandsabotage.io
PraetorX FlowForge Engine
BPMN Process Execution for Odoo 19
Turn FlowForge diagrams into live process automation. Design a workflow in FlowForge (Designer), publish it as a process definition, and let the engine route tasks to users, evaluate gateway conditions, execute Odoo methods, and collect form data — with a full portal for external users.
Part of the PraetorX Enterprise Module Suite — https://praetorx.net
Table of Contents
Overview
FlowForge Engine extends FlowForge from a diagramming tool into a process automation platform. It parses BPMN 2.0 XML into executable process graphs and advances tokens through the process using an iterative, queue-based engine.
Design in FlowForge. Execute with Engine.
Token-Based Execution
- Iterative token advancement through the BPMN process graph
- 500-step safety limit prevents infinite loops
- Queue-based processing via background cron jobs
- Tokens track position, state, and errors across the process
- Process variables are carried through the entire execution
UserTask Inbox
- UserTasks appear in the Odoo systray as activities
- Dynamic form rendering — 9 field types from FlowForge forms
- Form submissions become process variables for downstream use
- Reassign, cancel, or complete tasks with one click
- Task history with timestamps and user tracking
ServiceTask Automation
- Call any Odoo model method from a BPMN process
- Parameter mapping with ${variable} references to process variables
- Examples: create purchase orders, confirm sales, send emails
- Executes as the process starter — never superuser
- Error handling with token error state and traceback
ExclusiveGateway Routing
- Condition-based routing using safe_eval
- Evaluate conditions against process variables
- Route by amount, role, department — any business logic
- Default flows for unmatched conditions
- Supports complex expressions
Portal Task Forms
- External users complete tasks at /my/tasks
- QWeb-rendered forms with client-side validation
- CSRF protection and access tokens
- No backend access required
- Ideal for: customer onboarding, vendor qualification, surveys
Security & Multi-Company
- Record rules isolate data per company and per user
- ServiceTasks execute as process starter — never superuser
- Portal users see only their assigned tasks
- Multi-company support out of the box
Supported BPMN Elements
Phase 1 element scope:
| Element | Behavior |
|---|---|
| StartEvent | Auto-advance — creates token, begins process |
| EndEvent | Completes instance — marks process as done |
| UserTask | Pauses for human input — renders dynamic form |
| ServiceTask | Executes Odoo model method with parameters |
| ExclusiveGw | Condition-based routing with safe_eval |
| SequenceFlow | Connects elements — supports conditions |
Additional elements (ParallelGateway, TimerEvent, etc.) are planned for future releases.
Prerequisites
- Odoo 19.0 (Community or Enterprise)
- PraetorX FlowForge (Designer) — required dependency
- PraetorX Base — required dependency
- Portal module — for external task forms
No additional Python dependencies required.
Installation
- Download from the Odoo App Store
- In Odoo, go to Apps → Update Apps List
- Search for "FlowForge Engine" and click Install
- FlowForge Designer and PraetorX Base are installed automatically as dependencies
Configuration
Publishing a Process
- Design a BPMN diagram in FlowForge (Designer)
- Navigate to FlowForge → Process Definitions
- Create a new definition, link it to your diagram
- The BPMN XML is parsed into an executable process graph
- Click "Start Instance" to launch a process
Configuring ServiceTasks
- Go to FlowForge → ServiceTask Configuration
- Map a BPMN ServiceTask element ID to an Odoo model + method
- Define parameter mapping using ${variable} references
- The method executes as the process starter (not superuser)
Example: map a ServiceTask to sale.order → action_confirm with ${order_id} as the record ID parameter.
User Permissions
Engine User:
- Start process instances
- Complete tasks in inbox
- View own instances
Engine Manager:
- All User permissions, plus:
- Manage process definitions
- Configure ServiceTasks
- View all instances
- Cancel or reassign tasks
To assign:
- Go to Settings → Users & Companies → Users
- Select a user
- Under Other, set FlowForge Engine access to User or Manager
Usage Guide
Starting a Process
- Go to FlowForge → Process Definitions
- Select a published definition
- Click "Start Instance"
- A token is created at the StartEvent and begins advancing
Completing UserTasks
- Check the systray badge for pending tasks
- Open the task from the inbox
- Fill in the dynamic form (fields from FlowForge form builder)
- Click Complete — form data becomes process variables
- The token advances to the next element
Portal Tasks
- External users log in to the portal
- Navigate to My Tasks (/my/tasks)
- Fill in the QWeb-rendered form
- Submit — data flows into the process as variables
Monitoring Instances
- Go to FlowForge → Process Instances
- View status: running, completed, cancelled, error
- Inspect tokens: position, state, error tracebacks
- Cancel stuck instances or reassign blocked tasks
API Reference
Models
- flowforge.process.definition — Published process with parsed BPMN graph
- flowforge.process.instance — Running process with variables and state
- flowforge.process.token — Token tracking position in the process graph
- flowforge.task.inbox — UserTask assignments with form data
- flowforge.service.task.config — ServiceTask model/method mapping
Companion Modules
- FlowForge Designer (required dependency, 49 EUR)
- Visual BPMN 2.0 editor — design the processes that Engine executes. Fullscreen editor, form builder, template library, version control. https://apps.odoo.com/apps/modules/19.0/praetorx_flowforge/
- FlowForge Knowledge (free bridge module)
- Embed FlowForge BPMN diagrams directly in Odoo Knowledge articles via a /flowforge slash command. Live SVG rendering with state badges. https://apps.odoo.com/apps/modules/19.0/praetorx_flowforge_knowledge/
- Vault (199 EUR)
- AI-powered document management with classification, routing, and retention. Model your document workflows in FlowForge, manage documents in Vault. https://apps.odoo.com/apps/modules/19.0/praetorx_vault/
Support
- Email: support@syntaxandsabotage.io
- 30-day email support included with purchase
- Lifetime updates for Odoo 19
- Website: https://praetorx.net
- Publisher: Syntax & Sabotage
License
Odoo Proprietary License v1.0 (OPL-1). One purchase per database. Source code included — no obfuscation.
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module
There are no ratings yet!
It’s a bit like giving your workflows teeth.
This is where diagrams stop being decoration.
FlowForge Engine actually runs your BPMN instead of just looking nice in a Confluence page. You design a flow, hit publish, and suddenly tasks move, decisions happen, things execute — inside Odoo.
No more “process defined, but ignored”. This thing enforces it.
Gateways route properly, users get what they need, methods fire, data comes back — and even external users can play along via portal without breaking everything.
It’s a bit like giving your workflows teeth.
If you’re serious about process (not just drawing boxes), this is where it gets real.