D406 — SAF-T roumain
La D406 (Declarația informativă privind livrările/prestările și achizițiile de bunuri și servicii) est l'équivalent roumain de la norme SAF-T OCDE. Mensuelle pour les grands et moyens contribuables, elle coexiste avec e-Factura et fait l'objet de cross-validation automatique par l'ANAF.
Origine — du SAF-T OCDE à la D406 roumaine
Le concept de Standard Audit File for Tax est publié par l'OCDE en 2005 (v1.0), v2.0 en 2010. L'objectif : un format standardisé permettant aux administrations fiscales de récupérer en un fichier l'image complète de la comptabilité d'un contribuable — grand livre, factures émises et reçues, paiements, stocks, immobilisations.
La Roumanie a publié sa première version D406 en juillet 2021, sur décision du président ANAF Mihaela Triculescu. La spécification a évolué :
- V1.0 (juillet 2021) : alignement strict SAF-T OCDE 2.0, lancement pilote.
- V2.0 (janvier 2022) : extension MovementOfGoods, AssetTransactions, alignement comptable roumain (PCG).
- V2.4.4 (décembre 2024) : version actuelle — intégration cross-références e-Factura, extensions PaymentMethods, affinement Suppliers / Customers VIES.
Calendrier de rollout 2022-2025
Le déploiement de la D406 a été progressif, par catégorie de contribuables :
| Date | Catégorie | Critère ANAF |
|---|---|---|
| 1er jan. 2022 | Grands contribuables | Classifiés contribuabili mari par ANAF |
| 1er jan. 2023 | Moyens contribuables | Classifiés contribuabili mijlocii par ANAF |
| 1er jan. 2025 | Petits contribuables | Tous les autres assujettis TVA — D406T trimestrielle |
| 1er jan. 2025 | Non-résidents établissement stable | Sociétés étrangères avec sediu permanent RO |
| 1er jul. 2025 | PFA / II / IF | Indépendants soumis à TVA |
Le critère de classification grands/moyens contribuables est publié annuellement par ordin ANAF, basé sur le chiffre d'affaires N-2 et d'autres indicateurs (TVA déclarée, nombre d'employés, secteur).
Structure du fichier D406
La D406 reprend la structure SAF-T OCDE 2.0 avec adaptations roumaines. Trois blocs principaux :
- Header : métadonnées émetteur (CIF, raison sociale, période, version software, certificat). Strict, contrôlé en amont.
- MasterFiles : données de référence — GeneralLedgerAccounts (plan comptable), Customers, Suppliers, TaxTable (codes TVA), UOMTable (unités), Products, PhysicalStock, Owners.
- GeneralLedgerEntries : écritures comptables du mois avec détail journaux, comptes débit/crédit, contreparties.
- SourceDocuments : documents source — SalesInvoices (factures émises, doit matcher e-Factura), PurchaseInvoices (factures reçues, doit matcher e-Factura inverse), Payments, MovementOfGoods (mouvements stock, doit matcher e-Transport), AssetTransactions.
<?xml version="1.0" encoding="UTF-8"?>
<AuditFile xmlns="mfp:anaf:dgti:d406:declaratie:v2">
<Header>
<AuditFileVersion>2.4.4</AuditFileVersion>
<CompanyID>RO12345678</CompanyID>
<TaxAccountingBasis>F</TaxAccountingBasis>
<CompanyName>SC Furnizor SRL</CompanyName>
<BusinessName>Furnizor Tehnologii IT</BusinessName>
<FiscalYear>2026</FiscalYear>
<StartDate>2026-04-01</StartDate>
<EndDate>2026-04-30</EndDate>
<CurrencyCode>RON</CurrencyCode>
<DateCreated>2026-05-19T08:00:00</DateCreated>
<TaxEntity>Global</TaxEntity>
<ProductCompanyTaxID>RO12345678</ProductCompanyTaxID>
<SoftwareCertificateNumber>SAF-T-2026-CERT-001</SoftwareCertificateNumber>
<SoftwareID>ERPProvider</SoftwareID>
<SoftwareVersion>11.2.0</SoftwareVersion>
<SelectionCriteria>
<SelectionStartDate>2026-04-01</SelectionStartDate>
<SelectionEndDate>2026-04-30</SelectionEndDate>
</SelectionCriteria>
</Header>
<MasterFiles>
<GeneralLedgerAccounts>...</GeneralLedgerAccounts>
<Customers>...</Customers>
<Suppliers>...</Suppliers>
<TaxTable>...</TaxTable>
<UOMTable>...</UOMTable>
<AnalysisTypeTable>...</AnalysisTypeTable>
<Products>...</Products>
<PhysicalStock>...</PhysicalStock>
<Owners>...</Owners>
</MasterFiles>
<GeneralLedgerEntries>...</GeneralLedgerEntries>
<SourceDocuments>
<SalesInvoices>...</SalesInvoices>
<PurchaseInvoices>...</PurchaseInvoices>
<Payments>...</Payments>
<MovementOfGoods>...</MovementOfGoods>
<AssetTransactions>...</AssetTransactions>
</SourceDocuments>
</AuditFile> Cross-validation avec e-Factura
La spécificité majeure de la D406 en 2025-2026 est sa cross-validation automatique avec e-Factura. À chaque dépôt D406, l'ANAF :
- Compare les SalesInvoices D406 ↔ e-Factura sortantes. Chaque facture déclarée dans la D406 SalesInvoices doit correspondre à une facture e-Factura signée. Écart > 0,01 RON → avertissement automatique.
- Compare PurchaseInvoices D406 ↔ e-Factura entrantes. Symétrique : chaque facture passée en charge doit avoir été reçue via e-Factura.
- Compare MovementOfGoods ↔ e-Transport. Chaque mouvement de marchandise franchissant le seuil e-Transport (250 K€ depuis 2025) doit avoir un code UIT correspondant.
- Génère un rapport de divergence. Disponible dans SPV J+5 après dépôt D406. Le contribuable peut soumettre une D406 rectificative pour corriger.
Modes de soumission
Trois canaux acceptés :
- Portail web SPV. Upload manuel d'un ZIP contenant la D406 XML et ses pièces jointes (PJ obligatoires : tableaux Suppliers/Customers exportés). Limite 200 Mo par soumission.
- API REST D406. Endpoint
https://api.anaf.ro/prod/D406/rest/upload, authentification OAuth 2.0 client_credentials (même mécanisme que e-Factura). Recommandé pour les ERP multi-clients. - SFTP D406. Pour les très grands volumes (CA > 500 M€), canal SFTP dédié avec drop quotidien. Conventions de nommage spécifiques.
Le SPV produit un récépissé (UPO — Urzędowe Poświadczenie Odbioru, terme roumanisé) confirmant la réception. La validation de fond se fait en J+3 à J+5.
Pièges courants
- Confondre D406 et D300/D390. La D300 est la déclaration TVA mensuelle (résumée par taux/régime). La D390 est la déclaration récapitulative des opérations IC. La D406 est la déclaration informative détaillée — pas un substitut, mais un complément.
- Plan comptable : PCG roumain vs PCG groupe. Les GeneralLedgerAccounts D406 doivent suivre le plan comptable roumain OMFP 1802/2014 — pas le plan groupe IFRS direct. Une mauvaise mapping ERP cause des rejets MasterFiles.
- Encoding UTF-8 et caractères roumains. Comme pour RO_CIUS, encoding UTF-8 strict sans BOM. Beaucoup d'ERP exportent par défaut en Latin-2 ou avec BOM → rejet.
- Mauvaise période de référence. Le mois D406 est le mois calendaire, pas le mois comptable ni fiscal. Si le contribuable opère sur exercice décalé, il doit re-générer une vue calendaire.
- D406T pour les petits — depuis 2025. Les petits
contribuables soumettent une D406T trimestrielle (T = trimestriel),
formellement différente de la D406 mensuelle. Le schéma XML est
le même mais le code
TaxAccountingBasischange.