AT rejected your SAF-T? We show you where.
Free online SAF-T (PT) validator: upload the XML and see, in plain language, the line, the field and the value AT does not accept. And before every submission, check that the month's file is clean.
Next SAF-T deadline: October invoices, due by 5 November.<CustomerID>C0042</CustomerID><AccountID>Desconhecido</AccountID><CustomerTaxID>123456788</CustomerTaxID><CompanyName>Papelaria Sol, Lda.</CompanyName><BillingAddress><AddressDetail>Rua da Bandeira, 12</AddressDetail></Invoice><Invoice><InvoiceNo>FT A/57</InvoiceNo><ATCUD>JFJ7KQ2P57</ATCUD><DocumentStatus><InvoiceStatus>N</InvoiceStatus>This is how you get the result: your own file, with every problem marked on the right line, the value found and the value expected.
Three steps, nothing to install.
The diagnosis is always free. Then decide whether to fix it in your invoicing software or here.
- 1
Upload the XML
Export the SAF-T from your invoicing software and drop it on the page. No account needed.
- 2
Read the marks
Each problem appears on its line of the file, with the field, the value found and the value expected, in plain language.
- 3
Fix and submit
Fix it in your ERP and export again, or fix it here for €7 and download the corrected XML with a PDF report.
What the SAF-T validator checks
The rules AT applies on intake, and the ones the schema does not catch.
Need to check a single NIF? Use the free NIF checker. Working with the schema directly? See where to download the official XSD.
- XSD schema 1.04_01The structure of the file, field by field, against the official schema in force.
- Encoding and BOMWindows-1252, invisible bytes at the start and spaces before the declaration.
- NIFCheck digit (Mod-11) of customers and suppliers, and VIES registration of the company NIF.
- ATCUDValidation code, hyphen and document number.
- DatesHeader dates and documents outside the declared period.
- Block totalsControl totals consistent with the documents they add up.
- CurrencyForeign currency blocks complete and consistent.
- Document statusValid statuses for every invoice, credit note and receipt.
The silent rejection: the XML is right, the encoding is not.
AT expects files in Windows-1252. Many programs export UTF-8, sometimes with three invisible bytes at the start (the BOM). The schema validates, and the Portal das Finanças only answers «ficheiro inválido», without saying why.
Without knowing the problem is the encoding, the loop is export again, submit, fail again. SAFTCheck detects the real encoding, the BOM and spaces before the declaration. The fix converts the file to Windows-1252 with the right declaration: the same data, in the encoding AT expects.
AT SAF-T error messages explained: "Ficheiro inválido", "Rejeitado" and cvc- errorsEF BB BF 3C 3F 78 6D 6C 20 76 65<?xml version="1.0" encoding="UTF-8"?><AuditFile xmlns="urn:OECD:StandardAuditFile-Tax:PT_1.04_01"><Header><AuditFileVersion>1.04_01</AuditFileVersion>After the automatic fix
<?xml version="1.0" encoding="Windows-1252"?>SAF-T guides
Written for people who submit SAF-T every month: what AT requires, what its messages mean and how to fix things before day 5.
Pricing
Validation is free. You only pay if you want SAFTCheck to fix the file for you, or if you validate every month.
Single Fix
For after a rejection, one file at a time.
€7per file, + VAT
- Automatically corrected XML
- Inline editor (NIF / ATCUD / dates)
- PDF report
- No account needed
You pay after seeing the problems, only if you want the fix.
Pro
For those who submit every month and want to check first.
€19per month, + VAT
- Unlimited validations
- Fixes and PDF reports for every file
- History 90 days
- Schema-change alerts Coming soon
Cancel any time.
Agency
For accounting firms with several clients.
€49per month, + VAT
- Up to 50 client NIFs / month
- Branded PDFs
- Multi-client dashboard Coming soon
- Basic API Coming soon
Need more? Higher-volume plans from €99 / 200 NIFs: email us.
Prices exclude VAT; the applicable rate is shown at payment. EU businesses with a valid VAT number pay no VAT (reverse charge). Paddle is the merchant of record and issues the invoice. Refunds within 14 days. SAFTCheck is an informational tool and does not guarantee acceptance by AT.
FAQ
Another question? Write to us.
Why did AT reject my SAF-T with no useful error?
AT requires Windows-1252 encoding. Most ERPs export UTF-8 and declare it that way in the XML prolog, AT silently rejects without explaining. SAFTCheck transcodes the body bytes to Windows-1252, rewrites the declaration, and hands you a file AT will accept.
Why pay if AT has a free validator?
AT's portal returns the schema verdict: pass or fail. SAFTCheck adds the one-click encoding fix that resolves the most common silent rejection, an inline editor that lets you patch a wrong NIF or ATCUD without re-exporting from your ERP, line-numbered errors with plain-language explanations, a downloadable PDF report, and submission history. Same compliance check, with the ergonomics that get the file shipped faster.
Does SAFTCheck guarantee AT acceptance?
No. We surface the most common rejection causes and let you generate a clean file. Validation is informational; AT may still reject for reasons we do not yet check.
Is my SAF-T data safe?
Your file is processed on our servers in the EU and deleted automatically within 60 minutes of upload (if you pay for it, we keep it for 60 minutes after the payment is confirmed so you can download the fix). We never sell or publish its contents. To check the company's VAT registration, the NIF from the file header is sent to the European Commission's VIES service. If you are signed in, your history keeps a short summary of each check (file name, company name, NIF, fiscal year and error counts) for 90 days.
What schema versions do you support?
AT SAF-T (PT) 1.04_01, the version active for monthly billing SAF-T submissions in 2026.
Is there a SAF-T validator to download?
You don't need one. SAFTCheck runs online against AT's current XSD 1.04_01, so there is nothing to install or keep up to date. If you work with the schema itself, our guide explains where to download the official XSD.
Can my accountant use this?
Yes. The €49 Agency tier covers up to 50 client NIFs a month with PDF reports branded with your firm. A multi-client dashboard is coming soon. Higher-volume plans from €99 / 200 NIFs.
How is VAT charged?
Prices shown exclude VAT and local sales tax. Paddle acts as Merchant of Record and calculates the right rate at checkout based on your country. EU consumers pay their home VAT rate (e.g. PT 23%, DE 19%). EU businesses with a valid VAT number pay 0% (reverse charge under Article 196 of EU Directive 2006/112/EC). Buyers outside the EU may see UK VAT, US state sales tax or similar local tax depending on jurisdiction; the rate is shown on the Paddle checkout before you pay.
Do you support Spain SII?
Not yet. Spain SII has a different schema family; support is on the roadmap and coming soon.
Submitting this month? Check your SAF-T before AT does.
It takes less than a minute.