ıncasez.ro
Funcționalități
Prețuri
Blog
Glosar
Instrumente
AutentificareÎncepe gratuit
ıncasez.ro

Facturare simplă pentru afaceri moderne.

Produs

  • Funcționalități
  • Prețuri
  • eFactura

Resurse

  • Blog
  • Glosar
  • Ghid eFactura

Legal

  • Termeni
  • Confidențialitate
  • GDPR

© 2026 incasez.ro. Toate drepturile rezervate. Produs de appssemble.

ıncasez.ro
Funcționalități
Prețuri
Blog
Glosar
Instrumente
AutentificareÎncepe gratuit

Facturare proiecte

Cum facturezi servicii prestate parțial sau pe etape (milestone billing)

4 iunie 20269 min citire

Ai semnat un contract de 50.000 lei pentru o aplicație web pe care o livrezi în patru etape, în vreo cinci luni. Clientul nu vrea să plătească tot la final. Tu nu vrei să aștepți finalul ca să încasezi nimic. Soluția se numește facturare pe etape sau milestone billing — emiți o factură fiscală pe fiecare reper acceptat, încasezi pe parcurs, iar contabilitatea ta arată curat.

În practică apar întrebări care te fac să eziți. Factura pe primul milestone este factură fiscală sau factură de avans. Când devine TVA-ul exigibil — la acceptare sau la încasare. Ai nevoie de proces-verbal pe fiecare etapă sau e suficient un email „aprobat" de la client.

Ghidul de față e scris pentru dezvoltatori software, agenții de design, consultanți, arhitecți și contractori — PFA sau SRL — care livrează proiecte multi-fază către clienți B2B din România sau din UE. Vei vedea cum stabilești etapele în contract, când și cum emiți fiecare factură, ce documente justificative îți trebuie, cum încarci totul în SPV și unde se ascund cele mai dese greșeli.

Ce înseamnă facturare pe milestone (și de ce diferă de avans)

Trei mecanisme diferite, des confundate:

  • Factură de avans — plată înainte de prestare. Clientul îți virează bani ca să începi lucrul, tu emiți factură de avans, iar la final emiți factură de regularizare care stinge avansul și aduce restul de plată. TVA-ul devine exigibil la încasarea avansului.
  • Factură pe milestone — plată după ce etapa respectivă a fost prestată și acceptată. Nu este avans și nu necesită regularizare la final. Este factură fiscală obișnuită, doar că pentru o porțiune din contract.
  • Factură finală — fie închide întregul contract dintr-o singură mișcare (când n-ai folosit nici avans, nici milestones), fie regularizează ce a rămas după avansuri și milestones.

Diferența practică: dacă clientul îți trimite 10.000 lei „să începi", aceia sunt avans și emiți factură de avans. Dacă livrezi prima etapă, clientul o aprobă în scris și apoi îți plătește 10.000 lei pentru ea, este factură pe milestone — factură fiscală obișnuită pe livrare parțială.

Cum stabilești etapele direct în contract

Milestone billing-ul corect începe în contract, nu la prima factură. Pentru fiecare etapă, fixează patru lucruri:

  1. Livrabilul concret. „Design finalizat" e prea vag. „Mockup-uri Figma pentru 12 ecrane, livrate în .fig + export PDF" e clar.
  2. Suma alocată — în lei sau valută, fără TVA + TVA separat. Etapele nu trebuie să fie egale.
  3. Criteriul de acceptare — termen de 5 zile lucrătoare în care clientul testează și răspunde. Tăcerea după acel termen = acceptare tacită (clauză utilă, te ferește de blocaj).
  4. Documentul justificativ — proces-verbal de recepție parțială, raport de activitate sau situație de lucrări (construcții).

Adaugă o clauză separată pentru change request: o cerință nouă la mijloc înseamnă act adițional și milestone suplimentar — nu se „înghite" în etapele existente.

Când devine TVA-ul exigibil pe un milestone

Aici se concentrează majoritatea confuziilor fiscale. Codul Fiscal, art. 281, tratează faptul generator pentru TVA. Pentru livrările și prestările care se desfășoară pe perioade lungi cu decontări succesive — construcții-montaj, consultanță, expertiză, dezvoltare software pe etape — exigibilitatea TVA apare la momentul livrării, recepționării sau acceptării părții respective, nu la finalul contractului.

Pe scurt: pentru o livrare/prestare parțială cu acceptare independentă, TVA-ul devine exigibil la data acceptării milestone-ului (sau la data emiterii situației de lucrări, după caz). Ai aceeași regulă și în art. 282 alin. (2), care leagă exigibilitatea de momentul livrării sau prestării părții respective.

Concret, pentru un milestone acceptat pe 14 iunie 2026: TVA exigibil pe 14 iunie, cota 21% (cota standard în 2026, după modificarea din 1 august 2025), factura se emite cel târziu pe 15 iulie 2026 și se transmite în SPV în maxim 5 zile lucrătoare de la emitere.

