Instant Digital Access Clean Source Code APPSGATE Support

Flexible Approvals

$134.35

Configurable multi-step approvals on any model, with SLA, escalation, dashboards and an approval log

Select Odoo Version: Odoo 20.0
Inquire / Request Demo via WhatsApp
Version: v18.0v19.0v20.0 Official APPSGATE flex_approval
You bought this module and need support? Click here! or WhatsApp Support
SKU: flex_approval-v20.0 Category: Tags: , ,

Description

APPSGATE · Odoo 20

Flexible Approvals

Multi-step approvals on any model of any app, without code. Write the trigger as a filter, pick the buttons to hold
back, draw the route, and get SLAs, escalation, dashboards and a full audit trail.

Any modelVisual designerRoutes & conditionsSLA & escalationApprove from emailDashboardsCommunity & Enterprise

A purchase order waiting for approval, with the approval bar above the form

At a glance

One approval engine for your whole Odoo

No per-app modules and nothing hard-wired to amounts: the same engine approves purchase orders, quotations, vendor bills, expenses, time off or your own documents, each with its own rules.

🧩

Any model, any app

Purchase, sales, invoices, expenses, time off, CRM, inventory or your own custom models. No glue modules and no code.

🔎

The trigger is a filter

Write it like any Odoo filter: “Total above 5,000”, a partner, a category, a stage or a custom field.

✋

Buttons held back

Pick the buttons to hold back, such as Confirm Order. They are hidden and refused, even when called through the API, until the record is approved.

🔀

Routes and steps

Different paths for different records, with steps for the manager, a record field, a group (any, quorum or all) or named users.

⏱

SLA and escalation

Every step has an SLA. Overdue steps escalate to the approver’s manager or send reminders automatically.

📊

Dashboards and audit trail

Personal and company dashboards, reports, an Approval tab on every record and every event in the chatter.

How it works

From rule to decision in eight steps

Follow a purchase approval from its configuration to the dashboards. Each step shows the real screens.

1
Configure

2
Design

3
Send

4
Decide

5
Follow

6
Queue

7
Track

8
Measure

1
Configure
Administrator

Say when approval is needed, and what it holds back

Pick the model, write the trigger as a normal filter and choose the buttons that stay hidden until the record is approved. Optionally list the fields that must be filled before sending, and set a note for the requester.

  • ✓Trigger on any field of the record, with the full Odoo filter editor
  • ✓Buttons to hold back are picked from the real buttons of the form
  • ✓Setup hints warn about conflicts with built-in approvals, such as purchase double validation



A purchase approval workflow: trigger, buttons to hold back and setup hints

2
Design
Administrator

Draw the route on a visual designer

Routes are tried from left to right: the first one whose filter matches the record is used. Each route is a chain of steps, and each step decides who approves, how many must agree, its SLA and what may happen along the way.

  • ✓Approvers: the user’s manager, a user field of the record, an approver group or specific users
  • ✓Group steps: any one member, a quorum or everyone
  • ✓Conditional steps, transfer, additional approvers, before and after callbacks, approve from email



The approval designer with two routes and their steps

3
Send
Requester

One button on the record: Send for Approval

A record that matches the trigger shows the approval bar above the form. The held-back buttons are gone, and the requester sees the steps ahead before sending. Sending snapshots the route, so later edits to the workflow never change a request in progress.

  • ✓Preview the journey before sending
  • ✓Required fields are checked first and highlighted on the form
  • ✓Records that do not match the trigger are never touched



A purchase order that needs approval, with the Send for Approval button

4
Decide
Approver

Approve or reject right on the record

Approvers see the status, the SLA and the whole flow at a glance, and decide with one click. Rejecting asks for a reason, picked from your list or typed. When the last step is approved, the held-back buttons come back.

  • ✓Approve, Reject, Withdraw and Journey buttons where the work happens
  • ✓Transfer, add an approver or reassign when the step allows it
  • ✓The record is locked while it is pending, or the request restarts when it is edited (your choice)



A purchase order waiting for the general manager

Waiting at step 3 of 3, past its SLA


The rejection dialog with a reason

Rejecting always comes with a reason

5
Follow
Everyone

Every request tells its own story

The journey shows who approved what and when, who is still pending, and what happens next. The Approval tab on the record keeps the full summary, with response times, and every event is logged in the chatter.

  • ✓Timeline with decisions, comments, SLA badges and the step still to come
  • ✓Response time per approver, and SLA met or breached per step
  • ✓Delegations, transfers and escalations are shown as such



The approval journey of a purchase order

Approval journey


The Approval tab on a purchase order

