Skip to content
DevMarket
Odoo ModulesWordPress PluginsWordPress ThemesShopify ThemesApp TemplatesScripts & UtilitiesBlogSell on DevMarket

Employee Documents & Expiry Alerts for Odoo 19 documentation

A guide to employee documents: document types, adding documents, the expiry alerts, missing documents, renewing, access rights and the limits.

Documents version 1.0.0Updated Oct 23, 2026

Start here

In plain words: A passport that expired last month, a residence permit nobody renewed, a driving licence that lapsed while the employee was driving the company car. Employee Documents & Expiry Alerts keeps every employee's documents in Odoo with their expiry dates, warns you before they expire, shows who is missing a required document and lets you renew in one click.
The documents that need attention, a residence permit with its alert, and the Documents tab of an employee.
The documents that need attention, a residence permit with its alert, and the Documents tab of an employee.
Tip: Alerts are sent by a daily job as activities for HR and a note on the document. You can also email the employee.

What you get

FeatureWhat it does
Document typesPassport, ID, residence permit, licence, insurance and more, each with a validity period and a reminder period. Add your own.
Each employee's documentsNumber, issue and expiry dates and the scanned files, on the employee form and in one list.
Expiry alertsOne alert before a document expires and one when it has expired, to HR, to the employee's manager and, if you wish, to the employee.
Red and orangeExpired documents in red, expiring ones in orange, with filters for the next 30 and 90 days.
Required documentsMark a type as required and see which employees are missing it.
Renew in one clickThe old document is archived and a new one is ready with proposed dates.
PrivateHR officers see all documents; an employee sees only their own.
ArabicEverything is translated and works right to left.

Requirements

ItemDetails
Odoo19.0 (Community or Enterprise)
Apps neededEmployees (hr)
LicenseOPL-1 (Odoo Proprietary License v1.0)

Install

  1. Unzip the package. Inside is taqnix_employee_documents.zip; unzip it to get the folder taqnix_employee_documents.
  2. Copy the folder into one of the addons_path folders of your Odoo server and restart Odoo.
  3. Log in as an administrator, activate Developer mode, open Apps and press Update Apps List.
  4. Remove the “Apps” filter, search Employee Documents and press Install.
# or from the command line
./odoo-bin -c odoo.conf -d YOUR_DATABASE -i taqnix_employee_documents --stop-after-init

Document types

In plain words: Open Employees → Configuration → Employee → Document Types. Eight common types are installed; change them or add your own.
The document types with their validity, reminder and who is notified.
The document types with their validity, reminder and who is notified.
FieldMeaning
Validity (months)Proposes the expiry date from the issue date. 0: the document does not expire (a signed contract).
Remind (days before)The first alert is sent this many days before the expiry. 0: no early alert.
Required for everyoneEmployees without a document of this type are listed as missing it.
NotifyUsers who receive the alert as an activity. Empty: the HR administrators.
Notify the employee's managerThe manager of the employee, if they have a user, receives the alert.
Notify the employeeThe employee receives an email (work contact or user).

Add the documents

In plain words: Open an employee and go to the Documents tab, or use Employees → Documents → New. Choose the type, enter the number, the issue date (the expiry date is proposed) and attach the scans with Files.
The Documents tab: an expired passport, a valid ID and a missing residence permit.
The Documents tab: an expired passport, a valid ID and a missing residence permit.
An expired passport: press Renew.
An expired passport: press Renew.
In plain words: The tab shows a red banner for expired documents, an orange one for those expiring soon and a blue one for the required documents the employee does not have.

What needs attention

In plain words: Employees → Documents opens the documents that are expired or expiring soon. Use the filters Expired, Expiring soon, Expires in 30 days and Expires in 90 days, group by employee, type, department or expiry month, and search by number.
Expired in red, expiring soon in orange, with the days left.
Expired in red, expiring soon in orange, with the days left.
In plain words: In the employee list, the filters Has an expired document and Missing a required document find the employees to chase.

The alerts

A residence permit expiring in 21 days: an activity for the HR user and a note on the document.
A residence permit expiring in 21 days: an activity for the HR user and a note on the document.
WhenWhat happens
Reminder period reachedOnce: an activity to each person to notify, with the expiry date as deadline, and a note on the document.
The document has expiredOnce: a new activity due today and a note.
You change the expiry dateThe alerts start again for the new date.
Archived documents and employeesNo alert.
A type without reminderNo early alert, but the expired alert is still sent.
In plain words: A daily job sends the alerts. If you want the first alert today, run the scheduled action Employee documents: expiry alerts from Settings → Technical → Scheduled Actions.

Renew

In plain words: Open an expired or expiring document and press Renew. The old document is archived, its pending activities are removed and a new document opens for the same employee and type with today as the issue date and the expiry date proposed from the validity. Enter the new number and attach the new scans.

Who sees what

WhoCan
EmployeesRead their own documents only. They cannot change them.
HR officersSee, create and edit the documents of all employees of their companies.
HR administratorsAlso manage the document types.
Tip: The scanned files belong to the document: whoever may read it may read them.

Arabic and right to left

The documents in an Arabic interface.
The documents in an Arabic interface.

Limits

LimitDetail
No OCRDates are entered by you; nothing is read from the scans.
One alert per stageA reminder and an expiry alert per document and date. Change the date to re-arm.
Employee emailNeeds a work contact or a user with an email, and working outgoing mail.
Required typesA type is required for everyone; it cannot be limited to a department.
Missing means noneAn expired document counts as present; it is alerted, not missing.

For developers

In plain words: Skip this chapter if you only use the module.
ItemDetails
Modelstaqnix.employee.doc.type and taqnix.employee.document (with chatter and activities).
Statusstate (valid, expiring, expired) and days_left are computed and searchable.
Job_cron_expiry_alerts, daily.
Employeetx_document_ids, tx_expired_count, tx_missing_type_ids.
doc = env['taqnix.employee.document'].create({
    'employee_id': employee.id,
    'type_id': env.ref('taqnix_employee_documents.doc_type_passport').id,
    'number': 'P4412987', 'expiry_date': '2027-05-30',
})
env['taqnix.employee.document'].search([('state', '=', 'expiring')])

Troubleshooting

ProblemWhat to do
No alert was sentCheck the dates (the reminder days of the type), that the document and employee are not archived, and that the daily job is active.
The manager gets nothingThe manager must have a user. Or add users in Notify on the type.
I cannot see the Documents menuYou need the HR Officer right. Employees see their documents from their own employee form.
The expiry date is emptyThe type has validity 0 or no issue date was entered. Enter the date by hand.
I want to change a document type's nameEdit it; the existing documents follow.

Updating and removing

Replace the folder with the new version, restart Odoo and run -u taqnix_employee_documents. Types and documents are kept. Removing the module deletes the documents; the scanned files are deleted with them.

Support

Installation help and bug fixes are included for 6 months, with lifetime updates. Contact us through the marketplace page where you bought the module or write to support@taqnix.com with your Odoo version and a screenshot.