Dacă ești PFA neplătitor de TVA sub plafonul de scutire (395.000 lei începând cu 1 septembrie 2025), exigibilitatea TVA nu te afectează direct, dar termenele de emitere și SPV se aplică oricum.

Pentru detalii oficiale, vezi portalul ANAF și textul Codului Fiscal pe legislatie.just.ro. Dacă ești pe TVA la încasare, regulile se schimbă — verifică situația ta cu contabilul.

Documentul justificativ pe care nu-l poți sări

Factura singură, fără document care să dovedească livrarea parțială, este vulnerabilă la control fiscal și la dispute. Trei variante uzuale:

  • Proces-verbal de recepție parțială — semnat de prestator și beneficiar, descrie livrabilul, data acceptării și suma alocată. Standard pentru IT, design, consultanță.
  • Raport de activitate — pentru consultanță și retainere, listează orele, taskurile și livrabilele perioadei.
  • Situație de lucrări — specifică pentru construcții, semnată de diriginte de șantier și beneficiar.

Pentru sprinturi Agile, un email formal de la client cu „acceptăm sprintul X, suma Y" plus un screenshot din Jira/Linear cu taskurile închise echivalează unui proces-verbal, dacă este menționat ca atare în contract.

Cum emiți factura și cum o trimiți în e-Factura

Workflow-ul standard pentru un milestone acceptat:

  1. Client confirmă acceptarea în scris (email + PV semnat sau Jira închis).
  2. Emiți factură fiscală cu mențiunea „Reprezintă valoarea milestone-ului [denumire] conform contract nr. [X]/[data]". Pe linia de articol scrii descrierea efectivă a etapei, nu doar „servicii".
  3. Cota TVA: cea valabilă la data acceptării milestone-ului (21% în 2026 pentru servicii standard).
  4. Atașezi sau referențiezi în factură numărul procesului-verbal / raportului.
  5. Generezi XML UBL 2.1 și încarci în SPV în max 5 zile lucrătoare de la emitere.
  6. Transmit factura PDF clientului prin email, cu PV-ul ca anexă.

În e-Factura, factura pe milestone are cod tip document 380 (factură comercială), exact ca o factură obișnuită. Diferența este la nivel de conținut (descriere etapă, referință contract), nu la nivel de tip document. Dacă folosești incasez.ro, poți salva proiectul cu cele patru milestones și emite fiecare factură păstrând automat referința la contract și la PV-ul corespunzător, fără să rescrii datele.

Workflow comparativ: avans vs milestone vs final

CriteriuAvansMilestoneFinal
Moment emitereLa încasarea avansuluiDupă acceptarea etapeiLa finalul contractului
Faptul generator TVAÎncasarea avansuluiAcceptarea milestone-uluiUltima acceptare
DocumentCerere de avansPV recepție parțială / situație lucrăriPV recepție finală
RegularizareDa, la finalNuDa (dacă au existat avansuri)
Cont SRL4191704 / 707704 / 707 + storno 4191
Risc tipicUitarea regularizăriiLipsa PVStorno avans incomplet

Pentru aprofundare pe distincția avans vs final, citește ghidul nostru despre factura de avans și factura finală.

Exemplu cu cifre reale: dezvoltare app mobilă pe 4 milestones

Un SRL plătitor de TVA, dezvoltator software, semnează contract pentru o aplicație mobilă: 60.000 lei + TVA 21%, împărțit egal pe 4 milestones a câte 15.000 lei + TVA. Calendarul arată așa:

MilestoneLivrabilAcceptare clientEmitere facturăTrimitere SPVBazăTVA 21%Total
M1 — DiscoverySpecificații + wireframes15.02.202615.02.202622.02.202615.0003.15018.150
M2 — Backend & APIAPI + documentație10.04.202610.04.202617.04.202615.0003.15018.150
M3 — UI iOS + AndroidBuild TestFlight + APK05.06.202605.06.202612.06.202615.0003.15018.150
M4 — Lansare storeApp live + raport20.07.202620.07.202627.07.202615.0003.15018.150
Total60.00012.60072.600

