Skip to Content
Menu

Saudi End of Service Reward (Enhanced)

by
Odoo

81.52

v 18.0 Third Party 1
This module requires Odoo Enterprise Edition.
Live Preview
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Discuss (mail)
Employee Contracts (hr_contract)
Invoicing (account)
Payroll (hr_payroll)
Time Off (hr_holidays)
Employees (hr)
Calendar (calendar)
Lines of code 1431
Technical Name saudi_eos
LicenseLGPL-3
Versions 16.0 17.0 18.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Discuss (mail)
Employee Contracts (hr_contract)
Invoicing (account)
Payroll (hr_payroll)
Time Off (hr_holidays)
Employees (hr)
Calendar (calendar)
Lines of code 1431
Technical Name saudi_eos
LicenseLGPL-3
Versions 16.0 17.0 18.0

Saudi End of Service Reward

Comprehensive End of Service Management for Saudi Labor Law Compliance

A complete solution for managing Saudi End of Service (EoS) gratuity calculations, approvals, and payments in accordance with Saudi Labor Law. This module provides a dedicated workflow from request creation to payment processing, with multi-step approvals and accounting integration.

Module Installation

Module Installation Screen

Module Installation Screen

This screen shows the Odoo Apps page where you can install the Saudi End of Service Reward module. The module appears in the list of available applications with its icon and name "Saudi End of Service Reward (Enhanced)". To install the module:

  • Navigate to the Apps menu from the main Odoo dashboard
  • Search for "saudi_eos" in the search box or browse through the available apps
  • Click on the "ACTIVATE" button to install the module
  • The module will be installed and integrated with your existing Odoo 13 installation

After installation, the module will add new menu items, models, and functionality to manage End of Service processes according to Saudi Labor Law.

User Access Rights Configuration

User Access Rights Configuration

User Access Rights Configuration

This screen shows the user access rights configuration page where you can assign specific End of Service roles to users. The module creates three dedicated security groups:

  • EoS User / HR Officer: Can create and submit EoS requests
  • EoS HR Manager: Can approve submitted requests, cancel requests, or reset them to draft
  • EoS Accountant: Can approve HR-approved requests (triggering journal entries) and register payments

To configure user access rights:

  • Navigate to Settings → Users & Companies → Users
  • Select the user you want to configure
  • Go to the Access Rights tab
  • Scroll down to the "END OF SERVICE REWARDS" section
  • Check the appropriate boxes to assign roles
  • Click Save to apply the changes

Proper role assignment is crucial for the multi-step approval workflow to function correctly.

Module Configuration Settings

Module Configuration Settings

Module Configuration Settings

This screen shows the configuration settings for the Saudi End of Service Reward module. Here you can set up the accounting integration and automation options:

  • Auto Archive Employee on EoS Payment: When enabled, automatically archives the employee record when the EoS payment is completed
  • Auto Cancel Contract on EoS Payment: When enabled, automatically cancels the employee's contract when the EoS payment is completed
  • EoS Expense Account: Default expense account for EoS journal entries
  • EoS Payment Journal: Default payment journal (Bank/Cash) for EoS payments
  • EoS Expense Journal: Default journal (e.g., Miscellaneous) for EoS expense entries

To access these settings:

  • Navigate to Settings → Human Resources
  • Scroll down to the "Saudi End of Service Reward Configuration" section
  • Configure the desired options
  • Click Save to apply the changes

Proper configuration of these settings is essential for the accounting integration to work correctly.

Employee Directory

Employee Directory

Employee Directory

This screen shows the employee directory where you can access the End of Service functionality. The module integrates with the standard Odoo Employees module and adds a new menu item for End of Service Requests.

  • Navigate to Employees → End of Service → EoS Requests to access the End of Service functionality
  • The left sidebar shows the End of Service menu items, including EoS Requests and Termination Reasons
  • You can select any employee from this directory to initiate an End of Service request

Before creating an EoS request, ensure that the employee has:

  • An active contract with a defined wage
  • A linked "Home Address" partner (work_contact_id)
  • The linked partner has a "Payable Account" set in their Accounting tab

These prerequisites are essential for the EoS calculation and payment processing to work correctly.

Creating a New EoS Request

Creating a New EoS Request

Creating a New EoS Request

This screen shows the form for creating a new End of Service request. The form is divided into several sections:

  • Employee Contract: Select the employee and their contract
  • Termination Details: Specify termination date and reason
  • EoS Reward Calculation: View the calculated reward amount based on service duration and termination reason
  • Leave Balance Payment: Option to include remaining leave days payout
  • Last Payslip Payment: Option to include the employee's last payslip
  • Total Payable: The total amount to be paid to the employee

To create a new EoS request:

  • Navigate to Employees → End of Service → EoS Requests
  • Click the "New" button
  • Fill in the required information
  • The system automatically calculates the service duration (years, months, days) and the EoS reward amount
  • Click "Submit" to start the approval workflow

The EoS reward calculation follows Saudi Labor Law, taking into account the service duration and termination reason.

