CRMconnect Azuvio · Docs

Workflow: Recruit to Payroll

Modules involved: Recruitment · Staff (HR) · HR Profile · HR Payroll · Timesheets
Who uses it: HR manager, Recrutor, Manager departament, Financiar
Durata tipică: 2–8 săptămâni recrutare + continuu (lunar pentru payroll)

Overview

Ciclul complet de HR: de la identificarea nevoii de angajare până la primul fluturaj de salariu. Acoperă recrutarea structurată (propunere → campanie → candidați → interviuri → angajare), onboarding-ul HR, și calculul lunar al salariului (prezență → calcul brut → deduceri → net).


Diagrama fluxului

[PROPUNERE RECRUTARE]
  │  definești nevoia: poziție, departament, număr posturi, buget
  │  ↓ Aprobare propunere → lansare campanie
  │
[CAMPANIE RECRUTARE]
  │  anunț publicat pe canale (LinkedIn, job boards, etc.)
  │  ↓ Candidații aplică
  │
[CANDIDAT]
  │  status: Application (1) → Potential (2) → Interview (3)
  │         → Won Interview (4) → Send Offer (5) → Elect / Hired (6)
  │         ↘ Non-Elect (7) / Unanswer (8) / Transferred (9)
  │
[INTERVIU]
  │  programare + evaluare + scoring candidat
  │  ↓ Candidat selectat → status Elect (6)
  │
[ANGAJARE → STAFF creat automat]
  │  fișă de post, departament, rol, acces CRM
  │
[ONBOARDING HR PROFILE]
  │  checklist onboarding, contracte HR, persoane întreținere
  │  training, fișă HR completă
  │
[PONTAJ LUNAR]
  │  zile lucrate / concedii / absențe înregistrate
  │  ↓ Aprobare pontaj
  │
[CALCUL SALARIU (Payroll)]
  │  brut = salariu de bază + bonusuri + comisioane
  │  deduceri = asigurări + impozit pe venit + rețineri
  │  net = brut − deduceri
  │  ↓ Generare fluturaș
  │
[FLUTURAȘ (Payslip) ✓]
  │  status: payslip_opening → aprobat → distribuit

Pas cu pas

1. Propunere de Recrutare — Definirea nevoii

Unde: /admin/recruitment/recruitment_proposal

Ce conține propunerea:

  • Poziția căutată (Job Position din HR Profile)
  • Departamentul angajator
  • Numărul de posturi necesare (amount_recruiment)
  • Perioada: dată start – dată final
  • Justificare / buget estimat

Flux de aprobare:
Propunerea trece prin aprobare managerială (dacă e configurat) înainte de a deveni campanie activă.


2. Campanie de Recrutare — Publicarea postului

Unde: /admin/recruitment/recruitment_campaign

Campania conține:

  • Codul campaniei (campaign_code)
  • Titlul postului și descrierea
  • Canalul de recrutare (cp_position, cp_status)
  • Canale de distribuție: LinkedIn, eJobs, BestJobs, intern, etc. (configurabile în /admin/recruitment/recruitment_channel)

Statusuri campanie:
Numerice (1–10) configurabile per implementare; tipic: Deschisă, Închisă, Suspendată.


3. Candidat — Evaluarea și selecția

Unde: /admin/recruitment/candidate_profile

Cum intră un candidat:

  • Manual: HR introduce CV-ul
  • Import: din fișier sau formular de aplicare public

Profilul candidatului include:

  • Date personale: nume, dată naștere, gen, CNP
  • Experiență profesională (cd_work_experience)
  • Educație / certificări (cd_literacy)
  • Informații familie (cd_family_infor)
  • Note follow-up (cd_care)

Statusurile candidatului — mașina de stare:

Cod Status Descriere Acțiune tipică
1 Application CV primit, neevaluat HR verifică CV-ul
2 Potential CV selectat Invitație la interviu telefonic
3 Interview Programat la interviu Programare interviu creată
4 Won Interview Promovat la etapa finală Interviu tehnic / cu managerul
5 Send Offer Ofertă trimisă Email ofertă generat
6 Elect Angajat → creează Staff automat Contract semnat
7 Non-Elect Respins Email de mulțumire (opțional)
8 Unanswer Nu a răspuns la ofertă Follow-up după X zile
9 Transferred Mutat la altă campanie Realocat alt departament
10 Freedom Ieșit din proces Arhivat

Tranziția critică: Când statusul ajunge la 6 (Elect), sistemul creează automat un Staff record populat cu datele candidatului (nume, email, telefon). Candidatul devine angajat activ în CRM.


4. Interviu — Evaluarea structurată

Unde: /admin/recruitment/interview_schedule

Programare interviu:

  • Data, ora (from → to)
  • Intervievator (interviewer = staff)
  • Legătura cu candidatul via cd_interview

Evaluare candidat:

  • Formular de evaluare (rec_evaluation_form) cu criterii predefinite (rec_list_criteria)
  • Scor per criteriu → scor total candidat
  • Comparare candidați pentru aceeași poziție

5. Angajare — Crearea angajatului în sistem

Unde: /admin/staff (creat automat) + /admin/hr_profile

Ce se creează automat la status Elect (6):

  • Staff record în tblstaff: firstname, lastname, email, phone din candidat
  • Record de transfer (rec_transfer_records) pentru onboarding tracking

Ce se completează manual:

  • Rol și permisiuni CRM (/admin/roles)
  • Departament
  • Data angajării
  • Tip contract

