| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Employees (hr) • Attendances (hr_attendance) |
| Community Apps Dependencies | Show |
| Lines of code | 2647 |
| Technical Name |
eh_hr_visitor |
| License | LGPL-3 |
| Website | https://www.erpheritage.com.au/ |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Employees (hr) • Attendances (hr_attendance) |
| Community Apps Dependencies | Show |
| Lines of code | 2647 |
| Technical Name |
eh_hr_visitor |
| License | LGPL-3 |
| Website | https://www.erpheritage.com.au/ |
Visitor Management
Self hosted front desk sign in for Odoo 19 Community. The same reception tablet that runs the attendance kiosk also runs visitor sign in by browsing a different URL. NDA capture, host email notification, optional photo, end of day auto sign out, daily retention. One kiosk, two flows, one audit trail.
Day in the life
Visitor signs in. Host gets the email. Host comes out. Day continues.
A delivery driver pulls up. The reception tablet is on the visitor URL. They tap their name, organisation, contact number, pick Delivery from the purpose list. The delivery purpose has NDA off and photo off, so they tap Sign in straight away. The host gets an email through the standard mail.mail queue. The driver hands off the package and signs out at the same kiosk by tapping the visit number. A contractor arrives in the afternoon; the contractor purpose flips on NDA and photo, so the kiosk shows the NDA, captures the snapshot on accept, and asks for a photo before the sign in completes. End of day, the auto sign out cron catches a visitor who left without tapping out and stamps the record so the audit trail stays clean.
Overview
What this module does, in one read.
eh_hr_visitor reuses the suite's kiosk site infrastructure to run a visitor sign in flow at /eh_hr/visitor/<site code>.
A purpose model carries name, NDA required, and photo required toggles. A visitor record holds the visitor's details, the host, sign in and sign out timestamps, the NDA snapshot, and the optional photo. The host gets an email through the standard mail.mail queue. An hourly cron handles end of day auto sign out. A daily cron deletes records past the configured retention horizon.
Capabilities
Eight things this module gives you, with no padding.
Reuses kiosk site infrastructure
Sites and devices come from the suite base. Reception's existing tablet runs visitor sign in at /eh_hr/visitor/<site code> with no second piece of hardware.
Configurable visit purposes
eh.hr.visitor.purpose carries name, NDA required, photo required. Seeded with Meeting, Delivery, Contractor (NDA + photo on), and Interview. Add or remove purposes from the standard list view.
NDA capture with snapshot
For NDA required purposes, the kiosk shows the configured NDA prose and stores the exact text snapshot on the visitor record at sign in time. A future audit can prove what text was shown, even after the company NDA is reworded.
Optional, opt in photo
Photo capture is opt in per purpose. Consent prose is shown before the camera shutter is enabled; the visitor cannot accidentally trigger a capture they have not agreed to.
Host email notification
On sign in the host gets an email with the visitor's name, organisation, and purpose. Sent through the standard mail.mail queue, so deliverability and templating live where every other Odoo email lives.
Two way sign out
The visitor returns to the kiosk and types their visit number; or the receptionist looks them up by name. Either tap puts the sign out timestamp on the record, ready for the next visitor.
Hourly auto sign out
An hourly cron auto signs out any visitor still signed in past the configured close hour, with a marker on the record. Visitors who walk straight out without ticking the kiosk do not stay in the open list overnight.
Daily retention sweep
A daily cron prunes visitor records past the configured horizon. Photos and PII leave the database without operator action; the audit window is set, kept, and closed automatically.
Frequently asked questions
Honest answers to the questions a buyer asks.
Do I need a separate tablet for visitors?
No. The same reception tablet runs both flows; reception switches between attendance kiosk and visitor sign in by browsing a different URL. Sites and devices come from the suite base.
Can I customise the NDA text?
Yes. The NDA prose lives on company settings. Reword it whenever; the version shown at sign in is snapshotted onto each visitor record at that time, so historical visits keep the correct text.
Does the host always get notified?
Yes, when a host is selected. The autocomplete on the kiosk searches active hr.employee rows. If the visitor cannot find a host (off site contact), the visit can still be created with a free text contact for the receptionist to handle.
What happens if a visitor never signs out?
The hourly auto sign out cron stamps any visitor still in past the company's configured close hour. The record carries a marker so the audit trail can tell a real sign out from an automatic one.
How long are visitor records kept?
For the company's configured retention horizon, then deleted by a daily cron. Photos and the NDA snapshot are deleted with the row. Operators set the horizon based on their own policy.
Please log in to comment on this module