Saftlint
Kildegrunnlag

Motstridelser i dokumentasjonen

Når offisielle kilder gir ulike svar, velger Saftlint en dokumentert, konservativ håndtering. En fil avvises ikke på grunnlag av én kilde når en annen offisiell kilde tillater samme innhold.

Advarsler vises bare når filen faktisk berører en relevant motstridelse. Øvrige punkter oppbevares her som begrensninger ved valideringen.

Offisielle kodelistefiler har misvisende filtype og ulik koding

CONFLICT-CODELIST-PACKAGING-001

Filen som publiseres som STAT_Grouping_Category_Code.csv er en XLSX/ZIP-arbeidsbok. KOSTRA-filene bruker Windows-1252 og en annen kolonnerekkefølge.

Håndtering
Originalfilene og sjekksummene bevares. Innlesing og tester er formatbevisste.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
Offisielt SAF-T-register, revisjon 021ede90bce361e285229da15aa2ba93831a3f0d

Offentlige sider og registeret beskriver ulik testtilgang

CONFLICT-TEST-SUBMISSION-001

Skatteetatens offentlige side sier at testinnsending er utilgjengelig, mens registeret sier at en ny løsning er klar for invitert testing.

Håndtering
Offentlig testinnsending omtales som utilgjengelig; registerteksten behandles som begrenset, invitert testing.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
Skatteetaten: Testinnsending; Offisielt SAF-T-register: New submission solution

SourceDocuments har motstridende status

CONFLICT-SOURCEDOCUMENTS-001

Dokumentasjonen omtaler SourceDocuments som fremtidig innhold, XSD-en tillater strukturene men merker seksjonen «Not in use», og registeret sier at hele formatet blir tilgjengelig fra 1. januar 2027.

Håndtering
En tom SourceDocuments-beholder godtas. Innhold gir en advarsel og blir ikke semantisk vurdert.
Visning i validering
Gir advarsel når filen berører punktet.
Kilder
Dokumentasjon v1.7; SAF-T Financial 1.40 XSD; Offisielt register: Including SourceDocuments 01.01.2027

XSD-nøkler håndheves ikke pålitelig

CONFLICT-XSD-IDENTITY-001

XSD-en deklarerer nøkler og referanser, men dokumentasjonen sier at unikhet ikke valideres ved overføring, og selektorene virker ikke med mål-navnerommet i testede standardvalidatorer.

Håndtering
Saftlint implementerer gjennomgåtte relasjoner eksplisitt og hevder ikke at XSD-en dekker resten.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
SAF-T Financial 1.40 XSD; Teknisk beskrivelse s. 7

Det offisielle eksemplet bryter Owner-kontoreferansen

CONFLICT-OWNER-ACCOUNT-001

XSD-en deklarerer at Owner/AccountID skal peke på GeneralLedgerAccounts, men det offisielle eksemplet bruker konto 2250 og 1370 uten å eksportere dem som hovedbokskonti.

Håndtering
Referansen håndheves ikke før Skatteetaten har avklart motstridelsen.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
SAF-T Financial 1.40 XSD; Offisielt 1.40-eksempel

Valutaformelen motsies av det offisielle eksemplet

CONFLICT-CURRENCY-EQUATION-001

Teknisk beskrivelse sier CurrencyAmount × ExchangeRate = Amount. Det offisielle eksemplet inneholder verdier som ikke oppfyller formelen.

Håndtering
Saftlint håndhever ikke formelen før avrunding og eksempel er avklart.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
Teknisk beskrivelse s. 39; Offisielt 1.40-eksempel

Dokumentasjonen viser feil elementnavn for NOK-beløp

CONFLICT-NOK-ELEMENT-001

Teknisk beskrivelse viser Amount under DebitNOKTaxAmount, mens XSD-en og det offisielle eksemplet krever NOKAmount.

Håndtering
XSD-en følges for struktur.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
Teknisk beskrivelse s. 49; SAF-T Financial 1.40 XSD

Spørsmål og svar er uenig med 1.40-XSD-en om adressefelt

CONFLICT-ADDRESS-CARDINALITY-001

Spørsmål og svar sier at City og PostalCode er obligatoriske, mens 1.40-XSD-en og endringshistorikken gjør begge valgfrie.

Håndtering
Den versjonerte 1.40-XSD-en følges.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
Skatteetaten: Spørsmål og svar; Dokumentasjon v1.7; SAF-T Financial 1.40 XSD

Endringsteksten for Owner/AccountID blander minimum og maksimum

CONFLICT-OWNER-CARDINALITY-001

Dokumentasjonen sier at AccountID er endret «fra 1 til unbounded», men oppgir samtidig 0..U. XSD-en bruker 0..U.

Håndtering
Teksten tolkes som at maksimalt antall er endret fra én til ubegrenset; minimum er fortsatt null.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
Dokumentasjon v1.7; Offisielt register: About SAF-T Financial schema v1.40; SAF-T Financial 1.40 XSD

Påkrevd 2027-format mangler grupperingsliste for 2027

CONFLICT-GROUPING-YEARS-001

SAF-T 1.40 blir eneste gyldige format fra 2027, men det offisielle registeret inneholder bare grupperingslister for 2025–2026.

Håndtering
Saftlint advarer og unnlater å avvise kontokoblinger for år uten publisert liste.
Visning i validering
Gir advarsel når filen berører punktet.
Kilder
Skatteetaten: SAF-T-dokumentasjon; Offisielt SAF-T-register

Teknisk beskrivelse og XSD er uenige om negative beløp

CONFLICT-SIGNED-AMOUNTS-001

Den tekniske beskrivelsen sier at fortegn må unngås fordi debet- og kredittelementet angir retningen. XSD-annotasjonen for DebitCreditIndicator sier samtidig at en retur kan gi et negativt beløp.

Håndtering
Fortegn rapporteres konservativt som en advarsel inntil Skatteetaten har avklart om negative returbeløp er tillatt.
Visning i validering
Gir advarsel når filen berører punktet.
Kilder
Teknisk beskrivelse s. 8; SAF-T Financial 1.40 XSD: DebitCreditIndicator

Gyldighetsperioden for standard MVA-koder stopper ved 2021

CONFLICT-VAT-CODE-PERIOD-001

Veiledning v1.14 beskriver standard MVA-/avgiftskoder for perioden 2012–2021, mens samme XML-kodeliste brukes i SAF-T Financial 1.40-materialet publisert i 2026 uten nye gyldighetsdatoer.

Håndtering
Kodene brukes til strukturell koblingskontroll, men Saftlint hevder ikke at deres avgiftsmessige gyldighet etter 2021 er avklart.
Visning i validering
Vises i registeret, ikke som advarsel på alle filer.
Kilder
Standard VAT/Tax Codes v1.14; SAF-T Financial 1.40-kodeliste

Kommunal KOSTRA CSV og XML er uenige om kode 452–454

CONFLICT-KOSTRA-452-454

CSV-en publiserer KA_K/452, KA_K/453 og KA_K/454. XML-en merker 452 og 453 som KA_KS og mangler 454.

Håndtering
Unionen godtas for å unngå falske feil. En berørt fil får en advarsel om kildekonflikten.
Visning i validering
Gir advarsel når filen berører punktet.
Kilder
KOSTRA_Arts_kommuner.csv; KA_K_Grouping_Category_Code.xml