Declarația 406 (D406): formularul ANAF pentru depunerea SAF-T
Declarația 406 este formularul prin care depui SAF-T la ANAF. Cui i se aplică, când se depune, ce conține, cum o construiești în pipeline propriu.
Cuprins
Declarația 406, cunoscută și ca D406, este formularul oficial ANAF prin care contribuabilul depune fișierul SAF-T (Standard Audit File for Tax) ce reflectă conținutul contabil al perioadei raportate1. Conceptual, „depun D406" și „raportez SAF-T" sunt aceeași acțiune privită din unghiuri diferite: D406 este formularul (învelișul administrativ), SAF-T este conținutul (XML-ul cu datele contabile).
Pentru contextul tehnic complet al SAF-T-ului, inclusiv structura XML-ului și calendarul obligației pe categorii de contribuabili, vezi entry-ul dedicat. Această pagină se concentrează pe specificul formularului D406 și pe particularitățile depunerii: cine, când, cum, ce conține, cum corectezi.
Cui i se aplică D406 și pentru ce perioadă?
D406 se aplică acelorași contribuabili ca SAF-T, etapizat pe mărime: întâi marii contribuabili, apoi cei mijlocii, apoi cei mici. Obligația de depunere urmează calendarul SAF-T:
- Mari contribuabili: depunere lunară sau trimestrială (în funcție de perioada de TVA), începând cu luna ianuarie 2022.
- Contribuabili mijlocii: aceleași reguli, începând cu luna ianuarie 2023.
- Contribuabili mici: depunere începând cu luna ianuarie 2025, cu perioada de toleranță inițială pentru sancțiuni.
Termenul de depunere este în general până la sfârșitul lunii următoare perioadei raportate (pentru depunere lunară) sau până la sfârșitul lunii următoare trimestrului (pentru depunere trimestrială). Pentru secțiuni anuale (stocuri, mijloace fixe), termenul este corelat cu data de închidere a exercițiului financiar.
Lipsa activității nu suspendă obligația. Dacă în luna raportată nu ai emis facturi sau nu ai înregistrat tranzacții contabile, depui totuși D406 cu secțiunile relevante goale, dar prezente structural. Lipsa completă a depunerii produce alertă automată și poate atrage sancțiuni administrative.
Care este structura formularului D406?
D406 este, la nivelul interfeței ANAF, o încărcare de fișier XML cu metadate de identificare. Conținutul XML-ului respectă schema SAF-T RO definită prin OMFP 1783/2021 și se împarte în zone funcționale:
- Header: identificarea contribuabilului (CUI, denumire), perioada raportată, software-ul care a generat fișierul, versiunea schemei, tipul depunerii (inițială sau rectificativă).
- MasterFiles: dicționarele de bază (plan de conturi, clienți, furnizori, produse, mijloace fixe, codurile fiscale aplicate).
- GeneralLedgerEntries: jurnalul contabil pentru perioada raportată.
- SourceDocuments: facturile emise, facturile primite, plățile, încasările, cu detaliu pe linii și legătură la înregistrarea contabilă corespunzătoare.
Pentru depunere trimestrială, fișierul cuprinde tranzacțiile cumulate ale celor trei luni. Pentru depunere lunară, doar luna respectivă. Pentru secțiunile anuale (stocuri, mijloace fixe), structura este similară dar perioada acoperită este exercițiul financiar.
Cum se depune D406: portal SPV sau API?
D406 se depune fie manual, prin portalul SPV (Spațiul Privat Virtual), fie programatic, prin API REST:
- Portal SPV (Spațiul Privat Virtual): depunere manuală a fișierului XML prin interfața web ANAF. Acceptabil pentru volume mici sau pentru depuneri ocazionale (de exemplu, contribuabili mici care încă nu și-au automatizat fluxul).
- API REST: depunere programatică, similar arhitectural cu e-Factura. Autentificare OAuth2 prin certificat eIDAS, upload XML, polling status, descărcare răspuns. Pentru volume regulate, este singura opțiune sustenabilă.
Răspunsul ANAF este asincron: încărcarea returnează un identificator, validarea propriu-zisă vine în interval de minute până la ore. La volume mari (peste 100 MB), procesarea poate dura zeci de minute. Job-ul de polling trebuie să fie persistent și rezistent la retransmiteri, cu garanție de idempotență ca să eviți depuneri duplicate ale aceleiași perioade.
Care sunt erorile frecvente la depunerea D406?
Cele mai frecvente erori sunt master data inconsistentă, cursul de schimb greșit, conturile analitice nepotrivite și fișierul prea mare pentru upload direct:
- Master data inconsistentă. Clienții sau produsele declarate în MasterFiles nu corespund celor referențiați în SourceDocuments. ANAF respinge prin coduri specifice de eroare; pipeline-ul tău trebuie să facă reconciliere internă înainte de generarea XML-ului.
- Curs de schimb greșit. Tranzacțiile în valută trebuie convertite la cursul BNR oficial din ziua tranzacției. Folosirea unui curs estimat sau a cursului zilei de generare produce discrepanță aritmetică.
- Conturi analitice nepotrivite. Planul de conturi declarat trebuie să fie consistent peste timp; schimbarea unor conturi la mijlocul perioadei fără să fie reflectată corect în MasterFiles produce erori greu de diagnosticat.
- Fișier prea mare pentru upload direct. La contribuabili mari, fișierele depășesc 100 MB2; folosește streaming și verifică timeouts pe clientul HTTP.
Pentru clarificări asupra unei erori specifice, ANAF expune documentația care listează codurile de eroare și sensul lor. Validarea locală a XML-ului contra schemei XSD înainte de depunere prinde majoritatea erorilor înainte să trimiți.
Cum construiești D406 în pipeline propriu?
Pentru contribuabili cu volum sau cu surse de date multiple, generarea D406 nu este o funcție simplă de export, ci un proces propriu de raportare. Etapele cheie:
- Extragere multi-sursă: ERP-ul pentru contabilitate, POS-ul pentru încasări retail, magazinul online pentru comenzi B2C, eventual OCR pentru achiziții scanate. Fiecare sursă trebuie extrasă într-un format intermediar uniform.
- Reconciliere și normalizare: master data (clienți, produse) trebuie consolidată pe identificator unic; dublurile între surse rezolvate cu reguli explicite (priority la CUI, fallback la denumire normalizată).
- Validare contra schemei și a regulilor de business: XSD-ul oficial SAF-T RO plus regulile de consistență (totaluri pe linii egale cu totaluri pe document, TVA defalcat corect, conturi analitice valide).
- Generare streaming a XML-ului: scrierea documentului element cu element, fără construirea întregului DOM în memorie. Esențial pentru contribuabili mari unde DOM-ul ar consuma gigabytes de RAM.
- Depunere și polling: trimitere prin API-ul ANAF cu autentificare, polling de status până la primirea răspunsului, înregistrare a versiunii depuse pentru auditabilitate ulterioară.
Pipeline-ul trebuie să fie reproductibil: aceeași perioadă, aceleași date, același XML generat. Această proprietate face redepunerile predictibile (corectezi datele, regenerezi, redepui) și auditurile interne posibile (compari versiunile XML între depuneri pentru a vedea ce s-a schimbat).
De ce contează D406 pentru un dezvoltator?
Două motive practice: primul, dacă lucrezi pentru o firmă obligată la SAF-T, vei atinge D406 fie pe partea de generare (pipeline de date din ERP/POS/online), fie pe partea de monitoring (cine a depus, ce s-a respins, ce trebuie redepus). Volumul datelor și complexitatea consistenței face acest tip de proiect un loc natural pentru implicarea inginerească.
Al doilea: D406 cere arhitectură de data warehouse contabil, nu doar export ad-hoc dintr-o aplicație. La crawlerra construim pipeline-uri D406 ca module reutilizabile: extractor configurabil pe sursele tale (ERP, POS, contabilitate, magazin online), normalizare master data, validare strictă contra XSD și a regulilor de consistență ANAF, depunere persistentă cu retry. Pentru cadrul mai larg al SAF-T-ului, vezi entry-ul dedicat; pentru complementaritatea cu raportarea facturilor în e-Factura, vezi diferența arhitecturală între cele două sisteme.
- Cadrul legal al D406: OMFP 1783/2021 definește formularul, schema XML SAF-T RO și calendarul obligațiilor pe categorii de contribuabili. Documentația tehnică, schema XSD și API-ul de depunere sunt publicate la anaf.ro (secțiunea „Declarația 406").
[seo.d406_legal_framework] - Mărimile observate ale fișierelor D406 în implementări reale: zeci de MB pe lună pentru firme mijlocii având câteva mii de facturi, peste 100 MB pe lună pentru contribuabili mari având activitate intensă. Clientul HTTP trebuie configurat pentru upload-uri lungi, având timeout-uri lejere și suport pentru streaming.
[seo.d406_filesize_orders]
Întrebări frecvente
Declarația 406 înlocuiește alte raportări fiscale?
Înlocuiește o serie de raportări manuale, dar nu pe toate. D406 cuprinde datele care anterior erau cerute prin formulare separate (părți ale 394 pentru achiziții și livrări, fluxul jurnal contabil, evidența mijloacelor fixe, stocuri). Rămân raportări complementare (declarații specifice pentru accize, salarii, statistică), dar pentru auditul general fiscal, D406 este declarația centrală în noul regim.
Trebuie să o depun chiar dacă nu am avut activitate în luna respectivă?
Da. Lipsa activității nu te scutește de depunerea D406. Pentru lunile fără tranzacții, depui un D406 cu secțiunile relevante goale dar prezente structural în XML (header, identificare contribuabil). Lipsa depunerii produce alarme automate și posibile sancțiuni. „Nimic de raportat" trebuie raportat explicit.
D406 se depune și pentru perioadele anterioare obligației?
Nu, doar începând cu luna în care ai intrat în categoria obligată. Mari contribuabili: din 1 ianuarie 2022. Mijlocii: din 1 ianuarie 2023. Mici: din 1 ianuarie 2025. Pentru perioadele anterioare datei tale de intrare, regimul vechi de raportare se aplică retroactiv. ANAF nu cere D406 pentru perioade pre-obligație.
Cum corectez un D406 deja depus?
Prin redepunere a D406 cu indicator de corecție pentru perioada respectivă. SAF-T-ul conține câmpuri pentru versiune și pentru tip declarație (inițială sau rectificativă). Identificatorul rectificativ trebuie să facă referință la depunerea inițială. ANAF stochează ambele versiuni, ultima este cea valabilă. Practica recomandată este să redepui cât mai repede ce ai descoperit ca eroare, înainte ca discrepanțele să apară la cross-check cu e-Factura.
Care e diferența între D406 și D394?
D394 era declarația informativă recapitulativă pentru livrările și achizițiile B2B, depusă semestrial. D406 este SAF-T-ul, mult mai cuprinzător și mai frecvent. D394 a fost gradual înlocuită de D406 pentru categoriile care intră în obligație SAF-T, dar a rămas activă pentru contribuabilii care încă nu sunt obligați. Practic, dacă depui D406, nu mai depui și D394 pentru aceleași perioade.