KSeF FA(3) — bad NIP check digit and mismatched total (warnings only)
Estructuralmente perfecta frente al esquema oficial y, aun así, el NIP del vendedor no supera su dígito de control mod-11 y P_15 no coincide con la suma del desglose de IVA. ValidateFin informa de ambos como advertencias, no errores: ninguna regla es normativa, y el ejemplo n.º 1 del Ministerio se desvía él mismo un grosz.
FA(3) 1-0E — Válido
Estructuralmente perfecta frente al esquema oficial y, aun así, el NIP del vendedor no supera su dígito de control mod-11 y P_15 no coincide con la suma del desglose de IVA. ValidateFin informa de ambos como advertencias, no errores: ninguna regla es normativa, y el ejemplo n.º 1 del Ministerio se desvía él mismo un grosz.
Lo que muestra este fichero
Estructuralmente perfecta frente al esquema oficial y, aun así, el NIP del vendedor no supera su dígito de control mod-11 y P_15 no coincide con la suma del desglose de IVA. ValidateFin informa de ambos como advertencias, no errores: ninguna regla es normativa, y el ejemplo n.º 1 del Ministerio se desvía él mismo un grosz.
| Transacciones | 3 |
|---|---|
| Total | 64.379,92 PLN |
Todas las partes, IBAN e importes siguientes son ficticios. Los IBAN son estructuralmente válidos —superan el mod-97— pero no corresponden a ninguna cuenta real.
Contenido del fichero
<?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.
Cómo sabemos que estos resultados se sostienen
Cada fichero de esta biblioteca pasa por el propio validador del sitio en cada build. El resultado esperado indicado arriba lo verifica un test automatizado: si un fichero dejara de coincidir con lo que afirma esta página, el build fallaría. Dos fixtures heredadas se repararon así antes de publicarse: tres IBAN no superaban el mod-97 y varios nombres usaban caracteres fuera del juego SEPA básico.
Factura KSeF (Polonia, 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)