SalarEasy · Product

Tot SalarEasy, la un loc

Hubul produsului SalarEasy — modulul de administrare salarii Bono. De aici ajungi la PRD-uri (cu link spre documentele originale), la template-urile de documente din Drive și la cele două prototipuri live, care își păstrează linkurile existente.

Changelog

Se actualizează pe măsură ce se modifică ceva în produs — documente, prototipuri sau acest hub.

28 iul. 2026

Specs Beneficii angajați, adăugate în PRD

Card nou pe pagina PRD pentru categoria Beneficii angajați (medical & sportiv): integrarea IRIS, contorul YTD în EUR, pragurile anuale, splitul impozabil / neimpozabil și intrarea beneficiilor în calculul salarial — cu link spre documentul original.

24 iul. 2026

Documentația de generare D112, legată în template-uri

Rubrica „Declarații ANAF" are acum tot ce ține de generarea D112: task-ul generatorului, maparea câmpurilor pe SalarEasy, regulile de completare și modelele XML/PDF, cu link spre folderul din Drive.

24 iul. 2026

Icebox populat cu primele teme

Șase teme amânate din scope-ul MVP: încetarea contractului calculată în aplicație, act adițional pentru orice atribut, concediile speciale, calculul automat al indemnizației CM, angajarea altcuiva și D112 pentru codurile 02–16.

21 iul. 2026

S-a lansat salareasy-product

Hub unic pentru SalarEasy, construit pe design system-ul edge-33: PRD-uri cu linkuri spre documentele originale, template-uri de documente, prototipul de admin, fluxul de autoangajare și icebox.

14 iul. 2026

Completări PRD — ultima rundă de actualizări

Documentul „Completări PRD" (interfață, triggere REGES, motor de calcul) a fost adus la zi pe baza prototipului de admin.

13 iul. 2026

PRD Autoangajare consolidat pentru implementare

PRD-ul fluxului de autoangajare a fost consolidat în repo (docs/PRD.md), cu prototipul live ca sursă de adevăr pentru copy și comportament. Tot atunci: Fișa postului Manager general v2 în template-uri.

10 iul. 2026

Rundă de rafinări pe prototipul de autoangajare

Comentariile din Vercel au fost închise: responsive pe mobil, slug per ecran, regula de 10 zile calendaristice, banner „Cere o modificare", copy.

25 mai 2026

Documentul „Completări PRD" creat

Completările celor trei PRD-uri existente, scrise pe baza prototipului HTML al modulului de administrare.

12 feb. 2026

PRD-urile inițiale SalarEasy

PRD-ul cadru „Modul administrare salarii" plus cele trei PRD-uri componente: Interfață, Motor de calcul salarial și API.

SalarEasy · PRD

Ce construim

Conținutul PRD-urilor, transpus pe scurt. Sursa de adevăr rămâne întotdeauna documentul original — fiecare secțiune are link direct spre el.

Ce e SalarEasy: aplicația Bono de administrare a angajaților firmelor client (payroll) — calculează automat taxele și contribuțiile salariale, dă echipei Ops și contabililor o interfață de administrare (concedii, deduceri, REGES) și comunică prin API cu platforma de contabilitate. Fluxul de autoangajare este poarta prin care antreprenorul se angajează singur pe firma lui.

Word

PRD · Modul administrare salarii (documentul-cadru)

Autor: Cristi · definește cele trei componente ale aplicației

Obiectivul aplicației: să faciliteze administrarea angajaților firmelor client Bono prin calcul automat al taxelor salariale, o interfață pentru contabili/Ops (concedii medicale, concedii de odihnă, deduceri fiscale) și integrare API cu platforma de contabilitate, în ambele sensuri. SalarEasy are trei componente, fiecare cu PRD propriu — cele trei carduri de mai jos.

Word

1 · PRD Interfața modulului de salarizare

UI-ul operațional al salarizării, pentru echipa Ops Bono

Interfața permite gestionarea companiilor și a angajaților, configurarea parametrilor salariali și vizualizarea transparentă a calculului de la brut la net. Principii UX: claritate financiară (cât primește angajatul, cât plătește firma), transparență matematică (fiecare contribuție afișată separat, formulă intuitivă Brut → CAS → CASS → Impozit → Net) și simplitate operațională (stare clară a lunii curente, istoric).

