The Human Resources (HR) department is essential in every organization, as it oversees employee management and related processes. It handles a wide range of tasks simultaneously, making its operations complex. To ensure the company remains efficient, resilient, and profitable, the HR team must navigate numerous challenges and implement strategic measures.
The Human Resources (HR) department is responsible for everything from employee management to mitigating company risks. Manually handling HR tasks is time-consuming, leading to stress, increased workload, and a higher chance of errors. However, implementing HR software can significantly improve efficiency. Open HRMS, with its extensive features, streamlines HR operations by automating processes, reducing workload, and enhancing productivity. Additionally, it ensures all organizational data is securely stored in a digital format.
The success and longevity of an organization depend on maintaining a strong and healthy relationship between employees and management. Regardless of the company's size, mutual trust and concern foster a positive work environment, ultimately driving business growth and expansion.
In this blog, we will explore how HR-related tasks can be efficiently managed using a single software solution.
We are introducing our module, "ohrms_core," designed to handle various HR-related functionalities efficiently.

The "ohrms_core" module includes a comprehensive suite of HR management features, such as:
* Core OpenHRMS: The main module of Open HRMS
* Payroll & Accounting: Payroll management, Payroll Accounting
* Employee Management: Employee records, Employee History, Branch Transfer
* HR Operations: Expense tracking, Service Requests, Shift Management
* Compliance & Legal: Managing cases and further datas
* GOSI, WPS Report, Law Suit Management
* Employee Benefits: Salary Advance, Loan Management, Gratuity, Insurance Management
* Performance & Engagement: Employee Appraisal, Employee Appreciation, Announcements
* Checklists & Compliance: Entry and Exit Checklist, Employee Checklist
* Security & Monitoring: Biometric Device Integration
* Leave & Resignation: Vacation Management, Resignation
* Document & Expiry Management: Employee Documents, Document Expiry, Visa Expiry
* Asset & Custody: Asset Custody
* Disciplinary & Attrition Management: Disciplinary Actions, Attrition Rate
And many more features to streamline HR processes efficiently!
To use our "ohrms_core" module, follow these steps:
1. Add the Custom Module: Place the ohrms_core module inside your Odoo custom modules directory.
2. Update the Addons Path: Add the module path to your Odoo configuration file (odoo.conf) under the addons_path section.
3. Restart Odoo Server: Restart your Odoo instance to detect the newly added module.
4. Install the Module: Go to Apps in Odoo, search for ohrms_core, and click Install to activate the module.
Once installed, you can start managing HR processes efficiently using Open HRMS features.

After installing the ohrms_core module, users will be redirected to the HRMS Dashboard view. The dashboard will display user-specific data, including:
* Personal Information: Employee details and profile overview
* Leave Details: Pending, approved, and rejected leave requests
* Notifications: Important HR updates and reminders
* Department Insights: Department-wise data and statistics
* Analytics & Charts: Visual representation of employee performance, skills, leave trends, Expense list and other HR metrics
This dashboard provides a centralized view of all essential HR-related information, improving accessibility and efficiency.

This is the menu view, where the complete list of HRMS modules is displayed in the user interface. It provides access to various HR functionalities, allowing users to navigate through different sections effortlessly.
The UI will showcase all HRMS modules, including:
* Dashboard: Overview of employee data, leave details, and analytics
* Employees: Employee profiles, history, and records
* Payroll: Salary processing, payroll accounting, and payslips
* Attendance & Leaves: Shift management, leave tracking, and biometric integration
* Recruitment: Hiring process, job postings, and applicant tracking
* Loans & Advances: Salary advances, loan requests, and approvals
* Performance: Appraisals, employee appreciation, and feedback
* Compliance & Legal: Visa expiry, document expiry, lawsuits, and WPS reports
* Expense & Assets: Expense claims, asset custody, and reimbursements
* Announcements & Notifications: Company-wide announcements and reminders

Let’s discuss the modules in detail.
Announcements
The Open HRMS Announcement app is designed to manage and broadcast important announcements within an organization. It enables HR teams to communicate upcoming celebrations, holidays, special events, and other essential updates effectively. With this app, organizations can ensure that employees stay informed about key events, fostering better engagement and workplace transparency.

Simply click the Create button to add a new announcement. This will take you to a new screen, as shown in the screenshot below. Here, you can enter details such as the Title, Start Date, and End Date of the announcement. A unique code number will be automatically generated once you save the announcement.

With this app, you can create a general announcement that reaches all employees or target specific individuals, departments, or job positions.

After entering all the necessary details, you can submit the announcement for approval.