Termination Reasons Configuration

Termination Reasons Configuration

Termination Reasons Configuration

This screen shows the configuration of termination reasons, which directly impact the EoS reward calculation according to Saudi Labor Law. Each termination reason has:

  • Reason: Description of the termination reason
  • Is Resignation?: Indicates whether the reason is a resignation (affects calculation)
  • Calculation Factor: The multiplier applied to the base EoS amount (e.g., 0.3333 for 1/3, 0.6667 for 2/3, 1.0 for full)
  • Active: Whether the reason is available for selection in EoS requests

The module comes pre-configured with common termination reasons based on Saudi Labor Law:

  • End of Contract Period (100% of EoS)
  • Termination by Employer Without Valid Cause (100% of EoS)
  • Employer Breach of Contract (100% of EoS)
  • Force Majeure (100% of EoS)
  • Employee Death (100% of EoS)
  • Permanent Total Disability (100% of EoS)
  • Female Employee Marriage/Childbirth (100% of EoS)
  • Resignation with varying factors based on service duration (0%, 33.33%, 66.67%, 100%)

To access and modify termination reasons:

  • Navigate to Employees → End of Service → Configuration → Termination Reasons
  • Edit existing reasons or create new ones as needed
  • Ensure the calculation factors align with current Saudi Labor Law

EoS Request Details

EoS Request Details

EoS Request Details

This screen shows a submitted End of Service request with all details filled in. The form displays:

  • Request Reference: Unique identifier (e.g., EOS/2025/00001)
  • Employee Information: Name, contract, department, position, company
  • Termination Details: Hire date, request date, termination date, termination reason
  • Service Duration: Calculated years, months, and days of service
  • EoS Calculation: Last wage basis and calculated EoS reward amount
  • Additional Payments: Options for leave balance and last payslip inclusion
  • Total Payable Amount: Sum of all payments to be made

The request status is shown in the status bar at the top of the form (Draft, Submitted, HR Approved, Accountant Approved, Paid). The available action buttons change based on the current status and the user's role.

In this example:

  • The request is for an employee with over 14 years of service
  • The termination reason is "End of Contract Period" (100% calculation factor)
  • The EoS reward amount is calculated based on the last wage (3,750.00 SR) and service duration
  • The last payslip payment option is selected
  • The total payable amount is 45,399.00 SR

Error Handling - Home Address Requirement

Error Handling - Home Address Requirement

Error Handling - Home Address Requirement

This screen shows an error message that appears when trying to process an EoS request for an employee without a properly configured home address partner. The error states:

"Employee's Home Address Partner is required for payment processing. Please set it on the employee record."

This error occurs because:

  • The accounting integration requires a partner record to create journal entries and payments
  • The employee must have a linked "Home Address" partner (work_contact_id)
  • This partner must have a "Payable Account" set in their Accounting tab

To resolve this error:

  • Navigate to Employees and open the employee's record
  • Go to the "Personal Information" tab
  • Set or create a "Private Address" for the employee
  • Ensure this partner has a "Payable Account" set in their Accounting tab
  • Return to the EoS request and try again

This validation ensures that the accounting entries can be properly created when the request is approved.

HR Manager Approval Stage

HR Manager Approval Stage

HR Manager Approval Stage

This screen shows an EoS request at the HR Manager approval stage. Key elements of this screen include:

  • Status Bar: Shows the current status as "SUBMITTED" with "HR APPROVE" as the next action
  • HR Approve Button: Available for users with EoS HR Manager rights
  • Request Details: All employee and termination information
  • Activity Panel: Shows a planned activity for the HR Manager to approve the request
  • Chatter: Displays the history of status changes and notifications

At this stage:

  • The request has been submitted by an HR Officer
  • The HR Manager receives a notification and activity to review and approve the request
  • The HR Manager can review all details, including the calculated EoS amount
  • The HR Manager can approve the request by clicking the "HR Approve" button
  • Alternatively, they can cancel the request or request changes by adding notes in the chatter

Once the HR Manager approves the request, it moves to the next stage (Accountant Approval) and notifications are sent to the relevant Accountant users.

Accountant Approval Stage

Accountant Approval Stage

Accountant Approval Stage

This screen shows an EoS request at the Accountant approval stage. Key elements of this screen include:

  • Status Bar: Shows the current status as "HR APPROVED" with "ACCOUNTANT APPROVE" as the next action
  • Accountant Approve Button: Available for users with EoS Accountant rights
  • Request Details: All employee, termination, and calculation information
  • Configuration Tab: Shows the accounting configuration (expense account, journals)
  • Activity Panel: Shows a planned activity for the Accountant to approve the request
  • Chatter: Displays the history of status changes, including the HR approval

At this stage:

  • The request has been approved by the HR Manager
  • The Accountant receives a notification and activity to review and approve the request
  • The Accountant can review all details, including the calculated amounts and accounting configuration
  • When the Accountant clicks "Accountant Approve", the system automatically creates and posts the expense journal entry
  • This journal entry debits the EoS expense account and credits the employee's payable account