Structura interfeței

Dashboard — overview rapid al calculelor pe ultima lună: listă de angajați cu Companie, Nume, Salariu net, CAS, CASS, Impozit, CAM, Salariu brut și Total cost angajator; căutare după angajat sau companie și navigare în lunile precedente.

Pagina companiei — date firmă (nume, CUI, sediu la Bono / adresa clientului), datele angajatului (în MVP, un singur angajat per firmă), setări la nivel de angajat (salariu brut și casa de sănătate cu dublă confirmare, funcție de bază, tichete de masă), overview-ul calculului pe luna selectată (zile lucrate, concedii și indemnizații, rezumat + detaliere pas cu pas) și documentele descărcabile: fluturaș de salariu, stat de plată, pontaj.

Setări generale (legale) — variabilele aplicației, fiecare editabilă de admin cu dublă confirmare, valoare nouă + data intrării în vigoare și istoric complet al modificărilor: salariul minim pe economie, salariul CIM al clienților Bono, valoarea tichetului de masă, suma scutită de taxe (300 Lei), deducerea pentru tineri sub 26 de ani, cotele CAS 25% / CASS 10% / impozit 10% / CAM 2,25%, zilele de concediu. Plus sub-tabul „Zile lucrătoare" — calendarul zilelor lucrătoare pe fiecare lună, pe ani.

Word

2 · PRD Motorul de calcul salarial

Pipeline determinist: Brut → Net + Cost firmă, cu reguli fiscale condiționale

Motorul primește perioada, salariul brut CIM, funcția de bază, tichetele de masă, zilele și indemnizațiile de concediu (odihnă și medical) și vârsta sub 26 de ani, apoi calculează salariul net și costul total al angajatorului, folosind setările generale și calendarul de zile lucrătoare.

Pașii de calcul și regulile critice
  1. Zilele — din calendarul de zile lucrătoare se determină zilele lucrate (lucrătoare − concediu odihnă − concediu medical); numărul de tichete = zilele lucrate.
  2. Veniturile — salariu brut proporțional cu zilele lucrate + indemnizația de concediu de odihnă + indemnizația de concediu medical + valoarea tichetelor.
  3. Scutirea de taxe (300 Lei din setări) — doar dacă salariul brut CIM ≤ 4.300 Lei și funcția de bază e „da"; prorata cu zilele din lună.
  4. Deducerile — doar la funcția de bază: deducerea personală din matricea OUG 16/2022 (procent aplicat la salariul minim pe economie) și deducerea pentru tineri sub 26 de ani.
  5. Taxele — CAS 25% și CASS 10% pe baza de calcul, impozit 10% pe venitul impozabil după deduceri, CASS 10% pe tichete, CAM 2,25% pentru angajator.

Reguli critice: deducerile și scutirea nu se aplică fără funcția de bază; scutirea dispare complet peste 4.300 Lei brut; ordinea calculelor e fixă și nenegociabilă — contribuții → deduceri → impozit.

Word

3 · PRD API — specificații de comunicare

Comunicare în ambele sensuri cu platforma de contabilitate Bono

SalarEasy primește date la adăugarea unui angajat nou (date firmă, date personale și de contract, CIM semnat) și lunar la încărcarea concediilor (perioade + indemnizații pe zi). Înapoi către contabilitate trimite, lunar la data de cut-off, rezultatele calculului: salariul net, valoarea tichetelor, CAS, CASS, impozit, CAM, plus zilele lucrate și zilele de concediu cu indemnizațiile aferente.

Google Doc

Completări PRD — pe baza prototipului de admin

Completează cele trei PRD-uri de mai sus; documentul viu al modulului de administrare

Documentul aduce PRD-urile la zi cu tot ce s-a decis în prototipul HTML al modulului de administrare, în trei capitole: completări de interfață, triggere API REGES și completări la motorul de calcul.