The authorized person will see the Approve and Refuse buttons. Once approved, the announcement will be officially published.

The user can also view specific announcements directly on the dashboard.

Calendar
The Calendar app in Open HRMS is a comprehensive scheduling tool that provides a detailed and user-friendly interface. It allows you to view events by day, week, month, or year, making it easy to manage schedules efficiently. Additionally, selecting the list view from the top-right options enables you to see all created events in an organized format.

In the screenshot above, you can see multiple time intervals. Simply click on any of them to create a new event or meeting. Here, you can either click "Create" to add a new event to the calendar or select "Edit" to include more details. Additionally, you can click on an existing event to modify or update its information.
Contacts
The Open HRMS Contacts module provides complete information about various contacts associated with your company.
It offers multiple viewing options, including Kanban view, as shown in the screenshot, along with List view and Activity view, which display employees along with their scheduled activities.

Clicking on the Configuration menu provides various options, such as Contact Tags and Contact Titles. You can add or modify these details, which will be used when creating a new contact.

We can create a new Contact Tag by specifying the Name, Parent Category, and Color Code.
In the Contact Titles menu, we can configure the titles that need to be assigned to a contact. Similarly, we can set up Industries, Countries, Federal States, and Country Groups as needed. Additionally, within the Contacts app, we can create Bank and Bank Account details from the Configuration menu. When creating a bank account, selecting the bank is required, and fields such as Account Number and Account Holder are mandatory.
Documents
The Employee Documents feature is a valuable tool for storing and managing employee-related documents such as certificates, appraisal reports, passports, licenses, and more.
These documents can be accessed directly from the Employee Profile. Simply navigate to the Employee application, select a user, and use the smart button at the top to view and manage their documents.

We can manage the employee's document type details From the Employees > Configuration > Employee Document Types menu, we can define and manage different types of employee documents as needed.

Employees
The Employee application provides detailed information about the employees working in the company, including their profiles, job positions, and various employee-related activities.

Click on the Create button to add a new employee record. Here, you can enter various details related to the employee, including basic information such as contact details, department, manager, and more. At the top, there are smart buttons that provide quick access to important details such as contracts, time off, payslips, and more.

Navigate to Employees > Employees > Contracts to view the contract details of employees. This section displays information such as hire details, the number of contracts per employee, and more. By default, the ‘Active Employees’ filter is applied

We can configure Departments by navigating to Employees > Departments. This section displays a Kanban view of all available departments, providing a quick overview of key details such as time off requests, absences, and more within each department tile.

Legal Actions
The OpenHRMS Legal Actions module helps manage legal matters related to employees, customers, and suppliers. It is seamlessly integrated into the Employee's application for easy access. To view or manage legal actions, navigate to Employees > Legal Actions.

Click the ‘Create’ button to record a new Legal Application. Enter details such as the Reference Number, Party Details, Corresponding Person, etc. Once the information is provided, click the ‘Process’ button to set the legal application to the running state.

Once the hearing is completed, the legal application can be marked as either ‘Won’ or ‘Lost’ based on the outcome.

Resignation
The OpenHRMS Employee application streamlines the employee resignation process. Employees can submit a Resignation Request for approval by providing details such as their joining date, notice period, resignation type, and reason.

Once the form is completed, it needs to be confirmed and sent for manager approval.

Loans
Employees can apply for loans using the OpenHRMS Loan application by providing details such as loan amount, installment payment date, number of installments, and necessary attachments. This feature is integrated into the Employees application and can be accessed via Employees > Loans & Advances.
To view loan requests, navigate to Employees > Loans & Advances > Request for Loans, where a list view of loan requests will be displayed. By default, the ‘My Requests’ filter is applied. Managers can remove this filter to view loan requests from all employees.

Click on the ‘Create’ button to initiate a new Loan request. Select the employee and enter essential details such as the loan amount, payment start date, and number of installments. After specifying the number of installments, click on the ‘Compute Instalment’ button at the top. This will automatically calculate the payment dates and installment amounts in the ‘Instalments’ tab. Once all details are filled in, submit the request and wait for manager approval.

Employees can request a Salary Advance by navigating to Employees > Loans & Advances > Request Salary Advance. Fill in the required details such as employee name, date, advance amount, and reason, then submit the request for approval.
Managers can review and approve salary advances from Employees > Loans & Advances > Salary Advance to Approve.
Expenses
With the Open HRMS Expense application, employees can submit their expenses for approval or rejection.
* Employees can track their expenses under My Expenses, where they can see amounts to be reported, under validation, and to be reimbursed at the top of the list view.
* Managers have access to all employees' expense reports for review and approval.
* To create a new expense report, click the ‘Create’ button or use the ‘Upload’ button to directly upload a receipt, which will automatically generate an expense report.
* Fill in necessary details such as category, amount, and payer details, and attach the receipt using the smart button at the top.

