Poland
Poland is implementing mandatory B2B e-invoicing through the Krajowy System e-Faktur (KSeF). While Peppol is supported, KSeF is the primary platform for domestic invoicing.
Overviewโ
| Aspect | Details |
|---|---|
| Network | KSeF (domestic), Peppol (cross-border) |
| Mandate Status | KSeF mandatory from February 2026 |
| Format | Peppol BIS Billing 3.0, FA_VAT schema for KSeF |
| Currency | PLN (Polish Zลoty) |
| Tax System | VAT (multi-rate) |
Identifier Schemesโ
NIP (Tax Identification Number)โ
| Scheme ID | Scheme Name | Format |
|---|---|---|
9945 | Polish NIP | 10 digits |
<cbc:EndpointID schemeID="9945">1234567890</cbc:EndpointID>
GLNโ
<cbc:EndpointID schemeID="0088">5901234123450</cbc:EndpointID>
VAT Ratesโ
| Code | Description | Rate |
|---|---|---|
S | Standard rate | 23% |
AA | Reduced rate | 8% |
H | Super-reduced rate | 5% |
Z | Zero-rated | 0% |
E | Exempt | 0% |
Standard Rate Exampleโ
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>23.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
KSeF Integrationโ
KSeF Number Referenceโ
When invoices are registered in KSeF, include the reference:
<cac:AdditionalDocumentReference>
<cbc:ID>KSEF-123456789-20260126-ABC123</cbc:ID>
<cbc:DocumentTypeCode>KSeF</cbc:DocumentTypeCode>
</cac:AdditionalDocumentReference>
Split Payment Mechanismโ
Poland requires split payment for certain transactions:
<cac:PaymentMeans>
<cbc:PaymentMeansCode>31</cbc:PaymentMeansCode>
<cbc:InstructionNote>Mechanizm podzielonej pลatnoลci</cbc:InstructionNote>
</cac:PaymentMeans>
Example Invoiceโ
<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2">
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>FV/2026/01/001</cbc:ID>
<cbc:IssueDate>2026-01-26</cbc:IssueDate>
<cbc:DueDate>2026-02-26</cbc:DueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>PLN</cbc:DocumentCurrencyCode>
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="9945">1234567890</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>Polska Firma Sp. z o.o.</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>ul. Marszaลkowska 42</cbc:StreetName>
<cbc:CityName>Warszawa</cbc:CityName>
<cbc:PostalZone>00-001</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>PL</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyTaxScheme>
<cbc:CompanyID>PL1234567890</cbc:CompanyID>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
</cac:Party>
</cac:AccountingSupplierParty>
<!-- ... rest of invoice -->
</Invoice>