Fiecare declarație SAF-T (D406) este verificată, înainte de a ajunge la ANAF, prin DUK Integrator, validatorul oficial ANAF. Dacă în urma verificării reiese că XML-ul are chiar și o singură eroare, DUK nu generează PDF-ul declarației, iar declarația nu poate fi depusă. În locul PDF-ului primești un fișier de erori, cu mesaje scurte și tehnice, pe care nu le poți corela ușor cu datele din contabilitate.
Am centralizat mai jos erorile care apar cel mai des la validarea declarației SAF-T (D406), cu explicația fiecăreia: de unde vine și ce ai de făcut ca să o corectezi. Mesajele sunt redate după exemplele din ghidul ANAF și din fișierele de erori publicate de utilizatori, așa că textul poate varia ușor de la o versiune la alta a validatorului.
Cum citești fișierul de erori DUK
Rezultatul validării ajunge într-un fișier text cu același nume ca XML-ul, dar cu extensia .err.txt. Fiecare linie din el spune în ce secțiune și în ce câmp din XML a apărut problema și, foarte important, a câta înregistrare din secțiunea respectivă conține eroarea. Pe baza acestui număr de ordine identifici rapid înregistrarea pe care trebuie să o corectezi.
În urma validării poți avea două tipuri de mesaje - erori și atenționări - și este foarte important să faci diferența între ele. O eroare blochează generarea PDF-ului, deci declarația nu poate fi depusă până nu o rezolvi. Atenționările, în schimb, vin alături de un PDF generat: poți depune declarația, dar e bine să urmărești și aceste tipuri de mesaje, pentru că de obicei semnalează date incomplete sau neobișnuite.
Cele mai frecvente erori la validarea D406
1Un cod de taxă pe care validatorul nu îl recunoaște
Este, probabil, cea mai întâlnită eroare și este prezentată așa: valoarea '150080' nu se afla in lista, de obicei în secțiunile TaxTable sau GeneralLedgerEntries. ERP-ul a exportat un cod de taxă (TaxCode) pe care validatorul nu îl găsește în nomenclator. Fie maparea codurilor interne din ERP este greșită, fie validatorul D406 din DUK este mai vechi decât codurile folosite în fișier. ANAF adaugă periodic coduri noi: în februarie 2026, de exemplu, au intrat în validator codurile pentru impozitul pe dividende cu cota de 16% (150080 pentru dividendele distribuite persoanelor juridice, 604040 pentru persoanele fizice, 631090 pentru nerezidenți) și cele pentru impozitul pe veniturile din transferul titlurilor de valoare (642050 și 642060). Un DUK neactualizat de atunci respinge fișierele în care apar.
Primul pas este să actualizezi DUK Integrator și validatorul D406 la ultima versiune publicată de ANAF. Dacă eroarea persistă, verifică maparea codurilor de taxă din ERP față de nomenclatorul ANAF pentru SAF-T.
2Un cont care nu se regăsește în planul de conturi
Mesajul ID-ul contului [2141] trebuie sa se gaseasca in planul de conturi apare pentru că validatorul analizează primele cifre ale fiecărui cont (AccountID) și așteaptă să găsească acolo un cont sintetic din planul de conturi aplicabil entității tale. Un cont analitic codificat astfel încât începutul lui nu mai corespunde niciunui cont sintetic existent produce exact această eroare. O produce și un tip de plan de conturi declarat greșit în antetul declarației (câmpul TaxAccountingBasis), de exemplu planul pentru societăți comerciale la o entitate care raportează după IFRS sau după planul pentru ONG-uri.
Soluția este în ERP: fiecare cont analitic trebuie să pornească de la un cont sintetic existent, iar tipul de plan de conturi din antet trebuie să corespundă entității care raportează.
3Un cod de partener cu format greșit
Mesaje precum Pentru CustomerID 00 formatul este invalid sau Pentru SupplierID 02US formatul este invalid țin de felul în care SAF-T identifică partenerii. Codul fiecărui client și furnizor începe cu un prefix care arată tipul partenerului, urmat de codul lui de identificare. Dacă după prefix nu urmează nimic, pentru că CUI-ul lipsește din fișa partenerului, dacă există un spațiu sau un caracter în plus, ori dacă prefixul nu se potrivește cu tipul partenerului, validatorul respinge înregistrarea.
Corectarea se face tot în fișele partenerilor din ERP, respectând prefixele din instrucțiunile ANAF: 00 urmat de CUI fără „RO” pentru partenerii din România, 01 urmat de codul țării și codul de TVA pentru partenerii din UE, 02 urmat de codul țării și codul de identificare pentru cei din afara UE, 03 urmat de CNP pentru persoanele fizice și 04 urmat de un cod intern pentru persoanele fizice care nu și-au declarat CNP-ul. Codurile de TVA din UE sunt verificate de ANAF în VIES după depunere, așa că merită să le verifici în VIES înainte. Am scris pe larg despre reguli și despre verificările automate în articolul despre verificarea datelor despre clienți și furnizori în SAF-T.
4Un câmp prezent, dar gol
atribut prezent dar vid nepermis înseamnă că ERP-ul a exportat un câmp fără nicio valoare în el. Apare frecvent la mijloacele fixe fără număr de inventar (AssetID) în declarația anuală, cu un cod de furnizor sau un cod de taxă necompletat, cu o adresă de e-mail de contact goală sau cu o factură care nu are notă contabilă asociată și rămâne, astfel, fără cont. Numărul de ordine din mesaj indică înregistrarea respectivă; completezi datele lipsă în ERP și regenerezi fișierul.
5Un element obligatoriu care lipsește
Înrudită cu eroarea de mai sus este elementul 'City' ar fi trebuit sa apara de minimum 1 ori. Când un element apare în XML, de exemplu o adresă sau un cont bancar, câmpurile lui obligatorii trebuie să fie completate. Dacă lipsesc, validatorul semnalează o eroare de structură. Rezolvarea stă în datele de bază ale partenerului sau ale companiei: adresa completă, IBAN-ul, datele de contact.
6Formularul greșit în DUK sau o semnătură invalidă
Dacă primești sectiune necunoscuta ('AuditFile') sau un mesaj despre un namespace lipsă ori incorect la secțiunea AuditFile, cel mai probabil în DUK a fost ales alt tip de declarație decât cel al fișierului, de exemplu D406T pentru un fișier D406 sau invers. Alegi tipul corect și validezi din nou. Mesajul Semnatura electronica a fisierului XML ... este eronata are, de regulă, o altă cauză: PDF-ul a fost modificat după semnare. După orice modificare a fișierului, generezi și semnezi din nou PDF-ul.
7Tipul declarației nu se potrivește cu perioada
Tipul declaratiei L nu corespunde cu perioada declarata spune că tipul declarației din antet nu se potrivește cu perioada de raportare. L este raportarea lunară, T cea trimestrială, A declarația anuală privind activele, iar C declarația la cerere privind stocurile. O eroare înrudită apare când o dată are alt format decât an-lună-zi. Verifică perioada setată în ERP înainte de export; la declarația anuală a companiilor cu an fiscal modificat, perioada raportată este anul financiar. Termenele pentru fiecare tip de raportare le-am centralizat în articolul despre termenele declarației SAF-T.
8Coduri greșite pentru monedă, țară sau județ
SAF-T lucrează cu coduri standard: RON pentru leu, coduri ISO pentru țări și coduri de județ pentru regiune. De aici vin mesaje ca valoarea 'LEU' nu se afla in lista sau Pentru tara 'RO' codul regiunii RO-- nu face parte din lista: un cod intern din ERP în locul celui standard sau un județ necompletat în fișa partenerului. Tot aici intră și IBAN-urile, validate după regulile fiecărei țări. Corectezi codurile în nomenclatoarele ERP-ului sau în maparea exportului și completezi județul acolo unde lipsește.
9Un XML care nu poate fi citit
O eroare fatală de parsare (SAXParseException), de exemplu must end with a '>' delimiter, înseamnă că fișierul nu mai este un XML corect. De obicei se întâmplă după o modificare manuală care a lăsat un tag neînchis sau după un export întrerupt. Cel mai sigur este să regenerezi fișierul din ERP. Dacă ai date de corectat, corectează-le la sursă sau într-un instrument care regenerează XML-ul, nu direct în textul fișierului.
De ce apar erori noi, deși luna trecută fișierul a fost validat
Pentru că ANAF actualizează periodic validatorul D406 și nomenclatoarele lui: coduri de taxă, coduri vamale (NC8), planuri de conturi, coduri pentru impozitele reținute la sursă. Numai în februarie 2026 au apărut două versiuni, J2.2.17 pe 11 februarie și J2.2.18 pe 16 februarie, care au adăugat codurile pentru impozitul pe dividende cu cota de 16%, codurile pentru impozitul pe veniturile din transferul titlurilor de valoare și 26 de coduri vamale NC8. La data scrierii acestui articol, J2.2.18 este cea mai recentă versiune.
De aici apar două situații frecvente: un ERP actualizat exportă coduri noi pe care un DUK vechi nu le recunoaște, sau un DUK actualizat aplică reguli noi pe care exportul din ERP încă nu le respectă. În ambele cazuri, primul pas este să compari versiunea validatorului tău cu cea publicată pe pagina declarației 406 de pe site-ul ANAF.
Validarea DUK a trecut. Înseamnă că declarația este corectă?
Nu neapărat. DUK verifică structura fișierului și valorile din nomenclatoare, nu și coerența datelor contabile. Abia după depunere, ANAF rulează teste de consistență, de exemplu dacă totalul debitelor este egal cu totalul creditelor sau dacă taxa corespunde bazei impozabile și cotei, și trimite notificări când găsește neconcordanțe.
De la sfârșitul lui august 2026, o parte din aceste teste le poți rula singur, înainte de depunere, cu aplicațiile publicate de ANAF. Le-am descris în articolul despre aplicațiile ANAF de verificare SAF-T. Iar dacă ai primit deja o notificare, pașii de rezolvare îi găsești în ghidul pentru soluționarea notificărilor ANAF.
Cum validezi D406 în Latitude App
În modulul RO SAF-T Verificare din Latitude App, validarea cu DUK rulează online, fără nicio instalare. Încarci XML-ul declarației, unul sau mai multe fișiere deodată, iar platforma rulează DUK Integrator, validatorul oficial ANAF. Dacă fișierul trece, primești PDF-ul declarației; dacă nu, primești fișierul de erori, iar pentru mai multe fișiere, o arhivă cu rezultatul fiecăruia. Atenționările le vezi direct în jurnalul procesării, și atunci când validarea a trecut.
Corecturile nu se mai fac direct în XML. Declarația se convertește din XML în Excel, unde găsești ușor înregistrarea semnalată, o corectezi și regenerezi XML-ul. Toată echipa validează pe aceeași versiune de DUK, pe care o actualizăm când ANAF publică una nouă, așa că nu mai depinzi de versiunea instalată pe fiecare calculator. Iar pe același fișier rulezi apoi și testele de consistență, corelațiile cu D300, D390, D394 și D100 și aplicațiile ANAF de verificare.
Poți testa gratuit, cu propriul fișier: îți creezi un cont și încarci XML-ul declarației D406.
Întrebări frecvente
Ce înseamnă când DUK nu generează PDF-ul declarației?
Că fișierul are cel puțin o eroare de validare. DUK generează PDF-ul doar pentru fișierele care trec validarea, iar fără PDF declarația nu poate fi depusă. Erorile le găsești în fișierul .err.txt generat lângă XML.
Pot depune declarația dacă am doar atenționări?
Da. Atenționările nu blochează generarea PDF-ului. Merită totuși citite, pentru că de obicei semnalează date incomplete sau neobișnuite.
Cum știu dacă am ultima versiune a validatorului D406?
Compari versiunea din DUK cu cea publicată pe pagina declarației 406 de pe site-ul ANAF. La data scrierii acestui articol, cea mai recentă este J2.2.18, din 16 februarie 2026.
Ce fac dacă fișierul este prea mare?
PDF-ul semnat, cu XML-ul atașat, nu poate depăși 500 MB. Peste această limită, ANAF permite raportarea pe module: împarți declarația în mai multe fișiere, fiecare cu antetul complet și fără ca o subsecțiune să fie ruptă între module, și depui fiecare modul abia după ce ai primit recipisa pentru cel anterior.
Cum corectez o declarație D406 deja depusă?
Depui din nou declarația completă pentru aceeași perioadă. Prima declarație depusă pentru o perioadă este cea inițială, iar orice declarație depusă ulterior pentru aceeași perioadă este considerată rectificativă; corecții parțiale nu se depun. Când se aplică și când nu se aplică amenzile afli din articolul despre amenzile pentru declarația SAF-T.
Informațiile sunt valabile la data publicării, octombrie 2026.
Simplifică conformitatea fiscală cu Latitude App
Facturare, e-Factura, e-Transport, SAF-T, e-TVA, Declarații TVA, Verificare coduri TVA, Procure-to-Pay (P2P) și Raportare XML — toate într-o singură platformă cloud. Testează gratuit, fără obligații.