| Versions | 16.0 17.0 18.0 19.0 |
EH HR Platform Suite Installer
Install the complete EH HR Platform in one click, or pick modules a la carte.
Why this module
EH HR Platform Suite Installer
The whole platform in one click
Install this single module and Odoo pulls in all 35 EH HR Platform modules in dependency order: core, the workflow, approval, policy and notification engines, the attendance and leave flagships, and every feature module. No hand-picking, no missed dependencies.
Access granted, not just code deployed
A post-install hook grants the administrator the platform top-level groups, including the attendance and leave access ladders that define their own group hierarchies and install later. The hook is add-only and idempotent, so re-running it never strips or duplicates an existing grant.
A convenience, never a cage
This suite is a pure dependency list with no models, views, or data of its own. Prefer only payroll and leave? Install just those two modules; each pulls only what it needs. The bundle is there when you want everything at once, and out of your way when you do not.
Day in the life
From empty database to a working HR back office before lunch
You open Apps on a fresh Odoo 18 Community database and install EH HR Platform. Odoo resolves the dependency graph and brings in the core, the four engines, attendance, leave, overtime, appraisal, disciplinary, resignation, transfer, custody, insurance, gratuity, documents, reminders, loans, payroll, recruitment, skills, training, and the rest in the correct order. When the install finishes, the post-install hook has already granted you the HR admin, attendance officer, and leave officer groups, so the menus are live rather than hidden behind missing rights. You start configuring approval chains and leave types instead of chasing access errors. Later, a second company joins the group and you add only the modules that company needs, because every module stands on its own.
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.
The post-install hook adds platform groups to the administrator with an add-only command, so installing, upgrading, or re-running the hook never removes or duplicates an existing membership.
Attendance and leave declare their own group hierarchies and install after the core, so extending the core admin group does not retroactively reach a user who is already a member. The hook runs last, when every group exists, and grants them directly.
The group write goes through a compatibility shim that resolves the correct groups field and hook signature, which differ across Odoo series, so the same install path works without per-version edits.
The approval engine it deploys refuses a decision from anyone who is a subject of the request, and from anyone outside the authorized approver set for the current step, so a request that concerns you cannot be approved by you.
Overdue approval steps are escalated by a cron exactly once, guarded by a stored escalated flag and timestamp, so a long-pending request notifies approvers and admins without re-firing on every cron pass.
The hash-chained audit log appends under a Postgres transaction advisory lock so concurrent writers stay strictly ordered, and a verify-chain walk recomputes every row hash to detect tampering after the fact.
The state machine rejects a transition that is not allowed from the current state, forbids any transition out of a final state, and enforces the per-transition group authorization before the move is recorded.
What is inside
Built to do the job, end to end.
- A dependency list, nothing more. The module body is a manifest with a depends array of 35 platform modules and an empty data list. It ships no models, views, or records of its own, so it adds no runtime surface and nothing to maintain beyond the dependency graph.
- Post-install hook. A small post_init_hook grants the administrator the core admin, attendance officer, and leave officer groups, and registers the attendance and leave access ladders as their own dropdowns on the user form. It resolves each group by external id and skips any that is absent, so a partial environment will not raise.
- Compatibility shim. Group writes and dropdown setup route through eh_hr_compat helpers that paper over the groups field rename and hook signature changes between Odoo releases, keeping one install path across the supported series.
- The engines it deploys. Behind the convenience install sit four reusable engines: a workflow state machine with guarded transitions, an approval engine with sequential steps, authorized-approver checks, self-approval blocking and cron escalation, a policy engine, and a notification engine with per-recipient preferences and deduplicated sends.
- Coexistence proof. A shipped post-install test asserts the EH HR, EH Hero, and EH Account suites install side by side in one database without a model clash, an external-id collision, or a duplicate field on hr.employee or account.move.
Honest about the edges
What this does not do, so nothing surprises you.
- This module contains no features of its own. It is a meta-package whose only job is to install the 35 EH HR Platform modules and grant the administrator the platform groups. All capability lives in the modules it depends on.
- It targets Odoo 18 Community. It does not run on Odoo Enterprise editions and is not a drop-in replacement for the Enterprise HR apps.
- The post-install hook grants groups to the base administrator only. Other users receive access through the normal group assignment on the user form after install.
- Installing the bundle installs everything. If you want a minimal footprint, install the individual modules you need instead, since each one stands alone and pulls only its own dependencies.
- Uninstalling this meta-package does not uninstall the modules it pulled in. Remove the underlying modules individually if you want them gone.
Odoo 18 HR suite, Odoo HR platform, human resources bundle Odoo, one click HR install Odoo, Odoo attendance and leave, Odoo overtime management, Odoo gratuity end of service, Odoo appraisal disciplinary, Odoo employee documents reminders, Odoo loan salary advance, HR approval workflow engine Odoo, Odoo HR audit trail, Odoo recruitment skills training, Community HR meta package, ERP Heritage HR
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.
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.
Please log in to comment on this module