Leaves
The OpenHRMS Leaves application manages employee leave requests and related activities.
The dashboard provides a yearly calendar view displaying all types of time-offs for each month. The header section shows the available paid time-offs and compensatory days. Users can switch between Day, Week, or Month views for better visibility.

To request a new leave, click on the ‘New Time Off’ button at the top. A pop-up will appear, allowing you to fill in the necessary details.

While creating a leave request, we need to select the Time Off type. Time Off types can be configured from Leaves > Configuration > Time Off Types, where we can create a new type by selecting the Approval type, Allocation type, and other relevant settings. Additionally, we can customize the display by setting the color and cover image, ensuring better visualization in the calendar.

Employees can create or view their leave allocations from Leaves > My Time Off > My Allocations. Managers can oversee time-off requests from Leaves > Overview, where they can filter by ‘My Team’ or ‘My Department’ by default. Time-off requests requiring approval can be accessed under Leaves > Approvals > Time Off, while allocation requests submitted by employees can be viewed at Leaves > Approvals > Allocations. Additionally, detailed reports on employee leaves are available in Leaves > Reporting > By Employee, with visualization options such as bar charts, line charts, and pie charts. The pivot view can also be selected from the top-right corner to export detailed reports.
Overtime
The OpenHRMS Overtime module allows employees to create overtime requests based on days and hours. Overtime can be compensated either through leave allocation or as a cash payment. Employees can create and view their overtime requests by accessing the Overtime Request application.

While creating an Overtime request, we need to provide details such as the Employee, Duration type, and Type of utilization (leave allocation or cash payment). Once the form is filled out, clicking on the ‘Submit to Finance’ button will send the request for approval. The Manager can then review the request, select the Overtime type, and approve it accordingly.

Once the form is filled out, clicking on the ‘Submit to Finance’ button will send the request for approval. The Manager can then review the request, select the Overtime type, and approve it. To configure the overtime types, navigate to Overtime Request > Overtime Types. Here, you can define the overtime utilization type and duration type. Additionally, in the bottom tab, you can set the rules and rates for overtime calculations.
Payroll
The Open HRMS Payroll application manages the payroll processes within a company. Payroll refers to the total amount of money paid to employees, including salaries, bonuses, and deductions. Employees can access their payslips through the system, ensuring transparency in salary calculations and payments.

In the employee payslip, you can view various details such as the employee name, payslip name, dates, company, and status of the payslip. To create a new payslip, click on the ‘Create’ button and fill in the required fields, including the employee name, period, and structure. Next, enter the accounting information by adding all the necessary details.
Before saving, you have three options: Confirm the payslip, Compute sheet, or Cancel the payslip. Clicking on Confirm will finalize the payslip, and to save it, click on Save.
In Payslip Batches, you can view various details such as the employee name, date information, salary journal, credit note, and payslip status.
To create a new Payslip Batch, click on the ‘Create’ button and enter the necessary details.

Salary structure
Various salary structure details are available from here:

Here you can see the various salary structures along with their reference, salary rules and company. To create a new salary structure click on the create button;
Recruitment
The OpenHRMS Recruitment application streamlines the entire hiring process, making it easier for HR to manage recruitment efficiently. Since recruitment can be time-consuming, this module helps automate various tasks, reducing manual effort.
When you open the Recruitment application, it displays all the ongoing job positions with active recruitment. To start a new recruitment process, simply click on the ‘Create’ button and enter the details for the job position.
The newly created Job Position will be displayed on the main dashboard, providing an overview of the recruitment status. Each job position card includes multiple options, such as publishing the job on the website, tracking the number of applicants, and managing the recruitment process efficiently. This allows HR to quickly monitor and control job postings and applicant progress.

In the ‘Recruitment’ tab, you can specify important details such as the job location, expected number of new employees, and other relevant information. By clicking on the ‘Go to Website’ smart button at the top, you can preview how the job application will appear on the company's website.

You can also edit the page using the drag-and-drop webpage builder to customize its layout and content before publishing it.

Now, the public can apply for job openings by clicking on the ‘Apply Now’ button on the webpage and filling out the application form. Once submitted, these applications will be received and stored in the corresponding Job Position recruitment record. The recruitment process is streamlined with a kanban-style view, where applications can be moved across different stages such as Screening, Interview, Hired, or Rejected. These stages are fully customizable, allowing HR to add, remove, or modify stages as needed to align with the company’s recruitment workflow.

