Recunoașterea veniturilor în SaaS conform IFRS 15, cu note contabile detaliate
Fiecare pas din IFRS 15 pentru un contract SaaS, prezentat sub formă de note contabile cu cifre reale și apelurile API care le generează în mod automat.
Conform IFRS 15, un abonament SaaS reprezintă o obligație de a executa o prestație îndeplinită în timp, prin urmare venitul aferent este recunoscut în mod eșalonat pe parcursul perioadei de prestare a serviciului, în timp ce suma facturată este înregistrată ca datorie din contract până la momentul câștigării acesteia. Creanța și TVA-ul se înregistrează integral în ziua emiterii facturii. Doar venitul este eșalonat.
Aceasta este regula de bază. Restul acestui articol ilustrează modul în care se reflectă aceasta în contabilitate, prezentând debitul și creditul pentru cazurile cu care se confruntă efectiv o întreprindere bazată pe abonamente: un plan anual, un pachet cu reducere, un proiect facturat pe etape (milestones), o rambursare estimată și un contract modificat pe parcurs. Fiecare înregistrare utilizează planul de conturi lituanian furnizat implicit de Nordlet, iar ultima secțiune prezintă apelurile API care generează automat aceste note contabile, fără intervenție manuală.
Cei cinci pași, aplicați unui singur contract
Un client se abonează la 1 ianuarie 2026 pentru douăsprezece luni de acces la platformă, în valoare de 2.400 EUR exclusiv TVA. TVA-ul lituanian de 21% adaugă 504 EUR, rezultând o factură brută de 2.904 EUR.
| Pas | Aplicare pentru acest contract |
|---|---|
| 1. Contractul | Comanda acceptată pentru douăsprezece luni de acces |
| 2. Obligațiile de a executa o prestație | Una: acces la platformă de la 1 ianuarie până la 31 decembrie 2026 |
| 3. Prețul tranzacției | 2.400 EUR (fără contraprestație variabilă în acest primul exemplu) |
| 4. Alocarea | Nu este necesară; o singură obligație preia întregul preț |
| 5. Recunoașterea | În timp, pe măsură ce trec zilele de acces |
Același model este explicat din punct de vedere conceptual în articolul Contabilitatea SaaS explicată. Aici trecem direct la notele contabile.
Cazul 1: un plan anual
La emitere, 1 ianuarie 2026. Creanța și TVA-ul sunt certe la această dată. Venitul nu este.
| Cont | Debit | Credit |
|---|---|---|
| 2410 Clienți | 2.904,00 | |
| 4492 TVA colectat de plată | 504,00 | |
| 4910 Venituri în avans (datorie din contract) | 2.400,00 |
Niciun cont de venituri nu a fost afectat. TVA-ul este însă exigibil la data emiterii, în mod obișnuit; decontul de TVA aferent lunii ianuarie include suma de 504 EUR, indiferent dacă serviciul a fost sau nu prestat.
La plata efectuată de client.
| Cont | Debit | Credit |
|---|---|---|
| 2710 Conturi la bănci | 2.904,00 | |
| 2410 Clienți | 2.904,00 |
La sfârșitul fiecărei luni. Varianta din manual alocă 200 EUR pe lună. Un program bazat pe numărul de zile, o metodă de recunoaștere bazată pe trecerea timpului de tipul celor permise de IFRS 15 §B15 pentru un serviciu consumat în mod continuu, atribuie fiecărei luni partea sa proporțională din cele 365 de zile:
| Lună | Zile | Tranșă |
|---|---|---|
| Ianuarie | 31 | 203,84 |
| Februarie | 28 | 184,11 |
| Martie | 31 | 203,84 |
| Aprilie | 30 | 197,26 |
| … | ||
| Decembrie | 31 | 203,81 |
| Total | 365 | 2.400,00 |
Ultima tranșă preia rotunjirea de un ban, astfel încât suma totală a eșalonării să corespundă exact sumei înregistrate în avans. Înregistrarea pentru luna ianuarie este:
| Cont | Debit | Credit |
|---|---|---|
| 4910 Venituri în avans | 203,84 | |
| 5001 Venituri din servicii | 203,84 |
După douăsprezece astfel de înregistrări, soldul contului 4910 pentru această factură este zero, iar suma de 2.400 EUR a fost recunoscută ca venit pe parcursul anului în care a fost realizată.
Cazul 2: un pachet promoțional cu reducere
Același client achiziționează abonamentul împreună cu un serviciu de implementare (onboarding). Factura indică abonamentul la prețul de 2.400 EUR și implementarea la 600 EUR, totalizând 3.000 EUR net. Vândut separat, abonamentul costă 3.000 EUR, iar implementarea 1.000 EUR, ceea ce înseamnă că pachetul beneficiază de o reducere de 1.000 EUR.
Standardul IFRS 15, de la paragraful §76 la §80, impune ca reducerea să fie alocată între obligații proporțional cu prețurile de vânzare independente ale acestora, și nu lăsată la latitudinea echipei de vânzări.
| Linie | Preț menționat | Preț de vânzare independent | Proporție | Sumă alocată |
|---|---|---|---|---|
| Abonament (în timp) | 2.400 | 3.000 | 75% | 2.250,00 |
| Implementare (la un moment dat) | 600 | 1.000 | 25% | 750,00 |
| Total | 3.000 | 4.000 | 3.000,00 |
TVA-ul se aplică la prețurile menționate pe fiecare linie, deoarece factura reprezintă documentul fiscal pentru TVA: 21% din 3.000 EUR înseamnă 630 EUR. Alocarea modifică doar modul în care valoarea netă este împărțită între veniturile curente și cele viitoare.
La emitere.
| Cont | Debit | Credit |
|---|---|---|
| 2410 Clienți | 3.630,00 | |
| 4492 TVA colectat de plată | 630,00 | |
| 5001 Venituri din servicii (implementare, livrată) | 750,00 | |
| 4910 Venituri în avans (abonament) | 2.250,00 |
Serviciul de implementare generează venituri de 750 EUR la momentul emiterii, și nu suma de 600 EUR înscrisă pe rândul respectiv. Pentru abonament se amână recunoașterea sumei de 2.250 EUR, iar tranșa aferentă lunii ianuarie este de 2.250 × 31 ÷ 365 = 191,10 EUR.
Fără această alocare, înregistrarea ar fi evidențiat venituri de 600 EUR și 2.400 EUR în avans. Diferența constă în 150 EUR reprezentând venituri raportate în anul greșit.
Cazul 3: un proiect facturat pe etape (milestones)
Un proiect de implementare este facturat la valoarea netă de 10.000 EUR (12.100 EUR brut), structurat în trei etape: proiectare 30%, construcție 50%, lansare 20%. Fiecare etapă reprezintă un moment în care o parte distinctă a lucrării este acceptată, fapt dovedit prin proces-verbal de predare-primire.
La emitere.
| Cont | Debit | Credit |
|---|---|---|
| 2410 Clienți | 12.100,00 | |
| 4492 TVA colectat de plată | 2.100,00 | |
| 4910 Venituri în avans | 10.000,00 |
La semnarea procesului-verbal pentru proiectare.
| Cont | Debit | Credit |
|---|---|---|
| 4910 Venituri în avans | 3.000,00 | |
| 5001 Venituri din servicii | 3.000,00 |
Data estimată a unei etape reprezintă o informație de planificare. Veniturile sunt recunoscute în momentul în care evenimentul are loc efectiv, și nu atunci când calendarul prevede acest lucru.
Cazul 4: o rambursare estimată
Să presupunem că datele istorice arată că 5% dintre planurile anuale sunt rambursate în cursul primei luni. Standardul IFRS 15, de la paragraful §55 la §58, tratează rambursările estimate drept contraprestații variabile: acestea sunt excluse din prețul tranzacției și sunt înregistrate ca datorie privind rambursările până la clarificarea incertitudinii.
Luăm ca exemplu vânzarea unică a unui produs în valoare de 1.000 EUR net (1.210 EUR brut), cu o estimare de rambursare de 5%, recunoscută la un moment dat.
La emitere.
| Cont | Debit | Credit |
|---|---|---|
| 2410 Clienți | 1.210,00 | |
| 4492 TVA colectat de plată | 210,00 | |
| 4450 Datorii din rambursări | 50,00 | |
| 5001 Venituri din servicii | 950,00 |
Un client primește o rambursare de 40 EUR net. Rambursarea este documentată printr-o factură de stornare, care diminuează TVA-ul și creanța și consumă datoria, în loc să reducă veniturile.
| Cont | Debit | Credit |
|---|---|---|
| 4450 Datorii din rambursări | 40,00 | |
| 4492 TVA colectat de plată | 8,40 | |
| 2410 Clienți | 48,40 |
Perioada de rambursare se încheie. Doar 40 EUR din estimarea de 50 EUR au fost utilizați, astfel încât diferența rămasă de 10 EUR este transferată la venituri.
| Cont | Debit | Credit |
|---|---|---|
| 4450 Datorii din rambursări | 10,00 | |
| 5001 Venituri din servicii | 10,00 |
Pentru o linie care include și un program de recunoaștere în curs, ordinea de consum este următoarea: mai întâi veniturile în avans (programul în curs este ajustat de la sfârșitul îndepărtat), apoi datoria din rambursări și, în final, veniturile.
Cazul 5: modificarea contractului
La jumătatea perioadei planului anual din Cazul 1, clientul negociază o prelungire de șase luni fără costuri suplimentare. Șase luni au fost deja recunoscute (1.200 EUR, utilizând sume lunare egale pentru o mai bună înțelegere; sistemul calculează proporțional cu numărul de zile), iar suma de 1.200 EUR rămâne în avans.
Paragrafele §20 și §21 din IFRS 15 oferă două tratamente contabile, în funcție de măsura în care serviciile rămase sunt distincte față de cele deja livrate.
Abordarea prospectivă (§21(a)). Bunurile sau serviciile rămase sunt distincte, prin urmare suma neînregistrată de 1.200 EUR este eșalonată pe noua durată rămasă de douăsprezece luni: 100 EUR pe lună. Nu se înregistrează nicio notă de regularizare retroactivă; următoarea recunoaștere lunară este pur și simplu mai mică.
Regularizarea cumulativă prin ajustare (§21(b)). Obligația este tratată ca fiind parțial îndeplinită, astfel încât veniturile sunt recalculate ca și cum s-ar fi aplicat o perioadă de optsprezece luni de la început: 2.400 EUR ÷ 18 = 133,33 EUR pe lună, reprezentând 800 EUR câștigați până la 30 iunie. Deoarece s-au recunoscut deja 1.200 EUR, se stornează suma de 400 EUR:
| Cont | Debit | Credit |
|---|---|---|
| 5001 Venituri din servicii | 400,00 | |
| 4910 Venituri în avans | 400,00 |
Suma rămasă de 1.600 EUR este apoi recunoscută în tranșe de 133,33 EUR pe lună pe parcursul noii perioade rămase.
Accesul la platformă furnizat zi de zi constituie de obicei o serie de servicii distincte, motiv pentru care abordarea prospectivă este cea mai uzuală. Alegerea metodei aplicabile reprezintă o raționare contabilă, iar programul muste să poată înregistra ambele variante.
Modificările de preț. O reducere de preț reprezintă o stornare a facturii originale și respectă ordinea de consum descrisă mai sus. O majorare de preț constituie o factură nouă, cu propriul său grafic de recunoaștere, care este prospectivă prin însăși natura sa.
Aceleași înregistrări prin intermediul API-ului
Fiecare înregistrare de mai sus este generată automat de modulul de recunoaștere a veniturilor din cadrul Nordlet, pe baza datelor obișnuite din factură. Metoda de recunoaștere este asociată liniei de factură.
Cazul 1. Creați factura cu o linie eșalonabilă, apoi emiteți-o. Emiterea generează creanța, TVA-ul și veniturile în avans și construiește graficul de recunoaștere în douăsprezece tranșe.
POST /v1/sales/invoices/create
Authorization: Bearer <api key with sales:write>
Idempotency-Key: <your order id>
{
"partnerId": "<customer id>",
"lines": [
{
"description": "Platform subscription 2026",
"unitPriceExclVat": "2400.0000",
"vatRatePercent": "21.00",
"recognition": { "method": "ratable", "startDate": "2026-01-01", "endDate": "2026-12-31" }
}
]
}
POST /v1/sales/invoices/issue
{ "id": "<invoice id>" }
Cazul 2. Adăugați parametrul standaloneSellingPrice pentru fiecare linie a facturii. Alocarea este calculată la momentul emiterii; linia de implementare utilizează metoda implicită point_in_time.
Cazul 3. Setați pe linie parametrul "recognition": { "method": "milestone", "milestones": [ { "percent": 30, "description": "Design", "expectedDate": "2026-02-28" }, … ] }. Emiterea unui proces-verbal de livrare prin intermediul sales/acts/issue aferent facturii recunoaște tranșele de etapă în așteptare la data procesului-verbal.
Cazul 4. Setați parametrul refundEstimatePercent pe linie. Facturile de stornare consumă datoria în ordinea descrisă; apelul sales/refund-liability/true-up cu o valoare revizuită estimatedTotal înregistrează eliberarea sau suplimentarea. O rambursare din partea furnizorului de plăți asociată facturii este înregistrată în contul de datorie și generează un eveniment webhook refund_liability.actual, dar nu operează direct asupra datoriei, deoarece diminuarea veniturilor și a TVA-ului colectat necesită factura de stornare ca document justificativ fiscal.
Cazul 5.
POST /v1/sales/recognition/modify
{ "invoiceLineId": "<line id>", "approach": "prospective", "newEndDate": "2027-06-30" }
Înlocuiți prospective cu cumulative_catch_up pentru cel de-al doilea tratament; stornarea de 400 EUR se înregistrează imediat, iar suma rămasă este eșalonată din nou.
Recunoașterile periodice. Procesul de recunoaștere generează o notă contabilă per rulare. Aceasta este declanșată în trei moduri, fără a necesita interogări periodice: blocarea unei perioade recunoaște mai întâi toate sumele scadente până la sfârșitul perioadei, emiterea unui proces-verbal de livrare recunoaște tranșele pe etape, iar un temporizator configurat pentru următoarea scadență înregistrează tranșele eșalonate la data la care acestea devin exigibile. Apelul sales/recognition/compute generează o previzualizare a sumelor care ar fi înregistrate; sales/recognition/run efectuează înregistrarea; sales/recognition/summary raportează sumele recunoscute până în prezent, soldul rămas și următoarea scadență pentru fiecare linie; sales/recognition-schedules/list afișează fiecare tranșă împreună cu starea sa.
Ce nu face acest modul
Limitele documentate sunt la fel de importante ca funcționalitățile atunci când planificați închiderea contabilă:
- Graficele sunt stabilite în euro la cursul de schimb de la data emiterii. Soldurile în avans nu sunt reevaluate pentru fluctuațiile valutare ulterioare emiterii.
- Alocarea necesită un preț de vânzare independent pe fiecare linie sau pe niciuna. Abordarea reziduală prevăzută la §79(c) nu este implementată.
- Datoria din rambursări este urmărită la valoarea netă de TVA la nivel de factură. Activele corelative aferente dreptului de a recupera bunurile returnate (§B25) nu sunt modelate.
- Regularizarea cumulativă se aplică numai liniilor eșalonate; replanificarea etapelor este prospectivă.
- Componentele de finanțare semnificative (§60 - §65), contraprestațiile care nu sunt în numerar și contraprestațiile plătite către client nu intră în domeniul de aplicare.
- Contul de active din contracte (2910) există în planul de conturi și ca element de operare, însă recunoașterea veniturilor înaintea facturării se realizează momentan prin note contabile manuale.
Aplicația este capabilă să asigure tratamentul contabil conform IFRS 15 și ASC 606. Alegerea metodei pentru fiecare obligație, estimarea prețurilor de vânzare independente și a ratelor de rambursare, precum și aprecierea dacă serviciile rămase sunt distincte rămân decizii pe care entitatea care raportează trebuie să le ia.
FAQ
Când sunt recunoscute veniturile pentru un abonament SaaS conform IFRS 15?
Pe parcursul perioadei de prestare a serviciului, deoarece accesul la software reprezintă o obligație de a executa o prestație îndeplinită în timp. Pentru un plan de douăsprezece luni facturat în avans, fiecare lună își câștigă partea sa din preț. Data facturii determină momentul în care se înregistrează creanța și TVA-ul, nu cel în care se recunosc veniturile.
Care este nota contabilă pentru veniturile în avans?
La emitere: se debitează clienții pentru suma brută, se creditează TVA-ul colectat și se creditează veniturile în avans (datoria din contract) pentru suma netă. În fiecare perioadă: se debitează veniturile în avans și se creditează veniturile pentru suma câștigată. Creanța se închide atunci când clientul efectuează plata.
Urmează TVA-ul graficul de recunoaștere a veniturilor?
Nu. TVA-ul devine exigibil la data emiterii facturii sau la încasarea avansului, în conformitate cu regulile generale din Directiva TVA și legislația națională. Graficul veniturilor în avans și datoria privind TVA-ul evoluează independent, motiv pentru care o factură de avans este un document fiscal real, în timp ce o proformă nu este.
Cum se alocă o reducere de pachet conform IFRS 15?
Proporțional cu prețurile de vânzare independente ale obligațiilor din pachet (§81). O reducere de 1.000 EUR aplicată unui pachet de 4.000 EUR ale cărui componente costă separat 3.000 EUR și 1.000 EUR reduce fiecare componentă cu 25%. TVA-ul rămâne pe liniile facturii așa cum a fost menționat.
Care este diferența dintre abordarea prospectivă și regularizarea cumulativă?
Abordarea prospectivă distribuie restul neînregistrat pe noile condiții începând de la data modificării, fără nicio ajustare a veniturilor trecute. Regularizarea cumulativă recalculează veniturile ca și cum noile condiții s-ar fi aplicat de la început și înregistrează diferența în mod imediat. Metoda aplicabilă depinde de măsura în care serviciile rămase sunt distincte față de cele deja livrate.