๐ต๐ฑPoland E-Invoice Errors
Polish KSeF validation errors (BR-PL-xx codes) for Poland's upcoming mandatory B2B e-invoicing via KSeF.
19 errors documented
PL-02CIUS-PL (Poland)countryBLOCKEDPolish invoices should be prepared for KSeF
Polish invoices should be prepared for KSeF. This validation rule ensures Invoice compliance with CIUS-PL (Poland).
KSEF-010KSeFcountryBLOCKEDKSeF XML schema validation failed
Invoice XML must conform exactly to the FA schema version (FA/1 or FA/2). Even minor deviations cause rejection.
PL-R-003ubl-2.1countryBLOCKEDKSeF submission required
Polish invoices must be submitted to KSeF (Krajowy System e-Faktur).
KSEF-009KSeFcountryBLOCKEDBank account not on VAT white list
For split payment (podzielona pลatnoลฤ) invoices, the seller bank account must be registered on the VAT white list (biaลa lista VAT).
PL-R-004ubl-2.1countryBLOCKEDKSeF session token invalid
KSeF API requires valid authentication token.
PL-R-006ubl-2.1countryBLOCKEDCurrency must be PLN for KSeF
Invoices to Polish KSeF typically require PLN amounts.
KSEF-007KSeFcountryAUTO-FIXKSeF date format invalid โ wrong date or timestamp serialisation
KSEF-007 is raised when a date or timestamp in an FA(2)/FA(3) e-invoice does not match the format the KSeF (Krajowy System e-Faktur) XSD requires. The Polish schema uses two different date types: plain calendar dates such as P_1 (data wystawienia / issue date), P_6 (sale date) and the due date must be xs:date in YYYY-MM-DD form, while DataWytworzeniaFa (the technical document creation timestamp in the header) must be a full xs:dateTime with a UTC time-zone designator. Any other shape โ a localised 15.04.2026, a slash date, a two-digit year, a date-only value placed in DataWytworzeniaFa, or a timestamp missing its Z / +02:00 offset โ is rejected before the business checks even run.
BR-PL-02ksefcountryBLOCKEDInvalid KSeF invoice type
Polish KSeF invoices must use valid invoice type codes.
KSEF-002KSeFcountryBLOCKEDInvoice date too old for KSeF
Invoice issue date cannot be more than 30 days before KSeF submission date. Older invoices will be rejected by the system.
KSEF-003KSeFcountryBLOCKEDInvoice number sequence gap
Invoice numbers must be sequential without gaps within each calendar year. KSeF rejects invoices with numbering gaps or duplicates.
PL-R-007ubl-2.1countryINPUTSplit payment annotation required
High-value Polish invoices may require split payment notation.
PL-R-005ubl-2.1countryINPUTInvalid Polish NIP format
Polish NIP must be 10 digits with valid checksum.
KSEF-006KSeFcountryINPUTUnit code not recognized
Unit of measure must be from Polish classification. Common codes include szt. (piece), kg, m, l, usล. (service).
KSEF-008KSeFcountryINPUTGTU code missing
Certain goods/services require GTU (Grupy Towarรณw i Usลug) classification codes. Required for alcohol (GTU_01), fuel (GTU_02), heating oil (GTU_03), tobacco (GTU_04), and other specific categories.
BR-PL-01peppol-bis-3countryINPUTPolish NIP number required
Polish invoices must include the NIP (tax identification number) for seller and buyer.
KSEF-004KSeFcountryINPUTCurrency code invalid
Currency must be a valid ISO 4217 code. Use PLN for domestic invoices.
KSEF-001KSeFcountryINPUTKSeF NIP validation failed โ bad format or wrong identifier field
KSEF-001 fires when a Polish tax identification number (NIP) on a KSeF e-invoice is malformed or placed in the wrong identifier element. A NIP must be exactly 10 digits and pass the official weighted check-digit test; the KSeF schema field that carries it (Podmiot1/Podmiot2 โ DaneIdentyfikacyjne โ NIP) accepts digits only โ no PL prefix, no spaces, no dashes. A second, very common variant is putting a domestic NIP in the EU VAT field (NrVatUE) or a generic identifier (NrID) instead of the NIP element, which both fails validation and breaks routing of the invoice to the correct party inside KSeF.
KSEF-005KSeFcountryINPUTKSeF VAT rate invalid โ StawkaPodatku not in the Ministry of Finance dictionary
KSEF-005 is raised when a VAT rate or tax category on an FA(2)/FA(3) invoice does not match the values the KSeF schema and the Ministry of Finance dictionary allow. KSeF does not accept arbitrary percentages or free-text descriptions: each line's rate must map to an allowed value (currently 23%, 8%, 5%, 0%) or to one of the markers โ zw (exempt), np (out of scope), and the reverse-charge handling โ declared through P_12 and consistent with the document totals (P_13_x / P_14_x). A non-dictionary percentage, or a marker inconsistent with the amounts reported for that group, is rejected.
PL-01CIUS-PL (Poland)countryBLOCKEDPolish sellers should include NIP number
Polish sellers should include NIP number. This validation rule ensures Invoice compliance with CIUS-PL (Poland).
Handle Poland Errors in Your Pipeline
The compliance engine auto-remediates Poland e-invoicing errors with controlled safety policies.