Documentation Frappe HR

Frappe HR

Connecter des pointeuses biométriques

Les journaux d’entrée et de sortie d’une pointeuse deviennent des pointages d’employé. La présence se calcule ensuite avec le type de poste et la présence automatique.

3 min de lectureMis à jour le Source : docs.frappe.io

À quoi sert l’intégration

Les journaux de pointage d’un appareil biométrique sont les entrées et sorties d’un employé. Frappe HR les stocke dans le pointage d’employé (Employee Checkin).

La présence se marque ensuite à partir de ces pointages et du type de poste (Shift Type) de l’employé, grâce à la présence automatique (Auto Attendance).

La même démarche vaut pour tout contrôle d’accès qui produit des journaux IN/OUT.

Préparer la présence automatique

Avant d’importer ou de synchroniser les journaux, il faut préparer les employés et leurs postes pour que la présence automatique puisse calculer la présence.

  1. Configurez la présence automatique, les fiches employé et les affectations de poste.
  2. Renseignez l’identifiant de pointeuse (Attendance Device ID) sur chaque employé, d’après l’identifiant de l’appareil.

Alimenter les pointages

Trois voies existent, selon l’appareil.

Import de fichier

La voie la plus simple : produire un Excel ou un CSV des entrées et sorties, puis l’importer périodiquement dans le pointage d’employé avec l’outil d’import de données de Frappe HR.

API

La synchronisation peut passer par l’API de Frappe HR. Cette voie demande un peu de technique : l’intégrateur Frappe HR ou le fournisseur de la pointeuse peut la mettre en place.

  1. Créez un utilisateur du site, destiné à créer les journaux. La méthode exige une connexion. Cet utilisateur doit pouvoir créer un pointage d’employé.
  2. Générez une clé d’API et un secret d’API pour cet utilisateur.
  3. Renseignez l’identifiant de pointeuse sur les employés.
  4. Envoyez un POST vers /api/method/hrms.hr.doctype.employee_checkin.employee_checkin.add_log_based_on_employee_field.

L’endpoint retrouve l’employé à partir de la valeur du champ indiqué, puis crée le pointage. La documentation du code source HRMS décrit l’implémentation.

ParamètreRôle
employee_field_valueValeur cherchée sur l’employé, en général l’identifiant de pointeuse présent dans le journal et sur la fiche
timestampHorodatage du journal, chaîne au format 2022-04-08 10:48:08.000000
device_idFacultatif. Lieu ou identifiant d’appareil, courte chaîne
log_typeFacultatif. Sens du pointage s’il est connu (IN/OUT)
skip_auto_attendanceFacultatif. 0 ou 1, reporte la présence automatique pour ce journal
employee_fieldnameChamp de l’employé utilisé pour la recherche. Défaut : attendance_device_id
latitudeFacultatif. Latitude du lieu de poste si un lieu est affecté
longitudeFacultatif. Longitude du lieu de poste si un lieu est affecté

La réponse est le document de pointage d’employé créé.

Script pour appareils ZKTeco

Cette voie ne concerne que les appareils ZKTeco, ou équivalents, qui parlent le protocole ZK en TCP/IP. Le script biometric-attendance-sync-tool lit les journaux sur l’appareil et les pousse dans Frappe HR avec l’API ci-dessus. Les instructions d’installation sont sur la page du dépôt.

Choisir une méthode

Les méthodes 1 et 2 ne dépendent pas d’une liste de compatibilité. La méthode 3 s’appuie sur les appareils compatibles avec la bibliothèque pyzk : en pratique, un ZKTeco ou un appareil proche qui communique en TCP/IP via le protocole ZK. Un essai chez le fournisseur permet de vérifier le script, car la compatibilité dépend de plusieurs facteurs.

L’import de fichier fonctionne partout, mais il reste manuel et périodique. L’API et le script demandent un suivi, puis la synchronisation est automatique.

Sur un seul site, l’outil doit joindre la pointeuse en TCP/IP, donc en général sur le même réseau local. Il envoie ensuite les journaux au site Frappe HR par l’API.

Sur plusieurs sites, la documentation recommande plutôt l’API, beaucoup de fournisseurs sachant pousser les journaux de plusieurs lieux. Le script peut aussi servir si l’on maîtrise le réseau.

Pages liées