1 · Completări interfață (selecție)
  • Adăugare manuală firmă și angajat — formulare dedicate „Companie nouă" (cu auto-completare din API ANAF după CUI) și „Angajare nouă" (distinct de fluxul de autoangajare), cu ecrane de confirmare.
  • Status REGES cu 6 stări — nedepus, în curs de înregistrare, înregistrat, în curs de modificare, suspendat, încheiat; editabil doar de admin, cu istoric și override manual pentru depunerile făcute în afara API-ului.
  • Concedii pe pagina angajatului — concediu de odihnă în pop-up; concediu medical în pagină dedicată, cu upload de certificat care completează automat câmpurile (secțiunea D, OUG 158/2005) și nomenclatoarele oficiale D112.
  • Pagina API REGES — view dedicat cu răspunsurile la depuneri (Admis / Respins per angajat, motiv, acțiunea care le-a declanșat), filtre și clopoțel de notificare.
  • Pagina de start — carduri KPI (De revizuit REGES, Companii, Angajați activi) + countdown live până la închiderea lunii; căutare globală firmă/angajat; lista „Adăugați recent".
  • Pagina Firme + stat de plată per firmă — portofoliul de clienți și statul de plată lunar cu toggle Compact / Defalcat și descărcare PDF.
  • Documente generate — template-urile din Drive se populează automat cu datele angajatului; pop-up lunar cu Fluturaș, Pontaj, Notă contabilă și Declarația D112 (PDF + XML pentru ANAF).
  • Încetare contract și arhivare — flux dedicat cu motiv și dublă confirmare; angajatul trece în lista Foști, datele istorice rămân.
  • Alte reguli — beneficii recurente per angajat, act adițional generat automat la orice modificare contractuală, alertă pe email la revizuirea salariului minim, calendar de zile lucrătoare editabil cu dublă confirmare, roluri admin/user.
2 · Triggere API REGES

Conform HG 295/2025, fiecare acțiune care afectează contractul sau salariatul declanșează un mesaj API REGES, cu termen de 3 zile lucrătoare:

Acțiune SalarEasyMesaj REGES
Cron zilnic (angajați nedepuși)Înregistrare salariat + Adăugare contract
Modificare salariu / funcție / date personaleModificare contract / Modificare salariat
Concediu medical / fără salariu / îngrijire copilSuspendare (cu temeiul aferent)
Sfârșit concediu medicalReactivare
Încetare contractÎncetare contract, la data efectivă

Operațional: pipeline asincron cu monitorizarea termenului, oră configurabilă de depunere zilnică (default 09:00), alertă către Ops și depunere manuală cu override dacă API-ul REGES e indisponibil; respingerile se trimit și pe email la ops@bono.ro.

3 · Completări motor de calcul
  • Tipuri de absență distincte — pe lângă CM și CO: concediu fără salariu, îngrijire copil, maternitate; zilele fără salariu se exclud complet din zilele plătite.
  • Modificări contractuale mid-month — în MVP intră în vigoare doar de la începutul lunii următoare (constrângere D112); excepțiile se calculează manual, în afara aplicației.
  • Split indemnizație CM — partea firmei (primele zile, conform setării) separat de partea casei de sănătate; baza de calcul din media venitului pe ultimele 6 luni (manual până există istoric).
  • Compensarea CO neefectuate la încetare — în afara aplicației în MVP.
  • Statusul REGES nu blochează calculul — suspendarea e etichetă administrativă; motorul calculează în continuare.
  • Beneficiile recurente — nu intrau în baza de calcul în MVP; actualizat de „Specs · Beneficii angajați" (cardul de mai jos): partea impozabilă intră acum în calcul.
PDF

Specs · Beneficii angajați (medical & sportiv)

Versiune 28.07.2026 · prag anual, contor YTD și split impozabil / neimpozabil

Beneficiile nu mai sunt doar informative: vin automat din IRIS (facturile clasificate de contabili drept beneficiu medical sau sportiv), se cumulează anual per angajat într-un contor YTD ținut în EUR, au prag anual configurabil (400 EUR medical, 100 EUR sportiv), iar partea care depășește pragul devine impozabilă și intră efectiv în calculul salarial.

