Undicesima guida operativa Odoo 19 per PMI italiane. Esciamo dalla parte fiscale per entrare nella gestione del personale: anagrafica dipendenti, contratti CCNL italiani, presenze e ferie, busta paga. Odoo è una valida alternativa a Zucchetti / TeamSystem / Inaz se hai meno di 50 dipendenti e vuoi un sistema integrato con il gestionale.
In questa guida vediamo come Odoo 19 gestisce: anagrafica dipendente italiano completa (CF, residenza, contratto), tab specifici per la normativa italiana (CCNL, livelli retributivi), integrazione con Timesheet e Presenze, e i moduli aggiuntivi per chi vuole anche la busta paga. Esempio reale con Mario Rossi, Sviluppatore Senior Odoo presso G Tech Group S.R.L.S.
Cosa include la gestione HR di Odoo
| Modulo | Funzionalità | Community / Enterprise |
|---|---|---|
| hr (Dipendenti) | Anagrafica, dipartimenti, posizioni, organigramma | Community ✅ |
| hr_recruitment | Selezione del personale, candidati, colloqui | Community ✅ |
| hr_holidays | Ferie, permessi, malattia, congedi | Community ✅ |
| hr_attendance | Presenze (ingresso/uscita), badge, geolocalizzazione | Community ✅ |
| hr_timesheet | Foglio ore per progetti, fatturazione clienti | Community ✅ |
| hr_contract | Contratti con dati retributivi base | Community ✅ |
| hr_payroll | Busta paga, regole salariali, ritenute IRPEF/INPS | Enterprise |
| hr_appraisal | Valutazioni periodiche dipendenti, obiettivi, feedback | Enterprise |
| hr_skills | Mappa competenze, gap analysis | Enterprise |
| hr_referral | Programma referral interno (segnalazioni candidati) | Enterprise |
Step 1 — Apri il modulo Dipendenti
Dal menu apps clicca Dipendenti:

La vista kanban di default mostra le card dei dipendenti con foto, nome, posizione, contatti. Le viste alternative (icone in alto a destra):
- Kanban: card con foto (mostrata in figura)
- Lista: tabella con colonne ordinabili (utile per export Excel)
- Mappa skill: rappresentazione delle competenze
- Cronologia: timeline assunzioni/dimissioni
- Grafico: distribuzione per dipartimento/posizione
- Pivot: analisi multi-dimensione
Nell’esempio vediamo Mario Rossi, Sviluppatore Senior Odoo, presso G Tech Group S.R.L.S.
Step 2 — La scheda completa del dipendente
Cliccando sulla card si apre la scheda anagrafica completa:

I dati nell’intestazione:
- Avatar / Foto: per identificazione rapida (ID badge)
- Nome: Mario Rossi
- E-mail aziendale: mario.rossi@gtechgroup.it
- Telefono ufficio: +39 06 1234567
- Cellulare: +39 333 1234567
- Tag: per categorizzare (es. “Sviluppo”, “Senior”, “Remote-friendly”)
I 6 tab della scheda dipendente
- Lavoro (attivo): posizione, ufficio, supervisore, indirizzo lavorativo, organigramma
- Curriculum: percorso professionale, esperienze, formazione
- Certificazioni: corsi, attestati, scadenze (es. Odoo Certified Developer)
- Personale: codice fiscale, indirizzo residenza, stato civile, figli, contatti emergenza
- Libro paga: dati per la busta paga (con modulo Enterprise)
- Impostazioni: utente Odoo collegato, permessi di accesso
Tab Lavoro – sezione “LAVORO”
- Ufficio: dipartimento di appartenenza (es. “Amministrazione”)
- Posizione lavorativa: ruolo dal job catalog (es. “Sviluppatore Senior”)
- Figura professionale: descrizione libera più specifica (es. “Sviluppatore Senior Odoo”)
- Supervisore: dipendente a cui riferisce gerarchicamente
Tab Lavoro – sezione “LUOGO”
- Indirizzo di lavoro: sede aziendale (G Tech Group S.R.L.S., Via Roma 1, 00184 Roma)
- Luogo di lavoro: ulteriore specificazione (es. “Edificio 2”, “da remoto”)
- Luogo di lavoro abituale: per smart working e ibrido
Sezione “ORGANIGRAMMA”
Si aggiorna automaticamente al popolare il campo Supervisore. Visualizza la posizione del dipendente nell’organizzazione (sopra il proprio manager, sotto i propri report).
Step 3 — Dati italiani specifici nel tab Personale
Il tab Personale contiene i dati anagrafici critici per la gestione italiana:
Identificazione
- Codice Fiscale (Identification ID): 16 caratteri (es.
RSSMRA85C15H501Zper Mario Rossi nato 15/03/1985 a Roma). Odoo NON valida automaticamente il modulo CF italiano in Community, ma esiste modulo OCAl10n_it_codici_fiscaliche fa la validazione. - Numero matricola: identificativo interno aziendale (es.
EMP-2026-042) - Numero badge: per il sistema presenze
Residenza
- Indirizzo, città, provincia, CAP, paese
- Nazionalità
- Luogo di nascita, data di nascita
Famiglia (per il calcolo detrazioni IRPEF)
- Stato civile: nubile/celibe, sposato/a, divorziato/a, vedovo/a, convivente
- Coniuge: nome e dati per i carichi famiglia
- Numero figli: per calcolo Assegno Unico INPS
- Numero figli a carico: per detrazioni IRPEF
- Familiari a carico: altri (genitori, parenti)
Contatti di emergenza
- Nome e cognome del contatto
- Numero di telefono
- Relazione (coniuge, genitore, etc.)
Permesso di lavoro
Per dipendenti non comunitari: tipo permesso, scadenza, validità per autorizzazione lavoro.
Step 4 — Il modulo Contratti (hr_contract)
Per ogni dipendente Odoo permette di registrare uno o più contratti nel tempo. I dati del contratto sono:
Identificazione
- Riferimento contratto: numero/codice interno
- Stato: Nuovo, In corso, In attesa di firma, Scaduto, Cancellato
Tempi
- Data inizio
- Data fine (per contratti a termine)
- Periodo di prova: data fine (3 o 6 mesi tipici)
- Tempo pieno o parziale (% di full-time)
Tipo di contratto
- Tempo Indeterminato
- Tempo Determinato (con data fine)
- Apprendistato (con data fine + livello)
- Collaborazione (Co.Co.Co., Partita IVA)
- Stage / Tirocinio
- Somministrazione (tramite agenzia)
CCNL applicato
Il Contratto Collettivo Nazionale del Lavoro è il riferimento per stipendio minimo, ferie, malattia, ROL, scatti di anzianità. I principali CCNL italiani:
- CCNL Metalmeccanico Industria (Confindustria): 1.500.000+ lavoratori
- CCNL Metalmeccanico Artigianato (Confartigianato)
- CCNL Commercio (Federdistribuzione)
- CCNL Commercio Confcommercio
- CCNL Bancari (ABI)
- CCNL Pubblici Esercizi (ristorazione)
- CCNL Edilizia
- CCNL Studi Professionali
- CCNL Tessile e Abbigliamento
Per Mario Rossi (sviluppatore Odoo), il CCNL applicabile è probabilmente Metalmeccanico Industria Livello D1 o D2 oppure Commercio livello 1 Quadro a seconda dell’azienda.
Compenso
- Stipendio mensile lordo: es. 2.700 € (13 mensilità) o 2.500 € (14 mensilità)
- Tredicesima: corrisposta a dicembre
- Quattordicesima: corrisposta a giugno (se prevista dal CCNL)
- Premio produzione: variabile
- Benefit: auto aziendale, telefono, ticket mensa, polizza sanitaria
Step 5 — Modulo Presenze (hr_attendance)
Per tracciare orari di lavoro entrata/uscita:
- Web check-in/out: dipendente clicca un pulsante dal browser/mobile
- QR Code / Badge: badge fisico per timbratura
- Kiosk mode: tablet all’ingresso, ogni dipendente striscia il proprio codice
- Geolocalizzazione: verifica che la timbratura avvenga in azienda (anti-frode)
- Riconoscimento facciale: con modulo aggiuntivo
I dati raccolti generano automaticamente il foglio presenze mensile esportabile per il commercialista/consulente del lavoro.
Step 6 — Ferie e permessi (hr_holidays)
Configurazione tipica per dipendente CCNL italiano:
| Tipologia | Maturazione | Approvazione |
|---|---|---|
| Ferie | 26 giorni / anno (CCNL Metalmeccanico) | Manager + HR |
| ROL (Riduzione Orario Lavoro) | 4-8 giorni / anno | Manager |
| Ex-festività | 4 giorni / anno | Manager |
| Permessi retribuiti | 3 giorni / anno + per visite mediche | HR + giustificativo |
| Malattia | Illimitati (con certificato medico INPS) | Solo notifica + cert.medico |
| Maternità / Paternità | 5 mesi maternità + 10 gg paternità | Notifica + cert.INPS |
| Congedo parentale | 6 mesi (3+3 per ciascun genitore) | Notifica |
| Aspettativa non retribuita | Variabile | Manager + HR + Direzione |
Step 7 — Foglio ore (hr_timesheet)
Per professionisti che fatturano a ore (sviluppatori, consulenti, designer):
- Ogni dipendente compila settimanalmente le ore lavorate per progetto/cliente
- Le ore vengono aggregate per progetto
- Generazione automatica fatture clienti a fine mese basate sulle ore registrate (a tariffa oraria)
- Calcolo costo orario interno per analisi profitto progetto
Esempio Mario Rossi: 8 ore/giorno × 22 giorni = 176 ore/mese, ripartite tra 3-4 progetti clienti diversi.
Step 8 — Busta paga (hr_payroll – Enterprise)
Il modulo Payroll di Odoo Enterprise gestisce:
- Regole salariali: stipendio base + indennità + premi + detrazioni
- Calcolo IRPEF: scaglioni 23%, 35%, 43% + detrazioni famiglia/lavoro
- Calcolo INPS: aliquota 9,19% dipendente + 23,81% azienda (totale 33%)
- Calcolo INAIL: variabile per settore/rischio (0,5% – 13% del lordo)
- Generazione cedolino PDF (busta paga)
- F24 per ritenute mensili: codici tributo 1001 (lavoratori dipendenti), 1040 (autonomi)
- UniEmens: comunicazione mensile INPS
- Certificazione Unica (CU): annuale
- Modello 770: dichiarazione del sostituto d’imposta
Alternative per chi è su Community
- OCA Italian Payroll: modulo gratuito, copre busta paga base italiana (livello base, non sostituisce il commercialista del lavoro)
- Integrazione con Zucchetti / TeamSystem: passi i dati a un sistema dedicato
- Outsource al consulente del lavoro: invii il foglio presenze al commercialista, lui prepara cedolini esternamente
Costi tipici della gestione HR PMI italiana
| Voce | Costo orientativo |
|---|---|
| Consulente del lavoro / commercialista (50 dipendenti) | 20.000-35.000 €/anno |
| Sistema gestione presenze (badge + lettore + software) | 2.000-8.000 € una tantum + 50-200 €/mese |
| Odoo Community HR (self-hosted) | Gratuito (solo costo server ~30 €/mese) |
| Odoo Enterprise HR (incluso Payroll) | ~7 € utente/mese (es. 50 dip = 4.200 €/anno) |
| Zucchetti HR/Payroll PMI | 1.500-6.000 €/anno |
| TeamSystem HR | 2.500-10.000 €/anno |
Casi pratici PMI italiana
Caso 1 — Web agency 8 sviluppatori in smart working
Stack Odoo: hr + hr_attendance (geolocalizzazione disattivata) + hr_timesheet + hr_holidays. Presenza tracked via web check-in. Foglio ore aggregato per progetto cliente. Fatturazione automatica a fine mese. Costo zero (Community). Cedolini fatti dal commercialista del lavoro esterno.
Caso 2 — PMI manifattura 25 operai + 8 impiegati
Stack Odoo: hr + hr_attendance (con badge fisico kiosk in fabbrica) + hr_holidays + integrazione con sistema buste paga esterno (Zucchetti o Inaz). Foglio presenze auto-generato esportato in formato XML per Zucchetti.
Caso 3 — Studio professionale 5 consulenti
Stack Odoo: hr + hr_timesheet (essenziale per fatturare clienti a ore) + hr_holidays. Niente badge. Consulenti compilano timesheet settimanale dal mobile. Foglio ore manda automatico al cliente come allegato fattura per giustificare le ore.
Caso 4 — Cooperativa con 80 soci-lavoratori
Stack Odoo Enterprise: hr + hr_payroll completo + hr_holidays + hr_attendance. Calcolo automatico delle ritenute IRPEF/INPS, generazione UniEmens mensile, gestione 13ma/14ma, calcolo TFR annuale. Risparmio rispetto al commercialista del lavoro: 60-70%.
FAQ
Odoo HR è conforme alla normativa italiana sulla privacy (GDPR)?
Sì. Odoo HR rispetta GDPR by design: anonimizzazione utenti, possibilità di esportare dati personali del dipendente su richiesta, log delle modifiche all’anagrafica, gestione consensi marketing (newsletter aziendali). Per uso intensivo, considera anche cifratura at-rest del database (PostgreSQL TDE).
Posso integrare Odoo HR con il mio sistema badge / lettore impronte?
Sì, tramite modulo aggiuntivo. I sistemi più diffusi (Selesta, BCS, ZKTeco, RealAccess, Kone) hanno integrazione tramite REST API o file CSV/XML. Tempo implementazione: 2-5 giorni di sviluppo da parte di un partner Odoo certificato.
Le ferie di Odoo HR si integrano con il calendario aziendale e Outlook?
Sì. Il modulo Calendar di Odoo si sincronizza nativamente con Google Calendar e con Outlook 365. Le ferie approvate appaiono automaticamente nel calendario condiviso. I colleghi vedono “Mario Rossi – Ferie” senza dover chiedere.
Posso usare Odoo HR per la gestione candidati (recruiting)?
Sì. Il modulo hr_recruitment include: pubblicazione annunci su LinkedIn/Indeed, ricezione CV via form web, valutazione candidati (pipeline kanban: candidato → colloquio HR → colloquio tecnico → offerta → assunto), assunzione finale che crea automaticamente l’anagrafica dipendente. Dashboard “Tempo medio di assunzione” e “Costo per assunzione”.
Come gestisco il TFR (Trattamento di Fine Rapporto)?
Il TFR è una componente specifica italiana. Odoo Enterprise hr_payroll lo calcola automaticamente: TFR = stipendio lordo annuo / 13,5 + 75% inflazione ISTAT. Per Odoo Community, il TFR va calcolato esternamente dal commercialista. Salvataggio in scheda dipendente per storico.
Prossimi passi
Nelle prossime guide vedremo come configurare il modulo Inventario per gestione magazzino e carico/scarico, come impostare il modulo CRM e pipeline vendite, e come creare la dashboard CFO con KPI finanziari real-time.
Vuoi consolidare la gestione HR della tua PMI in Odoo?
G Tech Group è partner ufficiale Odoo Italia: configuriamo anagrafica dipendenti, integrazione con sistema presenze, contratti CCNL italiani, integrazione con consulente del lavoro o gestione Payroll completa.
Richiedi un preventivo gratuito oppure prova la nostra demo Odoo 19 live. Oppure prova Odoo direttamente su odoo.com (link partner Brentasoft).
Vuoi una soluzione su misura per la tua azienda?
Brentasoft sviluppa gestionali, CRM e software personalizzati per PMI italiane. Parliamo del tuo progetto.