6. Onboarding HR Profile — Integrarea angajatului

Unde: /admin/hr_profile

Modulul HR Profile acoperă:

Sub-modul URL Descriere
Dashboard HR /admin/hr_profile/dashboard Overview angajați
Fișe de post /admin/hr_profile/job_positions Descrieri posturi
Organigramă /admin/hr_profile/organizational_chart Structura companiei
Onboarding /admin/hr_profile/reception_staff Checklist intrare angajat
Evidență HR /admin/hr_profile/staff_infor Date HR complete
Training /admin/hr_profile/training Programe formare
Contracte HR /admin/hr_profile/contracts Contracte individuale muncă
Persoane întreținere /admin/hr_profile/dependent_persons Soț/soție, copii (impact fiscal)
Checklist ieșire /admin/hr_profile/resignation_procedures Proceduri CIM

Checklist onboarding:

  • Lista de sarcini per angajat nou (acces sisteme, echipamente, inducție)
  • Status per sarcină: status = 0 (pending) → status = 1 (complet)
  • Alocate via group_checklist_allocation cu staffid

7. Pontaj (Timesheets) — Înregistrarea prezenței

Unde: /admin/hr_payroll/manage_attendance sau /admin/staff/timesheets

Date de pontaj lunare per angajat (hrp_employees_timesheets):

Câmp Descriere
standard_workday Zile lucrătoare standard în lună
actual_workday Zile efectiv lucrate
paid_leave Zile concediu plătit
unpaid_leave Zile concediu neplătit

Aprobare pontaj:
Managerul aprobă înregistrările de prezență înainte de generarea payslip-ului. Fără aprobare, datele nu sunt incluse în calcul.


8. Calculul Salariului (Payroll) — Generarea fluturașului

Unde: /admin/hr_payroll

Fluxul de calcul — pas cu pas:

INTRĂRI:
  ├── Salariu de bază (din contractul HR)
  ├── Zile lucrate efectiv (din pontaj aprobat)
  ├── Bonusuri KPI (hrp_bonus)
  ├── Comisioane (din commission module)
  └── Deduceri (hrp_deductions)

CALCUL BRUT:
  salariu_zilnic = salariu_baza / standard_workday
  salariu_realizat = salariu_zilnic × actual_workday
  brut = salariu_realizat + bonusuri + comisioane

DEDUCERI:
  asigurari_angajat = brut × cota_CAS + cota_CASS + ...
  impozit_pe_venit = (brut - asigurari - rebate_personal) × cota_impozit
  retineri_diverse = din hrp_deductions

NET = brut - asigurari_angajat - impozit_pe_venit - retineri_diverse
COST_TOTAL = brut + contributii_angajator

Componente configurable (hrp_payroll_columns):

  • taking_method: system (calculat automat), calculator (formulă custom), constant (sumă fixă)
  • Rate de impozit: brackets progressive din hrp_income_tax_rates
  • Deduceri: configurabile din /admin/hr_payroll/setting

Statusuri payslip:

Status Descriere
payslip_opening Draft — generat, nesupus aprobării
Aprobat Verificat de HR/Financiar
Distribuit Fluturașul trimis angajatului

Generare:
Buton Generează Fluturași pentru luna selectată → sistem calculează automat pentru toți angajații activi cu pontaj aprobat.


Ce se creează automat

Eveniment Se creează automat
Candidat → status Elect (6) Staff record în CRM cu date din profil candidat
Staff record creat rec_transfer_records pentru onboarding tracking
Onboarding activat Checklist tasks alocate angajatului nou
Generare payroll Payslip per angajat cu toate componentele calculate
Payslip aprobat Email/notificare angajat cu fluturașul atașat

Puncte unde fluxul poate bloca

Problemă Cauză probabilă Soluție
Staff nu se creează la angajare Status candidat nu a ajuns la 6 (Elect) Schimbă explicit statusul în Elect
Payslip-ul are valori 0 Pontaj neaprobat sau salariu neconfigurat Aprobă pontajul; completează salariul în contractul HR
Impozitul calculat greșit Rate de impozit neconfigurate Configurează hrp_income_tax_rates cu brackets corecte
Fluturașul nu ajunge la angajat Email SMTP nesetat sau angajat fără email Verifică email angajat + SMTP la setări
Bonusul KPI nu apare KPI-urile perioadei neînchise sau neaprobate Aprobă KPI-urile din /admin/hr_payroll/manage_bonus

Rapoarte relevante

  • Rapoarte Recrutare — candidați per campanie, surse, timpi de angajare
  • Rapoarte HR Payroll/admin/hr_payroll/reports — costuri salariale per departament
  • Timesheets — ore per angajat per perioadă
  • Organigramă/admin/hr_profile/organizational_chart — structura actualizată post-angajare

Module implicate — documentație detaliată

← Înapoi la Workflows

Tip

Începeți pregătirea salariilor de la aprobarea comisioanelor — Managerul de Vânzări trebuie să aprobe și să genereze chitanțele de plată a comisioanelor înainte de procesarea salariilor astfel totalul final de salarizare include compensația variabilă confirmată.

Note

Offboarding-ul în acest flux necesită dezactivarea contului de angajat, nu ștergerea lui. Ștergerea elimină angajatul din toate înregistrările istorice (fluturași aprobați, timesheeturi procesate, tichete rezolvate) care referențiază contul lor.