Portugal SAF-T: find NIF and period errors
Locate the field, identify its scope, and fix the source export deliberately.
Start with the reported NIF field
PT-NIF identifies the taxpayer number in Header/TaxRegistrationNumber, or an explicitly domestic customer or supplier tax identifier. In our fictional export the checksum-valid teaching number 501964843 is changed to 501964844. This is a synthetic example, with no claim that the number identifies an actual taxpayer. The last digit no longer agrees with the weighted calculation over the first eight digits. The report locates the source line and element path; it does not send the number to a register.
Check which party owns the identifier before editing your ERP record. A supplier identifier, customer master key and taxpayer NIF have different roles. This lite tool checks counterparty checksum only when the billing country is PT. It treats the generic consumer identifier separately, and it does not establish registration or eligibility. Correct the source master data only after verifying the intended party.
Compare the extraction period with the transaction
PT-PERIOD checks StartDate, EndDate and FiscalYear in the header. The interval must be ordered and remain inside the declared fiscal year in this partial preflight. PT-DATE-PERIOD points to an invoice or transaction date outside that extraction interval. The separate period example changes an invoice date from 2026-11-05 to 2026-12-05 while leaving November in the header. Decide whether the record or the extraction interval is wrong before regenerating the file.
GeneralLedgerEntries also has accounting periods, including special periods 13–16. Their meaning needs accounting context; this tool checks the numeric range without pretending that the fiscal closing treatment is correct. An unknown namespace, version or selected profile leaves business checks unexecuted. Matching the label 1.04_01 alone is insufficient because AT published revised bytes under the same label.
Primary sources and limits
AT 1.04_01 XSD is the structure reference, retrieved 6 November 2026, revision 17 May 2022. OECD terms do not automatically license AT adaptations. Our explanation and checks are independently written. No official Portuguese instructions or rulepack are copied.
XML syntax, supplied XSD, independent business checks, plausibility and unverified context remain separate. No AT certification/SVAT, legal suitability, accounting truth or submission acceptance is promised. No amounts or identifiers are automatically repaired. Use an authorised complete XSD 1.1 environment separately for the official original.