OdooWiki OCA HUB

Partner Tier Validation

partner_tier_validation folder_open OCA/tier-validation open_in_new
Contact License: AGPL-3

Adds an approval workflow to Partners. The default rule requires new company Contacts to be approved before they can be used.

The rule can be extended to new non-company contact, but beware that may cause issues with automatically created new contacts, such as the ones generated when processing incoming emails.

If the 'Is Company' or 'Parent' field changes then the contact is Request for approval.

For this, the new Contact record is kept as "Archived" until it is approved.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Adds an approval workflow to Contacts so that new or changed company contacts must be reviewed and approved before they can be used. Reviewers can find contacts waiting for their approval from a dedicated filter.

This module brings the tier validation approval process to Contacts (res.partner). A pre-configured approval rule named "Validate New Company" is shipped but is inactive by default; when enabled, it requires any contact marked as a company to be reviewed by users in the internal user group before it is considered approved.

  • Contacts move through stages: they start in a draft/cancelled state and become confirmed once approved. The approval buttons appear in the contact form header, next to the stage field.
  • If certain key fields are changed on a contact — such as the company type, parent contact, VAT number, state, country, fiscal position, or the receivable/payable accounts — the contact is sent back to the default stage and the approval process is restarted.
  • A new filter "Needs my Approval" is added to the Contacts search view, letting a reviewer quickly list the contacts waiting for their approval.
  • The module also makes res.partner available as a model that can be selected when configuring tier validation rules, so administrators can create their own approval rules for contacts.

It builds on the Contacts, tier validation, and partner stage modules, and touches the res.partner and tier.definition models.

Models and fields (2)
  • res.partner · new model
  • tier.definition · extends an existing model

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 5 confirmed, 4 with no information of 9 versions.

Sources · Odoo 19.0

Confirmed on 2026-11-03 in branch 19.0 of OCA/tier-validation.

terminal Installation and usage

OCA documentation · Odoo 19.0

This module depends on base_tier_validation. You can find it at OCA/server-ux

Before using, check Contact Stages configuration to ensure that the default stage has the "Related State" field set to "To Approve". For example, having the "Draft" stage the default ensures this.

A validation exception needs to be defined if you want to be able to change the stage after validation and then make the contact available.

A regular user creates a new Contact and sends it for approval:

  • Create a Contact triggering at least one "Tier Definition". The Contact will be in Draft state and marked as Archived until approved.
  • Click on Request Validation button.
  • In the Reviews section, at the bottom of the form, inspect the pending reviews and their status.

The approver reviews Contacts to approve:

  • Navigate to the Contacts app, and select the filter "Needs my Approval"
  • Open the Contact form to approve. It will display a "This Records needs to be validated" banner, with "Validate" and "Reject" options.
  • The approver can change the stage to "Active". This will make the record available to be used.

The Approve/Reject actions do not automatically change the State. This could be a future improvement.

No verified information in OCA: Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.