KSeF FA(3) — bad NIP check digit and mismatched total (warnings only)
Structurally perfect against the official schema, yet the seller’s NIP fails its mod-11 check digit and P_15 does not match the sum of the VAT breakdown. ValidateFin reports both as warnings, not errors — neither is a normative KSeF rule, and the Ministry’s own example 1 is itself one grosz off.
FA(3) 1-0E — Valid
Structurally perfect against the official schema, yet the seller’s NIP fails its mod-11 check digit and P_15 does not match the sum of the VAT breakdown. ValidateFin reports both as warnings, not errors — neither is a normative KSeF rule, and the Ministry’s own example 1 is itself one grosz off.
What this file shows
Structurally perfect against the official schema, yet the seller’s NIP fails its mod-11 check digit and P_15 does not match the sum of the VAT breakdown. ValidateFin reports both as warnings, not errors — neither is a normative KSeF rule, and the Ministry’s own example 1 is itself one grosz off.
| Transactions | 3 |
|---|---|
| Total | PLN 64,379.92 |
Every party, IBAN and amount below is fictitious. The IBANs are structurally valid — they pass the mod-97 check — but they belong to no real account.
File content
<?xml version="1.0" encoding="UTF-8"?>
<!--
DELIBERATELY IMPERFECT — but note the verdict: this file is still VALID.
It is structurally correct against the official FA(3) schema, yet it carries two
defects that the schema cannot see:
· the seller's NIP (9999999998) fails the mod-11 check digit;
· P_15 (64379.92) does not match the sum of P_13_* + P_14_* (64279.92).
ValidateFin reports both as WARNINGS, not errors — because neither is a normative
KSeF rule, and treating them as fatal would reject the Ministry's own example files
(their example 1 is itself 1 grosz off). This sample exists to show that distinction.
-->
<Faktura xmlns:etd="http://crd.gov.pl/xml/schematy/dziedzinowe/mf/2022/01/05/eD/DefinicjeTypy/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://crd.gov.pl/wzor/2025/06/25/13775/">
<Naglowek>
<KodFormularza kodSystemowy="FA (3)" wersjaSchemy="1-0E">FA</KodFormularza>
<WariantFormularza>3</WariantFormularza>
<DataWytworzeniaFa>2026-02-01T00:00:00Z</DataWytworzeniaFa>
<SystemInfo>SamploFaktur</SystemInfo>
</Naglowek>
<Podmiot1>
<DaneIdentyfikacyjne>
<NIP>9999999998</NIP>
<Nazwa>ABC AGD sp. z o. o.</Nazwa>
</DaneIdentyfikacyjne>
<Adres>
<KodKraju>PL</KodKraju>
<AdresL1>ul. Kwiatowa 1 m. 2</AdresL1>
<AdresL2>00-001 Warszawa</AdresL2>
</Adres>
<DaneKontaktowe>
<Email>[email protected]</Email>
<Telefon>667444555</Telefon>
</DaneKontaktowe>
</Podmiot1>
<Podmiot2>
<DaneIdentyfikacyjne>
<NIP>1111111111</NIP>
<Nazwa>CDE sp. j.</Nazwa>
</DaneIdentyfikacyjne>
<Adres>
<KodKraju>PL</KodKraju>
<AdresL1>ul. Sadowa 1 lok. 3</AdresL1>
<AdresL2>00-002 Kraków</AdresL2>
</Adres>
<DaneKontaktowe>
<Email>[email protected]</Email>
<Telefon>555777999</Telefon>
</DaneKontaktowe>
<NrKlienta>fdfd778343</NrKlienta>
<JST>2</JST>
<GV>2</GV>
</Podmiot2>
<Podmiot3>
<DaneIdentyfikacyjne>
<NIP>2222222222</NIP>
<Nazwa>Bank Bankowości Bankowej S. A. BBB Faktoring</Nazwa>
</DaneIdentyfikacyjne>
<Adres>
<KodKraju>PL</KodKraju>
<AdresL1>ul. Bankowa 1</AdresL1>
<AdresL2>00-003 Łódź</AdresL2>
</Adres>
<DaneKontaktowe>
<Email>[email protected]</Email>
<Telefon>666888999</Telefon>
</DaneKontaktowe>
<Rola>1</Rola>
</Podmiot3>
<Fa>
<KodWaluty>PLN</KodWaluty>
<P_1>2026-02-15</P_1>
<P_1M>Warszawa</P_1M>
<P_2>FV2026/02/150</P_2>
<WZ>44343434/2026</WZ>
<P_13_1>52260.10</P_13_1>
<P_14_1>12019.82</P_14_1>
<P_15>64379.92</P_15>
<Adnotacje>
<P_16>2</P_16>
<P_17>2</P_17>
<P_18>2</P_18>
<P_18A>2</P_18A>
<Zwolnienie>
<P_19N>1</P_19N>
</Zwolnienie>
<NoweSrodkiTransportu>
<P_22N>1</P_22N>
</NoweSrodkiTransportu>
<P_23>2</P_23>
<PMarzy>
<P_PMarzyN>1</P_PMarzyN>
</PMarzy>
</Adnotacje>
<RodzajFaktury>VAT</RodzajFaktury>
<FaWiersz>
<NrWierszaFa>1</NrWierszaFa>
<UU_ID>aaaa111133339990</UU_ID>
<P_6A>2026-01-03</P_6A>
<P_7>lodówka Zimnotech mk1</P_7>
<CN>8418 21 91</CN>
<P_8A>szt.</P_8A>
<P_8B>10</P_8B>
<P_9A>1626.01</P_9A>
<P_11>16260.10</P_11>
<P_12>23</P_12>
</FaWiersz>
<FaWiersz>
<NrWierszaFa>2</NrWierszaFa>
<UU_ID>aaaa111133339991</UU_ID>
<P_6A>2026-01-10</P_6A>
<P_7>zamrażarka Zimnotech mk2</P_7>
<CN>8418 40 20</CN>
<P_8A>szt.</P_8A>
<P_8B>20</P_8B>
<P_9A>1000</P_9A>
<P_10>100</P_10>
<P_11>18000</P_11>
<P_12>23</P_12>
</FaWiersz>
<FaWiersz>
<NrWierszaFa>3</NrWierszaFa>
<UU_ID>aaaa111133339992</UU_ID>
<P_6A>2026-01-15</P_6A>
<P_7>zmywarka Bryza 100</P_7>
<CN>8422 11 00</CN>
<P_8A>szt.</P_8A>
<P_8B>15</P_8B>
<P_9A>1200</P_9A>
<P_11>18000</P_11>
<P_12>23</P_12>
</FaWiersz>
<Rozliczenie>
<Odliczenia>
<Kwota>1000</Kwota>
<Powod>nadwyżka salda nierozliczonych środków</Powod>
</Odliczenia>
<SumaOdliczen>1000</SumaOdliczen>
<DoZaplaty>63279.92</DoZaplaty>
</Rozliczenie>
<Platnosc>
<TerminPlatnosci>
<Termin>2026-03-15</Termin>
</TerminPlatnosci>
<FormaPlatnosci>6</FormaPlatnosci>
<RachunekBankowyFaktora>
<NrRB>73111111111111111111111111</NrRB>
<RachunekWlasnyBanku>2</RachunekWlasnyBanku>
<NazwaBanku>Bank Bankowości Bankowej S. A.</NazwaBanku>
<OpisRachunku>PLN</OpisRachunku>
</RachunekBankowyFaktora>
</Platnosc>
<WarunkiTransakcji>
<Zamowienia>
<DataZamowienia>2026-01-26</DataZamowienia>
<NrZamowienia>4354343</NrZamowienia>
</Zamowienia>
<NrPartiiTowaru>2312323/2026</NrPartiiTowaru>
<WarunkiDostawy>CIP</WarunkiDostawy>160 / 200 lines shown — the complete file is in the download above.
How we know these results hold
Every file in this library is run through the site's own validator on each build. The expected result stated above is asserted by an automated test — if a file stopped matching what this page claims, the build would fail. Two inherited fixtures were repaired this way before publication: three IBANs failed the mod-97 check and several names used characters outside the basic SEPA character set.
KSeF invoice (Poland, FA(3))
- KSeF FA(3) — valid invoice (official MF example)
- KSeF — invoice still using the retired FA(2) schema
- KSeF FA(3) — correcting invoice (faktura korygująca, KOR)
- KSeF FA(3) — prepayment invoice (faktura zaliczkowa, ZAL)
- KSeF FA(3) — mandatory element missing (rejected by the official XSD)
- KSeF FA(3) — buyer NIP failing its mod-11 check digit (warning only)