OdooWiki OCA HUB

Personal Protective Equipment (PPE) Management

hr_employee_ppe folder_open OCA/hr open_in_new
Human Resources License: AGPL-3

This module allows you to manage allocation of PPE to your employees. A product can be marked as ppe and additional information as duration and indications can also be added. If ppe products are selected in a equipment request, a button to print a receipt of PPE will appear. In addition, a chron will check every day if an allocation has been expired.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Manage Personal Protective Equipment (PPE) given to employees: mark products as PPE, set expiry rules, print a signed receipt, and let Odoo automatically flag expired equipment.

This module extends the personal equipment request feature so you can track Personal Protective Equipment (PPE) handed out to employees.

On a product, a new "Employee PPE" section lets you mark it as PPE, write usage indications, and, if it expires, set a duration and interval unit (minutes, hours, days, weeks or months).

When a PPE product is chosen on an equipment request line, the line is flagged as PPE and the indications are copied. The request form shows a "Print Receipt of PPE" button when the request contains PPE and is in draft or accepted state; it produces a PDF receipt listing the PPE products, quantities and indications, with a signature and date area.

When an allocation is validated, the system records who issued it, and if the PPE is expirable it automatically computes the expiry date from the start date plus the product's duration. It also blocks an expiry date earlier than the start date.

A daily scheduled job checks all equipment whose expiry date has passed and sets it to expired. On the equipment form, PPE fields are read-only for regular users, and certification number and issuer are visible only for HR users.

Models and fields (3)
  • product.template · new modelis_ppe, indications, ppe_duration (PPE duration), expirable_ppe, ppe_interval_type (Interval Unit)
  • hr.personal.equipment · new modelis_ppe, issued_by, expire_ppe, indications, certification (Certification Number)
  • hr.personal.equipment.request · extends an existing modelcontains_ppe

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 6 confirmed, 3 with no information of 9 versions.

terminal Installation and usage

OCA documentation · Odoo 18.0

To install this module, you need to have HR module installed or it will be requested during installation.

No verified information in OCA: Configuration, Usage.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.