SAFTCheck Field Notes
Practical guides on Portuguese SAF-T submission, ATCUD format, encoding pitfalls, and AT deadlines.
SAF-T (PT) from SAP rejected by AT: what to check
Why SAF-T files exported from SAP get rejected by AT and what to check: encoding and the XML declaration, customer tax IDs, documents outside the period, and ATCUD.
AT SAF-T error messages explained: "Ficheiro inválido", "Rejeitado" and cvc- errors
What each message from the Portal das Finanças and AT's SAF-T validator means and how to fix it: "Ficheiro inválido", file statuses, upload errors, and cvc-pattern-valid, cvc-identity-constraint and other validator messages.
SAF-T (PT) XSD 1.04_01: official download and what changed in 2022
Where to download AT's official SAF-T (PT) schema, the version in force in 2026, how it differs from the 2016 file many tools still ship, and how to validate against it.
How to validate a SAF-T (PT) before submitting to AT
A pre-submission checklist: encoding, BOM, NIF, ATCUD, header dates, per-document date range, block totals, currency, and document status, with what AT catches at intake and how to fix it before day 5.
How to fix the SAF-T UTF-8 encoding error in Portugal
Why AT silently rejects SAF-T XML files declared as UTF-8, and the one-line fix that makes them go through.
ATCUD format errors and how to fix them
The validation code (at least 8 characters), the dash, the document number: what AT expects since 2023 and the patterns that fail.
SAF-T Portugal: what it is, who files, deadlines and rejections
A practical guide to SAF-T (PT) for companies invoicing in Portugal: who must submit, file or webservice, the day-5 deadline, fines, what changes in 2027 and 2028, and why AT rejects files.