Approval tab on the record

6
Queue
Approver

A clear queue for every approver

The To Approve inbox lists what waits for you, grouped by document type, with the SLA status. A bell in the top bar brings new requests to you, and approvers can also decide straight from the email.

  • ✓Inbox with SLA badges: on track, at risk, breached
  • ✓Approval bell with its own notifications, separate from activities
  • ✓Approve or reject from the email with secure one-time links (per step)



The To Approve inbox grouped by document type

To Approve inbox


The approval notification bell

Approval notifications

7
Track
Everyone

Approval status right in your lists

Every list of a gated model gets an Approval column and the next approver, with filters for records waiting for approval. Administrators see every request across all apps in one place.

  • ✓Approval badge and next approver on the standard list views
  • ✓Filters: waiting for my approval, needs approval, in approval, approved, rejected
  • ✓All requests, with SLA and current step, in one list



Purchase list with the Approval and Next approver columns

Status on the standard list


All pending requests across apps

All requests, all apps

8
Measure
Manager

Dashboards that show where approvals get stuck

A personal dashboard for each approver and a company dashboard for managers: volumes, outcomes, approval rate, time to decision, SLA compliance, backlog aging and step bottlenecks, for 7, 30 or 90 days.

  • ✓My Approvals: my queue, my decisions and my response time against the team
  • ✓Approval Analytics: trends, outcome mix, backlog aging and slowest steps
  • ✓Pivot and graph reports on requests, steps and approvers



The personal approvals dashboard

My Approvals


The company approval analytics dashboard

Approval Analytics

Rules built in

Controls auditors ask for

No self-approval

The requester cannot approve their own request.

Approval follows the values

An approval is valid for the fields the trigger looks at; if they change, a new approval is needed.

Edits during approval

Either lock the record, restart the request, or keep it going on the edited values.

Approve once

Optionally, someone who approved an earlier step counts for later steps too.

Fallback approver

Requests can still be sent when no step has an eligible approver.

Stage gates

Going back to a chosen stage voids the approval, for document lifecycles.

Reports

Every decision, measurable

Pivot and graph reports on requests, steps and approvers: time to decision, SLA breaches and outcomes by workflow and route.



Workflow analysis pivot: requests, time to decision and SLA breaches by workflow and route

Security

Two simple roles

RoleCan
UserEvery internal user: request approvals, approve what is assigned to them, see their own dashboard and requests.
AdministratorConfigure workflows, approver groups and delegations; see every request and the company dashboard.

Requests are visible to the requester and to
anyone who is or was an approver. Decisions lock the request to prevent double approvals.

Getting started

Your first workflow in four steps

01

Install

Install Flexible Approvals; every internal user can request approvals right away.

02

Set up approvers

Create approver groups and set each user’s approval manager.

03

Create a workflow

Pick the model, write the trigger filter and the buttons to hold back.

04

Design and activate

Add routes and steps on the designer, test the workflow, then activate it.

Technical notes

Built the Odoo way

  • ✓Odoo 20 Community and Enterprise; depends only on mail and bus.
  • ✓Buttons are held back by hooks installed at runtime (the technique Odoo Studio approvals use), so they apply to every caller, not only the form.
  • ✓The approval bar and the Approval tab are added without changing your models; the tab is a generated view extension.
  • ✓Workflows are versioned: pending requests keep their route, and Update Pending Records moves them to a new version when you choose.
  • ✓SLA escalation runs every 15 minutes, once per step.
  • ✓Approver groups can have different members per company.
  • ✓Ships with automated tests and browser tours.

APPSGATE

Need help designing your approval policy?

Custom approver types, integrations or a guided rollout across your apps: we are happy to help.

www.appsgate.ae

Module Technical Manifest (__manifest__.py)

Module NameFlexible Approvals
Technical Nameflex_approval
Odoo VersionOdoo 20.0
AuthorAPPSGATE INFORMATION TECHNOLOGY L.L.C.
Websitehttps://appsgate.ae/
Support Emailinfo@appsgate.ae
LicenseOPL-1 (Odoo Proprietary License v1.0)
SummaryConfigurable multi-step approvals on any model, with SLA, escalation, dashboards and an approval log

Reviews

There are no reviews yet.

Be the first to review “Flexible Approvals”

Your email address will not be published. Required fields are marked *

Odoo Proprietary License v1.0 (OPL-1)

This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from APPSGATE INFORMATION TECHNOLOGY L.L.C. or via the official APPSGATE Store / Odoo Apps Store.

  • 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.
  • Need custom licensing or enterprise multi-database deployment? Contact info@appsgate.ae.