Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Appraisal
  3. EH HR Appraisal v 18.0
  4. Sales Conditions FAQ

EH HR Appraisal

by ERP Heritage https://erpheritage.com.au
Odoo
v 18.0 Third Party 29
Download for v 18.0 Deploy on Odoo.sh
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Versions 16.0 17.0 18.0 19.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Employees (hr)
• Discuss (mail)
Community Apps Dependencies Show
• EH HR Compatibility
• EH HR Platform Core
• EH HR Workflow Engine
Lines of code 1587
Technical Name eh_hr_appraisal
LicenseLGPL-3
Websitehttps://erpheritage.com.au
Versions 16.0 17.0 18.0 19.0
ERP Heritage · HR Platform
ERP Heritage . HR Platform

EH HR Appraisal

Weighted-goal performance reviews with 360 feedback, on the audited HR Platform workflow engine.

Free · LGPL-3v 1.0.0LGPL-3v1.0.0
Weighted goal scoring
360 degree feedback
Reusable goal templates
Data-defined workflow
Hash-chained audit trail

Why this module

EH HR Appraisal

Composed, not reinvented

Stands on the platform engines

The appraisal model owns no state-machine, approval, or audit code of its own. It composes the shared workflow, audit, and company-scope mixins, so transitions, the tamper-evident log, and multi-company safety behave exactly like every module beside it.

Honest scoring

Only finalised input counts

The goal score is a true weighted average of rating times weight over total weight, and the 360 score averages only feedback marked submitted. Drafts a rater is still editing never move the number, so the figure reflects locked-in input, not work in progress.

Configure, do not code

Workflow steps are data

Draft, in progress, completed, and cancelled and the transitions between them come from a workflow definition, not hard-coded Python. Each transition is gated to the HR manager group, and final states refuse any further move.

Day in the life

An annual review cycle, start to close

HR builds an Annual Review template once with weighted goals like Delivery and Teamwork. At cycle start, the generate-for-period service opens one draft appraisal per active employee, skipping anyone who already has one for that exact period, so a re-run creates nothing. A manager opens an appraisal, applies the template to drop the goals in, rates each one, and the weighted goal score computes live. Peers, the manager, the employee, and direct reports add 360 feedback; the average updates only as each entry is submitted. The manager starts the review, sets an overall rating and written assessment, and completes it. Every state change and every edit to the tracked fields lands in the hash-chained audit log, and once completed the record is final and cannot be transitioned again.

Edge cases

The cases most modules quietly ignore.

In the shipped code today, each one a place where a cheaper module silently does the wrong thing.

Idempotent generation

The whole-company generator guards each employee with a search_count on employee plus exact date_from and date_to before creating, so re-running the same period opens zero duplicates and the call returns the count actually created.

Final-state lock

Completed and cancelled are marked is_final in the workflow definition. The engine refuses any further transition from a final state, even one a misconfigured definition declares, so a closed appraisal cannot be silently reopened.

Manager-gated transitions

Start, complete, and cancel are each restricted to the HR manager group. A user outside the allowed groups, and not an admin, is rejected with a clear error rather than advancing the record.

Submitted-only aggregation

The 360 score and feedback count include only rows where submitted is ticked. A rating of 5 left in draft is ignored until the rater finalises it, so the headline number never leaks unfinished input.

Hash-chained audit appends

State, employee, manager, dates, and overall rating changes append to an append-only log where each row hashes the previous row. A Postgres transaction-scoped advisory lock serialises appends so concurrent writes cannot fork the chain, and verify_chain walks it to catch any after-the-fact edit.

Strict multi-company

Every appraisal carries a required company_id defaulting to the active company. Writing a record into a company the user does not belong to is refused, and any audited cross-company override is recorded with the full affected record id list.

Date integrity

A database CHECK constraint enforces date_to on or after date_from, and a goal or feedback rating is constrained to 0 through 5 at the database level, so bad ranges are rejected by Postgres, not just the UI.

