Skip to main content

ONe-HR Administration

The Odoo 17 Web App is the backbone of ONe-HR. Every record the mobile app reads or writes — employees, rates, leave balances, approver chains, loan ledgers, payroll transactions — lives here. This section documents the HR admin side: what HR personnel, compensation specialists, and MSD administrators do in the web app.

Audience

HR Administrators, Compensation & Benefits specialists, approvers (for subordinate setup), and MSD Administrators.

Architecture note

┌──────────────────────────────┐
│ ONe-HR Mobile App │
│ (iOS + Android) │
│ │
│ • Employee self-service │
│ • File OT / leave / OB │
│ • Payslip, attendance │
│ • Approver actions │
└──────────────┬────────────────┘
│ REST/JSON-RPC

┌──────────────────────────────┐
│ Odoo 17 — hr17 module │
│ one-hr.uaagi-uno.com │
│ │
│ • Employee master │
│ • Compensation & rates │
│ • Leave master & balances │
│ • Loan ledger │
│ • Payroll computation │
│ • Compliance tables │
└───────────────────────────────┘

The mobile app does not maintain its own data. It is a thin front-end that renders and mutates records managed on the web side.

Multi-company & Business Units

A single ONe-HR install supports multiple UAAGI Business Units (distributors, dealers, and corporate functions) via Odoo's multi-company feature. Each Business Unit is a separate res.company record, and a system-wide ir.rule on every HR model scopes reads and writes by company_id:

domain: ['|', ('company_id', '=', False), ('company_id', 'in', company_ids)]

In practice:

  • An HR admin logged into "UAAGI Distributor" sees only that company's employees, leaves, payroll, etc.
  • An MSD administrator switched to multiple companies sees a unioned view.
  • Cross-company approvers (common for exec subordinates) are handled via the read-only hr.all.employee mirror, which is deliberately not scoped by ir.rule — so approver dropdowns can reach employees across BUs even when the form record itself is BU-scoped.

Key BU-scoped fields on res.company (from models/res_company.py):

FieldPurpose
holiday_idsDeclared holidays specific to this BU
work_days_per_yearUsed in the monthly→daily rate cascade on the employee form
short_nameShort company code
inet_host, inet_folderiNet Crystal Clear integration for printed forms (ID cards, Authority to Deduct)

The module installs under the standard Odoo Human Resource top-level menu with two custom sub-menus:

  • Maintenance
    • EmployeesNon-Executives / Executives / Org Chart
    • Government — SSS / PhilHealth / WHT / HDMF / Declared Holidays tables
    • Company — BU-level configuration
  • Tasks — admin task dispatch (payroll, leave reset, etc.)

The Executives menu is restricted to the hr_executive_processor and msd_administrators groups. Everyone else manages only Non-Executives.

User groups

GroupPurpose
hr.group_hr_userStandard Odoo HR user
hr17.hr_compen_benCan see and edit the Compensation & Benefits tab
hr17.hr_executive_processorCan see and edit executive employee records
hr17.msd_administratorsFull system control — MSD personnel

These are assigned on the standard Settings ▸ Users & Companies ▸ Users form, under Access Rights.

Guides

  • Employees — create and maintain employee records, employment status, personal info, IDs, education, signatures, documents.
  • Compensation & Benefits — rates, COLA, allowances, mandatory deductions, the monthly→daily cascade, rates history, Other Benefits.
  • Leave Management — leave types, balances, filing, email approval, reset, cancellation.
  • Loans & Deductions — loan types, creating loans, deduction schedule, Authority to Deduct report.
  • Overtime & Official Business — OT and OB flows, the lunch-break deduction rule.
  • Organization — divisions, departments, approver hierarchies (leave/OB/OT), subordinate map, the executive flag.
  • Compliance Tables — SSS brackets, PhilHealth, HDMF, WHT, declared holidays, filing policies, subsidies.
  • Payroll Processing — Non-Executive vs Executive wizards, supplemental entries, lunch-break overrides.