Sursa datelor — integrarea IRIS
  • Fluxul: clientul încarcă factura în IRIS, contabilii Bono o clasifică drept beneficiu medical/sportiv, IRIS o transmite către SalarEasy.
  • Payload per beneficiu: companie (CUI), angajat (CNP), luna de referință, sumă în RON, tip beneficiu.
  • Identificare: matching pe CUI + CNP; dacă perechea nu e găsită, beneficiul nu se aplică și se alertează contabilul.
  • Idempotență: o garantează IRIS — SalarEasy nu deduplică.
  • Agregare pe lună: mai multe input-uri de același tip în aceeași lună se însumează într-o singură valoare lunară pe tip.
  • Storno: sumele negative nu intră în motorul de calcul; generează alertă către contabil.
Contor YTD, curs BNR și praguri anuale
  • YTD: cumulat per companie × angajat × tip beneficiu × an calendaristic, ținut în EUR; se resetează la 1 ianuarie.
  • Conversia RON → EUR (Varianta B): fiecare lună se convertește la cursul BNR de la sfârșitul lunii ei de referință, apoi se adună valorile în EUR.
  • Cursul: preluat prin FOREX (serviciul Bono) pe data de 2 a lunii, din ultima zi a lunii anterioare; pentru luna deschisă se folosește ultimul curs salvat, cu recalcul la închidere.
  • Praguri anuale: 400 EUR medical, 100 EUR sportiv — configurabile în Setări generale, cu istoric al modificărilor.
Split lunar impozabil / neimpozabil

Pragul funcționează ca un rezervor anual: partea neimpozabilă a lunii = cât din beneficiul lunii mai încape până la prag; partea impozabilă = ce se revarsă peste. Pragul e strict — la exact 400/100 EUR cumulat, luna rămâne integral neimpozabilă.

CazYTD înainteLuna curentăImpozabilNeimpozabil
Cumulat deja peste prag410 EUR50 EUR50 EUR — tot0
Cumulat rămâne sub prag300 EUR50 EUR050 EUR — tot
Pragul se depășește în luna curentă380 EUR50 EUR30 EUR20 EUR
Motorul de calcul, UI și cazuri limită
  • Motor: linie nouă „Beneficii impozabile" imediat sub C — Indemnizație concediu medical; D — Total venituri brute o include, cu propagare în contribuții, Net și Cost angajator. Partea neimpozabilă rămâne informativă.
  • UI inline (blocul Beneficii salariat): valoarea neimpozabilă a lunii + linia „Beneficiu Cumulat YTD" afișată dual RON / EUR.
  • Dialog info (ℹ): 6 câmpuri per tip — YTD fără luna curentă, valoarea lunii (total / impozabilă / neimpozabilă, cu RON în paranteză), YTD + luna curentă (verde sub prag, portocaliu peste) și valoarea pragului.
  • Lună închisă: beneficiul nu intră în calcule; se trimite alertă pe e-mail către contabil pentru tratare manuală.
  • Adăugarea manuală rămâne temporar, doar pentru teste; se elimină după validarea fluxului IRIS.
  • Rotunjire: EUR și RON afișate fără zecimale; intern se garantează impozabil + neimpozabil = total.
Markdown

PRD · Fluxul de autoangajare

Consolidat pentru implementare · owner implementare: Alex · autor PRD business: Cristi

Pentru condiția de microîntreprindere (cel puțin un salariat), antreprenorul se angajează pe propria firmă. Autoangajarea e un flux self-service în 6 ecrane care îl duce de la „vreau să mă angajez" până la contract semnat, cu date presetate de Bono: generează și semnează contractul de muncă, fișa postului și contractul de prestări servicii, fără intervenție umană; Bono depune apoi în REGES în backend.

Fluxul, regulile de business și backend-ul

Cele 6 ecrane — Start (pe cine angajezi; „altcineva" duce la formular de contact) → Despre tine (alt angajator, casa de sănătate CNAS/OPSNAJ + județ) → Contract (datele tale editabile limitat + detaliile postului read-only cu „Cere o modificare" + checkbox de confirmare) → Documente (3 documente cu read-gate) → Semnătură (pad olograf, prin Rex) → Felicitări (rezumat + descărcare documente).

Reguli de business: salariu minim 4.325 Lei brut; data începerii default prima zi a lunii următoare, minim azi + 10 zile calendaristice (fereastra de depunere REGES); județ cerut doar la CNAS; confirmare obligatorie înainte de semnare.

