Ressources humaines (module RH)
Fiches employés, pointage, congés, planning et paie SYSCOHADA — le module RH complet.
Module complet en 5 phases, accessible aux rôles OWNER, DAF et MANAGER depuis la sidebar (la Badgeuse et Mes congés sont accessibles à tous). Le module entier peut être désactivé pour un utilisateur via User.disabledModules (clé hr) par le SUPERADMIN.
33.1 — Fiches employé · /dashboard/hr/employees
Création
- Bouton « Importer les utilisateurs existants » : crée une fiche vierge pour chaque utilisateur qui n’en a pas (rapide pour démarrer).
- Bouton « Nouvelle fiche » : sélectionne un utilisateur existant et crée sa fiche RH.
Édition (page détail, 4 onglets)
- Identité : date/lieu de naissance, nationalité, n° pièce d’identité, adresse, contact d’urgence.
- Contrat : matricule, type (CDI/CDD/STAGE/INTERIM/SAISONNIER/CONSULTANT/AUTRE), poste, département, établissement principal, heures hebdo, dates (embauche, fin d’essai, fin CDD, sortie + motif), PIN badgeuse (utilisé pour la Phase 2).
- Rémunération : salaire de base brut, devise (XOF par défaut), méthode de paiement, banque + n° compte/IBAN, n° sécurité sociale (CNSS/IPRES), n° identifiant fiscal. Bloc Soldes de congés éditable manuellement.
- Documents : URL externe (Drive, S3…) + libellé + type (CONTRAT, CNI, DIPLOME, RIB…). L’upload de fichiers n’est pas encore branché (à venir).
33.2 — Pointage & badgeuse
Badgeuse · /dashboard/hr/clock (tous rôles)
- Interface tactile avec clavier numérique et horloge live.
- L’employé tape son PIN (défini par le RH dans la fiche, onglet Contrat) → reconnaissance auto → bouton « Pointer l’entrée » ou « Pointer la sortie » selon son état actuel.
- Pointe automatiquement via le hook ménage : la clôture d’une session de nettoyage crée un
TimeEntrysourceMénage(idempotent).
Feuille de temps · /dashboard/hr/timesheet (OWNER/DAF/MANAGER)
- Onglet Synthèse : tableau récap par employé du mois sélectionné (heures totales, jours travaillés, nombre de pointages). Export CSV.
- Onglet Détail : liste des pointages individuels, édition manuelle (corrections), source visible (Manuel/Badgeuse/Mobile/Ménage).
33.3 — Congés & absences · /dashboard/hr/leaves (tous rôles)
3 onglets adaptés au rôle :
- Mes demandes : créer/voir/annuler ses propres demandes ; solde personnel affiché en haut.
- À approuver (DAF) : demandes en attente avec boutons Approuver/Refuser (modal avec note optionnelle).
- Toutes (Manager) : vue d’ensemble.
Types : PAYÉ, MALADIE, SANS SOLDE, MATERNITÉ, PATERNITÉ, EXCEPTIONNEL, RÉCUPÉRATION.
Logique métier
- Décompte en jours ouvrés (lundi-vendredi, weekends exclus).
- Demi-journée (0.5j) supportée si même date début/fin.
- Anti-chevauchement : impossible de créer une demande chevauchant une autre demande active.
- Soldes :
payeetrecuperationdécomptés automatiquement à l’approbation ; les autres types sont indicatifs. - Annulation d’une demande approuvée par le DAF → recrédit automatique du solde.
- Notifications temps réel : DAF/OWNER/MANAGER notifiés à la création ; employé notifié à l’approbation/refus.
33.4 — Planning · /dashboard/hr/planning (OWNER/DAF/MANAGER)
Vue grille hebdomadaire : employés en ligne × 7 jours en colonne.
- Navigation
‹ Semaine précédente · Aujourd'hui · Semaine suivante ›. - Filtre par établissement (n’affiche que les employés rattachés).
- Clic
+dans une cellule → modal « Nouveau shift » pré-rempli (8h-16h). - Clic sur un shift existant → modal d’édition (employé, établissement, début/fin, poste, notes).
- Couleur déterministe du shift selon le poste (cohérence visuelle).
- Bouton « Copier semaine » : duplique tous les shifts de la semaine en cours vers la semaine N+1.
Détection de conflits (warnings non bloquants à l’enregistrement) :
- Chevauchement avec un autre shift du même employé.
- Recouvrement avec un congé approuvé.
33.5 — Paie · /dashboard/hr/payroll (OWNER/DAF uniquement)
Workflow mensuel par établissement.
Étape 1 — Génération (bouton « Générer un mois ») Sélectionne (établissement, année, mois). Le service :
- Liste les employés actifs rattachés à l’établissement.
- Agrège leurs
TimeEntrydu mois → heures et jours travaillés. - Agrège leurs
LeaveRequest APPROVED→ jours pris + déductionSANS_SOLDEau prorata du salaire de base journalier. - Crée une
PayrollLinepar employé, statutBrouillon.
Étape 2 — Ajustements (mode Brouillon uniquement)
Pour chaque ligne, modal d’édition : heures supplémentaires (avec taux configurable, défaut 1.25), primes + libellé, retenues + libellé, mode de paiement, compte SYSCOHADA personnalisable (défaut 6611).
Étape 3 — Verrouillage (bouton « Verrouiller »)
Passe en Verrouillée. Les lignes ne sont plus modifiables. L’export comptable devient disponible. Bouton « Rouvrir » disponible tant que pas payée.
Étape 4 — Paiement (bouton « Marquer payée », date sélectionnable) Pour chaque ligne :
- Crée automatiquement un
Expensedans le journal des dépenses (catégorieSALARY, libellé« Salaire — Prénom Nom — Mois Année »). - Le mode de paiement RH est mappé vers
PaymentMethod(VIREMENT → BANK_TRANSFER, ESPECES → CASH, etc.). - Référence croisée
PayrollLine.expenseId↔Expense(idempotent : relancer ne re-crée pas).
Statut passe à Payée, irréversible.
Export comptable SYSCOHADA (CSV téléchargeable dès Verrouillée)
Format : Date, Journal, Pièce, Compte, Libellé, Débit, Crédit, Devise.
- Constatation de la charge (date fin de mois, journal
OD, piècePAIE-YYYY-MM) :- Débit 6611 « Appointements salaires » (ou code custom) — par employé
- Crédit 421 « Personnel rémunérations dues » — par employé
- Paiement (date de paiement, journal
BQ, piècePAIE-YYYY-MM-PAY) :- Débit 421 Personnel
- Crédit 521 (Virement/Chèque), 571 (Espèces) ou 524 (Mobile Money) selon le mode
Bulletins PDF : un par employé, téléchargeable depuis la page détail période (icône fichier). En-tête établissement, période, rubriques détaillées (base, heures sup, absences sans solde, primes, retenues), net à payer.
⚠️ Périmètre V1 : Teranga calcule uniquement le brut. Le calcul des charges sociales (CNSS, IPRES), de l’IR et les déclarations fiscales doivent être effectués par votre logiciel comptable externe via l’import du CSV SYSCOHADA.
Document mis à jour le 27 mai 2026 — Teranga PMS v2.14 (Onboarding A + B, RGPD, cookies, tour produit)
Mises à jour précédentes : v2.13 (Module RH V1 — fiches employé, pointage, congés, planning, paie SYSCOHADA) · v2.12 (Comptabilité fournisseurs SYSCOHADA, comptes & portail fournisseur, prestataires, SMTP) · v2.11 (Composition / stock décimal) · v2.10 (Points de vente) · v2.9 (Commande QR)
v2.8 : Mode hors ligne PWA + Android (file IndexedDB/Room DB, badge, sync auto), Dépenses & Décaissements (module complet + rapport PDF Solde), flag Bon propriétaire modifiable après création, modification complète de réservation avec recalcul facture, factures automatiques pour les réservations channel manager, script de backfill, informations client/séjour dans les factures PDF réservation.
v2.7 : Point de vente avec attribution au serveur (POS → serveur), date d’opération rétroactive web + mobile (15 j + override superviseur), rapports corrigés pour afficher le serveur attribué plutôt que le compte POS.
v2.6 : Module Clients & Fidélité, remises automatiques + manuelles, catégories d’articles dynamiques (web + Android), CA consolidé incluant les revenus de réservations, correctifs PDF (séparateurs de milliers + colonnes du détail des transactions).