v 16.0 Third Party 1054
Download for v 16.0 Deploy on Odoo.sh
Odoo Online
On Premise
Odoo Apps Dependencies Discuss (mail)
Lines of code 1804
Technical Name base_tier_validation
Versions 10.0 12.0 9.0 11.0 14.0 15.0 16.0
You bought this module and need support? Click here!

Base Tier Validation

Mature License: AGPL-3 OCA/server-ux Translate me on Weblate Try me on Runboat

Validating some operations is a common need across different areas in a company and sometimes it also involves several people and stages in the process. With this module you will be able to define your custom validation workflows for any Odoo document.

This module does not provide a functionality by itself but an abstract model to implement a validation process based on tiers on other models (e.g. purchase orders, sales orders, budgets, expenses…).

Note: To be able to use this module in a new model you will need some development.

See purchase_tier_validation as an example of implementation.

Table of contents


To configure this module, you need to:

  1. Go to Settings > Technical > Tier Validations > Tier Definition.
  2. Create as many tiers as you want for any model having tier validation functionality.


  • If check Notify Reviewers on Creation, all possible reviewers will be notified by email when this definition is triggered.
  • If check Comment, reviewers can comment after click Validate or Reject.
  • If check Approve by sequence, reviewers is forced to review by specified sequence.

Known issues / Roadmap

This is the list of known issues for this module. Any proposal for improvement will be very valuable.

  • Issue:

    When using approve_sequence option in any tier.definition there can be inconsistencies in the systray notifications.


    Field can_review in tier.review is used to filter out, in the systray notifications, the reviews a user can approve. This can_review field is updated in the database in method review_user_count, this can make it very inconsistent for databases with a lot of users and recurring updates that can change the expected behavior.

  • Migration to 15.0:

    The parameter _tier_validation_manual_config will become False, on 14.0, the default value is True, as the change is applied after the migration. In order to use the new behavior we need to modify the value on our expected model.

Changelog (2020-11-19)

Migrated to Odoo 14. (2020-08-30)


  • When using approve_sequence option in any tier.definition there can be inconsistencies in the systray notifications
  • When using approve_sequence, still not approve only the needed sequence, but also other sequence for the same approver (2019-12-02)


  • Show comment on Reviews Table.
  • Edit notification with approve_sequence. (2019-11-27)

New features:

  • Add comment on Reviews Table.
  • Approve by sequence. (2019-11-26)


  • Remove message_subscribe_users (2019-11-25)

New features:

  • Notify reviewers (2019-07-08)


  • Singleton error (2019-12-02)


  • Edit Reviews Table (2019-05-29)


  • Edit drop-down style width and position (2019-05-28)

New features:

  • Pass parameters as functions.
  • Add Systray. (2019-02-18)

Migrated to Odoo 12. (2018-05-09)

Migrated to Odoo 11. (2018-03-26)

Migrated to Odoo 10. (2017-12-02)

First version.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.



  • ForgeFlow



This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainer:


This module is part of the OCA/server-ux project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.