Presetări contract: CIM cu clauză de telemuncă, durată nedeterminată, Manager general (COR 112028), normă 8h/zi, 21 zile concediu (minim legal), nivel de studii N/A.

Backend REGES: primul pas după flux e înregistrarea firmei în REGES prin contractul de prestări servicii (de clarificat: API sau manual); apoi depunerea contractului, generarea documentelor reale din datele contului Bono, legarea de salarizare (D112/D100) și persistența cererilor „Cere o modificare".

Integrare Rex: citirea și semnarea documentelor se conectează la Rex (semnătură olografă for now), nu la o implementare proprie.

SalarEasy · Template-uri

Template-uri de documente

Template-urile care se populează automat cu datele fiecărui angajat la generarea documentelor finale. Se deschid direct din Drive și rămân exact așa cum sunt — aici doar linkuri, nicio prelucrare.

Documente de angajare

Modificări și încetare

Documente lunare de salarizare

Declarații ANAF · Generarea D112

Tot ce ține de generarea declarației D112 — regulile de completare, maparea câmpurilor pe SalarEasy și modelele XML/PDF de referință.

SalarEasy · Prototipuri

Prototipul de admin

Modulul de administrare SalarEasy — interfața pentru echipa Ops: firme, angajați, statusuri REGES, concedii, stat de plată și setări. Linkurile existente rămân neschimbate.

Prototipul de admin (design, curent)

Prototipul HTML al modulului de administrare, pe baza căruia s-a scris documentul „Completări PRD".

Deschide prototipul

Prototipul funcțional inițial

Motorul de calcul, setările generale și zilele lucrătoare — prototipul indicativ pentru funcționalități (nu pentru design), referit în PRD-uri.

Deschide prototipul

Versiuni

Pe măsură ce prototipul de admin se modifică, versiunile apar aici.

20 iul. 2026

Versiunea curentă în producție

Ultima versiune publicată a prototipului de admin.

16 iul. 2026

Iterații pe modul

Rundă de actualizări publicate în aceeași zi.

mai — iul. 2026

Construcția prototipului

Iterații succesive: paginile de start și Firme, pagina angajatului, statusuri REGES, concedii, setări generale.

SalarEasy · Prototipuri

Prototipul de autoangajare

Fluxul self-service în 6 ecrane prin care antreprenorul se angajează pe propria firmă. Prototipul live e sursa de adevăr pentru copy și comportament; linkul existent rămâne neschimbat.

Autoangajare — prototip live

Ecranele: /start · /despre-tine · /contract · /documente · /semnatura · /felicitari

Deschide prototipul

Versiuni

Istoric din repo — pe măsură ce fluxul se modifică, versiunile noi apar aici.

13 iul. 2026

PRD consolidat pentru implementare

docs/PRD.md adăugat în repo — sinteza prototipului, regulile de business și pașii de backend pentru echipa de implementare.

10 iul. 2026

Rundă de comentarii Vercel închisă

„(minim legal)" la zilele de concediu, regula de 10 zile calendaristice, casa de sănătate, bifă de confirmare, copy.

10 iul. 2026

Slug per ecran (rutare SPA)

Fiecare ecran are propriul URL, pentru comentarii Vercel per pagină.

10 iul. 2026

Responsive pe mobil + fix data începerii

Header și footer fixe pe toate lățimile; lățimea calendarului în card și blocarea datelor din trecut pe mobil.

SalarEasy · Icebox

Icebox

Ideile și cerințele care nu intră acum în scope, dar nu vrem să le pierdem.

Încetarea contractului — calculată în aplicație

Plus documente de încetare pentru toate motivele: demisie, concediere, expirare CIM, pensionare

Act adițional pentru orice atribut din contract

Nu doar salariu și funcție

Maternitate, concediu fără plată, creștere copil

Introduse direct în aplicație

Calcul automat al indemnizației de concediu medical

Media venitului pe ultimele 6 luni

Angajarea altcuiva direct din aplicație

Nu doar autoangajare

D112 pentru concedii medicale cu codurile de indemnizație 02–16

În MVP se depune automat doar codul 01 — boală obișnuită; restul le face contabilitatea manual