Once the Accountant approves the request, it moves to the next stage (Payment Registration) and a new activity is created for the Accountant to register the payment.

Payment Registration Stage

Payment Registration Stage

Payment Registration Stage

This screen shows an EoS request at the Payment Registration stage. Key elements of this screen include:

  • Status Bar: Shows the current status as "ACCOUNTANT APPROVED" with "REGISTER PAYMENT" as the next action
  • Register Payment Button: Available for users with EoS Accountant rights
  • Request Details: All employee, termination, and calculation information
  • Generated Entries: Shows the created expense journal entry (MISC/2029/08/0001)
  • Activity Panel: Shows a planned activity for the Accountant to register the payment
  • Chatter: Displays the history of status changes and notifications

At this stage:

  • The request has been approved by the Accountant
  • The expense journal entry has been created and posted
  • The Accountant receives a notification and activity to register the payment
  • When the Accountant clicks "Register Payment", a payment form opens
  • After completing the payment, the request status changes to "Paid"
  • If configured, the system automatically archives the employee and/or cancels their contract

The journal entry details show that the expense has been recorded, and the payment will settle the liability to the employee.

Payment Form

Payment Form

Payment Form

This screen shows the payment form that appears when registering an EoS payment. Key elements of this form include:

  • Payment Type: Set to "Send" money (outgoing payment)
  • Vendor: The employee's linked partner (Tina Williamson)
  • Amount: The total payable amount (SR 45,399.00)
  • Date: The payment date
  • Journal: The payment journal (Cash)
  • Payment Method: Set to "Manual" (can be changed based on your payment process)
  • Memo: Optional field for payment notes

To complete the payment:

  • Review all payment details
  • Make any necessary adjustments
  • Click "Confirm" to create and post the payment

Once confirmed:

  • The payment is recorded in the accounting system
  • The EoS request status changes to "Paid"
  • If configured, the employee is automatically archived
  • If configured, the employee's contract is automatically cancelled

This completes the End of Service process for the employee.

EoS Requests List View

EoS Requests List View

EoS Requests List View

This screen shows the list view of all End of Service requests. Key elements of this view include:

  • Request Reference: Unique identifier for each request
  • Employee: Name of the employee
  • Termination Date: Date when the employment ends
  • Termination Reason: Reason for the termination
  • Service Years: Calculated years of service
  • EoS Amount: Calculated End of Service reward
  • Total Amount: Total payable amount (including any additional payments)
  • Status: Current status of the request (Draft, Submitted, HR Approved, etc.)
  • Company: The company the employee belongs to

This view allows you to:

  • See all EoS requests at a glance
  • Filter requests by status, employee, date, or other criteria
  • Sort requests by any column
  • Create new requests
  • Access detailed views by clicking on a specific request

The list view is particularly useful for HR managers and accountants who need to monitor and process multiple EoS requests.

EoS Request Kanban View

EoS Request Kanban View

EoS Request Kanban View

This screen shows the kanban view of End of Service requests, organized by status. Key elements of this view include:

  • Status Columns: Requests grouped by their current status (Draft, Submitted, HR Approved, etc.)
  • Request Cards: Each card represents an EoS request with key information
  • Employee Photo: Visual identification of the employee
  • Request Reference: Unique identifier for each request
  • Employee Name: Name of the employee
  • Termination Date: Date when the employment ends
  • EoS Amount: Calculated End of Service reward

This view allows you to:

  • Visualize the workflow and current status of all requests
  • Quickly identify requests that need attention at each stage
  • Filter requests by various criteria
  • Create new requests
  • Access detailed views by clicking on a specific request card

The kanban view is particularly useful for tracking the progress of requests through the approval workflow and identifying bottlenecks.

Journal Entries View

Journal Entries View

Journal Entries View

This screen shows the journal entries created by the End of Service module. Key elements of this view include:

  • Journal Entry Reference: Unique identifier for each entry
  • Date: Date of the journal entry
  • Journal: The journal used (e.g., Miscellaneous Operations)
  • Partner: The employee's linked partner
  • Reference: Reference to the EoS request
  • Status: Current status of the journal entry (Posted)
  • Total: Total amount of the entry

When an EoS request is approved by the Accountant, the system automatically creates:

  • Expense Journal Entry: Debits the EoS expense account and credits the employee's payable account
  • Payment Entry: Created when the payment is registered, debits the employee's payable account and credits the bank/cash account

These entries ensure that:

  • The EoS expense is properly recorded in the accounting system
  • The liability to the employee is recognized
  • The payment is properly recorded when processed

The accounting integration is a key feature of the module, ensuring that all financial aspects of the End of Service process are properly managed.

Supported Editions

Enterprise

Need Support?

Contact us through:

Email: m.gafar2024@gmail.com

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 or have a question related to your purchase, please use the support page.
There are no ratings yet!
Good app
by
Multibridges
on 6/2/25, 4:21 PM