Click on one of the applications to view detailed information about the candidate. From here, we can schedule interviews with the applicant and track their progress through different recruitment stages. Once the applicant reaches the final stage, we can click on the ‘Create Employee’ button to seamlessly add them as an employee in the system. If the application is not successful, we can click on the ‘Refuse’ button to reject it.
To get an overview of all job applications, navigate to Recruitment > Applications > All Applications, where we can filter and manage applications efficiently.
Reminder
The OpenHRMS Reminder application allows users to set reminders for important occasions, meetings, and tasks. To create a reminder, open the application and click on the ‘Create’ button. Then, provide key details such as the title, model name, corresponding date field, and specify when the system should search for reminders. The search can be set to a specific period, a particular date, or just today. This ensures that important events are never missed.

Attendance & Biometric tracking
The Biometric Attendance Tracking feature in OpenHRMS helps automate employee attendance management. To activate the biometric module, click on the settings icon in the navigation bar. This will open the settings page, where you can find various modules such as Employee, Recruitment, Attendance, and more. From there, you can enable and configure biometric attendance to streamline workforce tracking.
The Biometric Attendance Tracking module in OpenHRMS requires the pyzk package, which manages check-in and check-out details of employees. This package is used to communicate with ZKTeco biometric devices to fetch attendance records.
To install pyzk, use the following command:
pip install pyzk

We can manage the device details using the form view, where we can add all necessary details and configure the IP addresses.


In this section, various buttons provide access to different functionalities. Clicking the 'Download' button allows manual data retrieval from the machine, saving attendance records, registering employee details, and updating device information. Attendance data can be cleared from both the device and Odoo. The device can be restarted with a single click. If 'Live Capture' is enabled, real-time attendance data is fetched from the device. Additionally, the user's timezone can be set on the device. A wizard opens upon clicking the designated button, allowing user management.
Employee Transfer

We can transfer an employee from one department to another seamlessly. This allows for efficient management of workforce allocation within the organization.
Employee

Can manage the employee shift time using this module

The Employee Shift in Contract feature allows organizations to schedule shifts directly within the employee contract form. This functionality ensures that each employee has an assigned shift schedule as part of their contract, providing clarity and structure to work schedules.

Employee Gratuity Settlement
The Gratuity Settlement feature in OpenHRMS enables managers to create and manage employee gratuity settlements efficiently. A settlement can only be created if the employee has an active contract.
Managers can configure different Gratuity Configurations, defining rules for gratuity calculations. The Gratuity Amount is determined using a predefined formula based on the employee’s wage type:
* Hourly Wage:
Gratuity Amount = Employee Basic Salary × Employee Daily Wage Days × Gratuity Configuration Rule Percentage × Gratuity Calculation Years
* Monthly Wage:
Gratuity Amount = Employee Basic Salary × (Working Days / Employee Daily Wage Days) × Gratuity Configuration Rule Percentage × Gratuity Calculation Years

Navigate to Payroll Configuration:
Go to Payroll > Configuration > Gratuity Configuration.
Create a New Gratuity Rule:
* Define the gratuity calculation method based on hourly or monthly wages.
* Set the gratuity percentage and calculation years according to company policies.
Generate Gratuity Settlement:
* Ensure the employee has an active contract.
* Apply the configured gratuity rules to calculate the final settlement amount.
* Review and approve the settlement for processing.

Set up the gratuity configuration and select the contract type. If the contract type is Unlimited and an end date is specified for the contract during gratuity settlement, the system will apply the gratuity configuration for the Unlimited contract type.

You can create a gratuity settlement from the 'End of Service' menu by navigating to Payroll > End of Service.

The Open HRMS system, tailored with our custom modules, enhances HR operations by integrating advanced features such as payroll management, expense tracking, leave and overtime management, recruitment, and biometric attendance tracking. Our customization ensures seamless handling of salary advances, payslip batches, and salary structures while optimizing employee transfers across departments.
With the addition of biometric attendance tracking, real-time attendance synchronization, and device management capabilities, our module offers greater accuracy and automation in workforce management. The recruitment module streamlines the hiring process, allowing HR teams to manage job applications efficiently, while the reminder module ensures timely notifications for important tasks and events.
By leveraging our enhanced Open HRMS modules, organizations can achieve greater efficiency, minimize manual workload, and improve employee engagement. This comprehensive system provides a reliable, user-friendly solution for managing human resources effectively.
To read more about How to Configure Human Resource Module in Odoo 16 ERP, refer to our blog How to Configure Human Resource Module in Odoo 16 ERP.