SAF-T (PT) — la première implémentation SAF-T au monde, depuis 2008
Le SAF-T (PT) — Standard Audit File for Tax, version portugaise — est un fichier XML normalisé que tout logiciel de comptabilité ou de facturation portugais doit savoir produire. Conçu à partir de la recommandation SAF-T de l'OCDE (2005), le Portugal en a fait le premier déploiement national obligatoire au monde en 2008. C'est le socle de tout l'édifice fiscal numérique portugais — et 18 ans d'avance sur la déclaration numérique européenne (ViDA).
Histoire — de l'OCDE 2005 au Portugal 2008
En 2005, l'OCDE publie sa Guidance for the Standard Audit File — Tax : l'idée est qu'un contrôleur fiscal puisse demander à n'importe quelle entreprise un fichier XML au format identique, contenant grand livre, factures, paiements et fiches articles. Fini les exports propriétaires illisibles, place à un audit automatisé. Mais l'OCDE ne fait que recommander.
Le Portugal est le premier pays à transformer cette recommandation en obligation légale. Le Decreto-Lei n.º 238/2006 (28 décembre 2006) inscrit l'obligation dans le Código do IRC et le régime des obligations comptables. La Portaria n.º 321-A/2007 (26 mars 2007) publie le schéma XML exact. Au 1ᵉʳ janvier 2008, tout logiciel comptable utilisé au Portugal doit pouvoir générer un SAF-T (PT) conforme.
Un second tournant majeur a lieu en 2013 : les Portarias
160/2013 et 274/2013 étendent le SAF-T à la facturation
(bloc SourceDocuments / SalesInvoices) et imposent la
soumission mensuelle de toutes les factures émises à
l'AT — c'est la naissance du système e-fatura. Le SAF-T
cesse d'être un simple fichier d'audit sur demande pour devenir un flux
déclaratif récurrent.
2005 | L'OCDE publie la Guidance on Standard Audit File for Tax (SAF-T 1.0)
| — un format XML d'export comptable pour faciliter le contrôle
| fiscal automatisé. C'est une RECOMMANDATION, pas une obligation.
|
2006 | Le Portugal transpose en droit national via le Decreto-Lei
| n.º 238/2006 (28 décembre) — premier pays au monde à rendre
| SAF-T juridiquement contraignant.
|
2007 | La Portaria n.º 321-A/2007 (26 mars) fixe la structure exacte
| du fichier SAF-T (PT) : schéma XML, énumérations, obligations.
|
2008 | 1ᵉʳ janvier — entrée en vigueur. Tout logiciel de comptabilité
| doit pouvoir exporter un SAF-T (PT) sur demande de l'AT.
|
2013 | La Portaria n.º 160/2013 puis 274/2013 étendent SAF-T à la
| FACTURATION (SourceDocuments). Soumission mensuelle des
| factures à l'AT (e-fatura) à partir du 1ᵉʳ janvier 2013.
|
2017 | Version 1.04_01 du schéma — alignement TaxonomyReference,
| ajout des champs liés à la certification logicielle.
|
2019-2020 | Ajout des champs ATCUD (placeholder) et préparation du
| code QR. Portaria 302/2016 sur la communication des séries.
|
2023-2026 | SAF-T (PT) reste la pièce maîtresse du dispositif : il sert
| de base à la pré-déclaration TVA, au e-fatura et au socle
| de la future Digital Reporting ViDA (Portugal déjà prêt). Gouvernance — Autoridade Tributária (AT)
Le SAF-T (PT) est gouverné par l'Autoridade Tributária e Aduaneira (AT), l'administration fiscale portugaise, via le Portal das Finanças. L'AT publie le schéma XSD officiel, les énumérations de codes (TaxCode, InvoiceType, MovementType) et les notes techniques. Toute évolution du schéma fait l'objet d'un Despacho (décision administrative) puis d'une nouvelle version (ex. 1.03 → 1.04_01).
L'AT contrôle la cohérence du fichier par validation XSD stricte côté serveur lors de la soumission e-fatura, et par recoupement avec les déclarations de TVA (Declaração Periódica do IVA). Un éditeur de logiciel qui produit un SAF-T invalide ne peut pas faire certifier son logiciel (voir page certification logicielle 2010).
Schéma technique — XML, SAF-T_PT 1.04_01
Le SAF-T (PT) est un fichier XML mono-document validé par un schéma XSD.
Le namespace racine est
urn:OECD:StandardAuditFile-Tax:PT_1.04_01. L'encodage
historique est Windows-1252 (l'UTF-8 est toléré). Il se
compose de quatre grands blocs :
- Header — identité de l'entreprise (NIF / CompanyID), période, devise, et surtout le
SoftwareCertificateNumber(numéro de certification AT) et leProductID. - MasterFiles — référentiels : clients (Customer), fournisseurs (Supplier), articles (Product), table des taux de taxe (TaxTable).
- GeneralLedgerEntries — écritures comptables (pour le SAF-T comptabilité).
- SourceDocuments — documents commerciaux :
SalesInvoices(factures),MovementOfGoods(guides de transport),WorkingDocuments,Payments.
<?xml version="1.0" encoding="Windows-1252"?>
<AuditFile xmlns="urn:OECD:StandardAuditFile-Tax:PT_1.04_01">
<Header>
<AuditFileVersion>1.04_01</AuditFileVersion>
<CompanyID>509876543</CompanyID>
<TaxRegistrationNumber>509876543</TaxRegistrationNumber>
<TaxAccountingBasis>F</TaxAccountingBasis>
<CompanyName>Lusitânia Comércio Lda</CompanyName>
<FiscalYear>2026</FiscalYear>
<StartDate>2026-06-01</StartDate>
<EndDate>2026-06-30</EndDate>
<CurrencyCode>EUR</CurrencyCode>
<ProductCompanyTaxID>500111222</ProductCompanyTaxID>
<SoftwareCertificateNumber>1234</SoftwareCertificateNumber>
<ProductID>FaturaPro/Nucleo Software Lda</ProductID>
<ProductVersion>8.2.1</ProductVersion>
</Header>
<SourceDocuments>
<SalesInvoices>
<NumberOfEntries>1</NumberOfEntries>
<TotalDebit>0.00</TotalDebit>
<TotalCredit>1000.00</TotalCredit>
<Invoice>
<InvoiceNo>FT 2026A/00417</InvoiceNo>
<ATCUD>JFHA3T7N-417</ATCUD>
<InvoiceStatus>N</InvoiceStatus>
<Hash>kEr8...base64-RSA-SHA1...==</Hash>
<InvoiceType>FT</InvoiceType>
<SystemEntryDate>2026-06-12T10:14:33</SystemEntryDate>
<CustomerID>00031</CustomerID>
<Line>
<LineNumber>1</LineNumber>
<ProductCode>SRV-CONSULT</ProductCode>
<Quantity>10</Quantity>
<UnitPrice>100.00</UnitPrice>
<Tax>
<TaxType>IVA</TaxType>
<TaxCountryRegion>PT</TaxCountryRegion>
<TaxCode>NOR</TaxCode>
<TaxPercentage>23.00</TaxPercentage>
</Tax>
</Line>
<DocumentTotals>
<TaxPayable>230.00</TaxPayable>
<NetTotal>1000.00</NetTotal>
<GrossTotal>1230.00</GrossTotal>
</DocumentTotals>
</Invoice>
</SalesInvoices>
</SourceDocuments>
</AuditFile> SAF-T (PT) vs SAF-T OCDE et clones nationaux
Le succès portugais a fait école : le SAF-T (PT) est devenu le modèle de référence copié — souvent à l'identique sur le nom du namespace OCDE — par de nombreux pays. Voici comment il se positionne :
| Dimension | SAF-T (PT) | SAF-T OCDE (modèle) | Clones nationaux |
|---|---|---|---|
| Année | 2008 (1ᵉʳ au monde) | 2005 (recommandation) | LU 2011, PL JPK 2016, LT i.SAF 2016, NO 2020, RO D406 2022 |
| Statut | Obligatoire (loi) | Non contraignant | Obligatoire localement |
| Périmètre | Compta + facturation + transport | Compta (v2 ajoute factures) | Variable (PL = compta + JPK_VAT) |
| Fréquence facturation | Mensuelle (e-fatura) | Sur demande | PL mensuel, RO mensuel |
| Lien certification logicielle | Oui (n° certificat dans le Header) | Non | Rare |
| Anti-fraude (hash chaîné) | Oui | Non | Non (sauf RO partiel) |
Adoption — 100 % des assujettis
- ~100 % des entreprises portugaises produisent du SAF-T (PT) : c'est une obligation légale sans seuil, de la micro-entreprise au grand groupe (sous réserve des régimes simplifiés très spécifiques).
- Soumission mensuelle e-fatura : les factures du mois M doivent être communiquées avant le 5 du mois M+1 (délai assoupli plusieurs fois ; cf. e-fatura).
- Marché des éditeurs : tout logiciel commercialisé au Portugal (PHC, Sage, Primavera, Moloni, InvoiceXpress, Vendus…) embarque un export SAF-T certifié — c'est une condition de mise sur le marché.
- Effet d'entraînement européen : Pologne (JPK), Lituanie (i.SAF), Norvège, Roumanie (D406) ont tous repris le modèle portugais. Le Portugal reste le mètre-étalon.
Pièges courants
- Confondre SAF-T comptabilité et SAF-T facturation. Ce sont deux usages du même schéma : la facturation est soumise mensuellement (e-fatura), la comptabilité est plutôt produite pour l'IES annuelle ou sur demande d'audit. Le bloc rempli diffère.
- Encodage Windows-1252. Beaucoup de fichiers SAF-T
historiques sont encodés en Windows-1252, pas en UTF-8. Une lecture
naïve casse les caractères ã, ç, õ. Toujours respecter la déclaration
encodingde l'en-tête XML. - Oublier le
SoftwareCertificateNumber. Le Header doit contenir le numéro de certification AT du logiciel émetteur. Un SAF-T sans ce numéro (ou avec « 0 ») est rejeté pour les flux obligatoires de facturation. - Rompre la chaîne de
Hash. Le hash de chaque facture intègre celui de la précédente. Réordonner, supprimer ou régénérer des factures hors séquence casse la chaîne — l'AT le détecte immédiatement. La numérotation doit être strictement séquentielle par série. - Mauvais
TaxCode. NOR (taux normal 23 %), INT (intermédiaire 13 %), RED (réduit 6 %), ISE (exonéré). Un mauvais code fausse le pré-rempli de la Declaração Periódica do IVA.