Template top-up

Applying a template creates its goal lines on the appraisal without clearing goals already entered, so a template can top up a partly filled review instead of overwriting a manager's work.

What is inside

Built to do the job, end to end.

  • Models this module adds. eh.hr.appraisal, eh.hr.appraisal.goal, eh.hr.appraisal.feedback, eh.hr.appraisal.template, and eh.hr.appraisal.template.goal. The appraisal record composes the workflow, audited, and company-aware mixins plus mail.thread.
  • Scoring and feedback. A stored weighted goal score over goal rating and weight, a stored 360 feedback score and count across self, manager, peer, direct report, and external raters, plus a 1 to 5 overall rating and separate employee and manager written assessments.
  • Workflow and generation. A data-defined draft to in progress to completed or cancelled workflow with manager-gated transitions and final-state locking, a yearly APR sequence, and a registered service that opens one appraisal per employee for a period, idempotently and optionally scoped to a company.
  • Built on. eh_hr_core, eh_hr_compat, eh_hr_engine_workflow, and standard Odoo hr. It contributes views, a Talent menu, and per-role access rules for admin, manager, and self-service employee groups.

Honest about the edges

What this does not do, so nothing surprises you.

  • The whole-company appraisal generator is a service method invoked by a caller or another module, not a scheduled job. This module ships no cron, so opening a cycle is a deliberate action rather than an automatic one.
  • The workflow defines no approval-gated transition, so this module does not route appraisals through an approval chain. Start, complete, and cancel advance directly, gated by the HR manager group.
  • 360 feedback rows are entered against the appraisal and do not enforce one entry per rater or invite raters through a portal. Identity and de-duplication of raters are left to the people running the cycle.
  • The overall rating is set by the reviewer and is independent of the computed goal and feedback scores. The module surfaces both figures but does not auto-derive the overall rating from them.
  • It targets Odoo 18 Community and depends on the EH HR Platform core, compatibility, and workflow engine modules, which install alongside it.
Search

Odoo 18 appraisal, Odoo performance review, employee appraisal Odoo Community, weighted goal scoring, 360 degree feedback Odoo, performance management Odoo, appraisal template, review cycle generator, self assessment manager review, HR audit trail, multi-company HR Odoo, Odoo 18 Community HR, goal setting and rating, workflow driven appraisal, ERP Heritage HR Platform

Work with ERP Heritage

Need this fitted to the way you work?

ERP Heritage delivers end to end Odoo work: Odoo Implementation, Customization and Development, Integration, Migration, Consultation, Support and Training. We help teams put this module into production, shape it to their process, and keep it running.

Build and tailor
Odoo Implementation, Customization and Development, scoped to your workflow.
Connect and move
Odoo Integration and Migration across systems and Odoo versions.
Run and support
Odoo Support and Training so your team stays productive after go live.
Plan and advise
Odoo Consultation and ERP Consulting, from discovery to roadmap.

We work with businesses across Australia (Melbourne, Sydney, Brisbane, Perth, Adelaide, Canberra) and the Middle East (Dubai, Abu Dhabi, Riyadh, Jeddah, Doha, Kuwait City, Muscat). Start a conversation at erpheritage.com.au or email info@erpheritage.com.au.

Languages

Available in 19 languages

The interface ships translated out of the box. Switch language in Odoo and the fields, menus, and messages follow.

ArabicChinese (Simplified)Chinese (Traditional)DutchFrenchGermanHindiIndonesianItalianJapaneseKoreanPolishPortuguese (Brazil)RussianSpanishSwedishThaiTurkishVietnamese
ERP Heritage

Production-grade Odoo HR, built to an engineering bar and documented honestly. Support: info@erpheritage.com.au
Developed by Odoo Consultant Melbourne • LinkedIn

v1.0.0 · LGPL-3 · Odoo 18 Community

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.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with