Pe fiecare milestone, dezvoltatorul atașează un proces-verbal cu beneficiarul, în care apar numărul milestone-ului, descrierea livrabilului, data acceptării și suma. Factura referențiază contractul și PV-ul (de exemplu, „Contract nr. 12/01.02.2026, PV recepție parțială nr. 1/15.02.2026"). În SPV, fiecare factură se transmite separat, în maxim 5 zile lucrătoare. Pentru o cerință nouă (un ecran extra de admin), se semnează act adițional și se adaugă M5 cu sumă proprie.

Greșelile pe care le văd cel mai des

  • Facturezi M2 fără PV de la M1. Începi etapa următoare fără documentul de acceptare pe cea anterioară. La control, M1 nu mai are bază justificativă clară.
  • Confunzi avansul cu milestone-ul. Dacă banii au intrat înainte ca M1 să fie prestat și acceptat, e avans — emiți factură de avans, nu factură pe milestone.
  • Aplici cota TVA greșită. Cota se ia după faptul generator (acceptarea), nu după data începerii lucrării.
  • Lipsa clauzei de acceptare tacită. Clientul amână semnarea PV-ului și tu rămâi blocat fără factură. O clauză de 5–10 zile lucrătoare cu acceptare tacită rezolvă problema.
  • Descriere generică pe factură. „Servicii dezvoltare software" e insuficient. Descrie etapa și referențiază contractul plus PV-ul.
  • Ignori change request-ul. O funcționalitate nouă „pe lângă" M3, fără act adițional, te lasă fără bază contractuală dacă apare un litigiu.

Pentru situația în care un milestone a fost acceptat și facturat, dar clientul refuză să plătească, parcurge ghidul nostru de recuperare bani de la client rău-platnic înainte să escaladezi.

Întrebări frecvente

Pot emite o singură factură finală pentru un proiect împărțit pe milestones?

Doar dacă în contract nu există decontări succesive cu acceptare independentă. Dacă fiecare etapă este acceptată separat și plătită separat, faptul generator TVA apare la fiecare acceptare — deci ai obligația să emiți factură pe fiecare milestone. O singură factură la final, în acest caz, înseamnă întârzierea exigibilității TVA și risc la control.

Ce se întâmplă cu TVA dacă un milestone este respins de client?

Dacă a fost respins înainte de acceptare, faptul generator nu a apărut — nu emiți factură. Dacă l-ai facturat și clientul îl respinge ulterior cu solicitare de remediere, după remediere și acceptare emiți factură nouă (sau, dacă e cazul, ajustezi prin storno și factură corectată). Important: nu emiți factură pe un milestone „aproape acceptat".

Trebuie atașat raport de activitate la fiecare factură pe milestone?

Da, pentru consultanță și retainere lunare. Pentru IT pe sprinturi, un PV de acceptare semnat sau o confirmare scrisă cu listă de livrabile este echivalentă, dacă contractul prevede acest lucru. Pentru construcții, situația de lucrări semnată este obligatorie.

Ce cotă TVA aplic la un milestone care a început înainte de schimbarea cotei?

Cota aplicabilă este cea valabilă la data acceptării milestone-ului (faptul generator), nu la data începerii lucrării. Un milestone acceptat în august 2025 are cota 21%, chiar dacă lucrarea efectivă a fost desfășurată în iulie. Pentru detalii, consultă cu contabilul tău; eu nu am certitudine 100% pe spețele de tranziție complexe.

Cum facturez un sprint Agile dintr-un contract Upwork sau cu un client din UE?

Tratamentul TVA depinde de statutul tău și al clientului (B2B intra-UE, B2C, plătitor sau neplătitor de TVA). Pentru servicii prestate către o firmă din UE care îți comunică un cod TVA valid, factura este de regulă fără TVA cu mențiunea „taxare inversă". Verifică codul TVA al clientului în VIES înainte de prima factură pe milestone.

Concluzie

Milestone billing-ul este standardul firesc pentru proiecte de durată — îți protejează cash flow-ul, îți reduce riscul de neîncasare și ține contabilitatea curată dacă respecți regulile de bază: contract clar pe etape, document de acceptare pe fiecare milestone, factură fiscală cu cota TVA corectă și transmitere în SPV în 5 zile lucrătoare. Dacă vrei un singur loc unde să gestionezi contractul multi-fază, procesele-verbale și seria de facturi succesive, încearcă incasez.ro — îți păstrează automat referințele între contract, milestone și factură, ca să nu mai pierzi timp recompunând datele la fiecare etapă.

Articole similare

Vezi toate articolele
Recuperare creanțe·25 mai 2026

Cum emiti o factură de penalități de întârziere către un client rău-platnic

Fiscalitate·26 mar 2026

7 greseli la contractul de consultanta cu persoana fizica si cum le eviti

Facturare UE·27 mai 2026

Cum verifici codul de TVA intracomunitar (VIES) înainte să emiți factura

Simplifică-ți facturarea

Creează și trimite facturi profesionale în câteva secunde. Gratuit pentru afaceri mici.

Începe gratuitAflă mai multe
ıncasez.ro

Facturare simplă pentru afaceri moderne.

Produs

  • Funcționalități
  • Prețuri
  • eFactura

Resurse

  • Blog
  • Glosar
  • Ghid eFactura

Legal

  • Termeni
  • Confidențialitate
  • GDPR

© 2026 incasez.ro. Toate drepturile rezervate. Produs de appssemble.