Marketplace IntegratieE-Commerce PakkettenBedrijfswebsiteMaatwerksoftwareBedrijfsoprichtingFulfillment CentrumProductopslagMobiele App Ontwikkeling
Inloggen
Polen · E-Commerce

Complete 2026 KSeF guide: mandatory B2B Feb 1, FA(2) XML schema, NIP-VAT identification, PEF B2G, ePUAP+API auth, Comarch/Sage integration, Peppol UBL.

PL Polish KSeF E-Invoice Mandate — Effective February 1, 2026

KSeF Polish E-Invoicing Mandatory Feb 2026: Implementation, Compliance & E-Commerce Integration Guide

From February 1, 2026, Poland switches its entire B2B and B2G invoicing flow to a single, structured XML pipeline: KSeF — Krajowy System e-Faktur (National e-Invoice System), operated by the Ministerstwo Finansow. Every Polish marketplace order to a business buyer must be issued in the FA(2) XML schema, signed via ePUAP or a qualified seal, posted to the production KSeF API and stamped with a 10-character KSeF reference number. Public-sector invoices continue through PEF (Platforma Elektronicznego Fakturowania), with cross-border flows handled by Peppol UBL 2.1. Get this wrong and Polish tax law (Ustawa o VAT) authorises penalties of up to 100% of the VAT amount per invoice. This guide breaks the whole stack down for e-commerce sellers, ERP integrators and cross-border vendors.

✓ Feb 1, 2026 large taxpayers ✓ Apr 1, 2026 all VAT payers ✓ FA(2) XML schema ✓ Penalties up to 100% VAT
zunapro.com/panel/poland/ksef
KSeF Hub Live API
FA(2) coverage 100% / valid
Invoices Today
1,284
↑ 38
Pending
3
↑ queued
Avg ACK
1.8s
↓ 12%
Last 7 Days · KSeF Submissions 8,427↑ 19%
MonTueWedThuFriSatTdy
Recent KSeF Invoices Live
KSEF-7A3D FV/2026/06/00284 · Allegro · NIP 5252... Accepted
KSEF-7A3E FV/2026/06/00285 · Amazon · NIP 7010... Signing
KSEF-7A3F FV/2026/06/00286 · Erli · NIP 5263... Queued
KSeF Online · FA(2) schema validated · ePUAP token OK
Feb 1, 2026
Mandatory for PLN 200M+ Taxpayers
Apr 1, 2026
Mandatory for All VAT Payers
FA(2)
Structured XML Schema (XSD)
100% VAT
Maximum Non-Compliance Penalty

KSeF in 90 Seconds — Quick Read

KSeF (Krajowy System e-Faktur) is Poland's centralised national e-invoice clearance system, operated by the Ministerstwo Finansow. From February 1, 2026 it is mandatory for large taxpayers above the PLN 200 million turnover threshold; from April 1, 2026 it covers every other Polish VAT-registered business. Invoices must be issued in the FA(2) XML schema, signed via qualified electronic signature, qualified seal or ePUAP Trusted Profile, posted to the KSeF API, and stamped with a unique 10-character KSeF identifier that replaces the traditional invoice-delivery confirmation. B2G invoices continue through PEF (Platforma Elektronicznego Fakturowania), which connects via Peppol UBL to cross-border public buyers. The legal basis is Ustawa o VAT (Polish VAT Act) amended by the 2023 e-Invoice Act and detailed in the Ministry of Finance's KSeF Ordinance. Penalties: up to 100% of the VAT amount per invoice.

1. KSeF (Krajowy System e-Faktur) — What It Is and Why It Exists

KSeF — the Krajowy System e-Faktur (National e-Invoice System) — is the Polish state's centrally operated invoice clearance platform. Operationally it is a REST API plus a web portal hosted by the Ministerstwo Finansow (Ministry of Finance) at ksef.podatki.gov.pl. Every structured invoice (faktura ustrukturyzowana) issued by a Polish taxpayer is uploaded to KSeF as an FA(2) XML document, validated against the official XSD schema, time-stamped, allocated a unique 10-character KSeF identifier (e.g. 7A3D-19F0), and persisted in the central register for at least 10 years.

From a legal perspective KSeF was introduced by the amended Ustawa o podatku od towarow i uslug (Polish VAT Act, Ustawa o VAT) and detailed in the Ministry of Finance's KSeF Ordinance (Rozporzadzenie Ministra Finansow w sprawie KSeF). It is voluntary since January 1, 2022 and becomes mandatory in two waves during 2026 — replacing every traditional PDF invoice flow between Polish businesses.

Why Did Poland Build KSeF?

The Ministry of Finance set out three explicit goals when KSeF was first announced in 2021: close the VAT gap (Poland's luka VAT shrank from over 25% in 2015 to roughly 7–9% in 2024 thanks to SAF-T and split-payment; KSeF makes carousel and missing-trader fraud structurally harder); cut administrative friction (a KSeF invoice is delivered to the buyer the moment it is registered — no PDF email, no confirmation receipt; the KSeF timestamp is the legal delivery date); and align with EU ViDA (the 2024 "VAT in the Digital Age" package mandates structured e-invoicing across the single market by 2030; Poland is an early mover and KSeF will plug into ViDA with minimal architectural change).

Who Operates KSeF and Who Is Bound by It?

KSeF is built and operated by the Ministry of Finance's IT arm (Departament Informatyzacji Ministerstwa Finansow) together with KAS (Krajowa Administracja Skarbowa). Every active Polish VAT taxpayer is bound from the mandatory date: sole proprietors (JDG), limited-liability companies (sp. z o.o.), foreign companies registered for Polish VAT, and large corporates filing JPK_V7M. Marketplace sellers on Allegro, Amazon.pl, Empik, Ceneo, Morele.net or Erli are no exception.

[i]
Official KSeF documentation: The Ministry of Finance publishes the canonical KSeF specification, FA(2) XSD schemas, API reference and rollout calendar at the official podatki.gov.pl/ksef portal. Zunapro syncs the official FA(2) schema version into its KSeF connector on every Ministry update, so your structured invoices stay valid without manual XSD swaps.

2. February 1, 2026 — The Mandatory Date (Postponed From 2024)

The Original Plan and the Postponement

The original 2023 e-Invoice Act set July 1, 2024 as the universal go-live date for B2B and B2G. In January 2024 the Ministry of Finance commissioned an external audit of the production KSeF API after stress-testing revealed scalability and reliability gaps. On January 19, 2024 the Ministry announced the July 2024 deadline would be postponed; a fresh implementation calendar was published later in the year and locked in for 2026.

The 2026 Rollout Calendar

Phase 1 · Voluntary
2022 – Jan 2026
KSeF available to all Polish taxpayers on an opt-in basis. Production API live; FA(1) then FA(2) schemas supported. Used by early adopters and B2G suppliers.
Phase 2 · Large Taxpayers
Feb 1, 2026
Mandatory for any taxpayer whose 2025 sales exceeded PLN 200 million net of VAT. Covers corporates, large e-commerce sellers and any Polish branch of a multinational above the threshold.
Phase 3 · All VAT Payers
Apr 1, 2026
Mandatory for every other active Polish VAT taxpayer — SMEs, JDG sole proprietors, foreign companies registered for PL VAT. After this date all B2B invoices must flow through KSeF.

The Ministry of Finance has indicated a soft-enforcement transition window in Q1 2026 — sanctions for late or missing KSeF submissions will be applied with discretion until at least July 1, 2026. From the second half of 2026 the full penalty schedule under Ustawa o VAT applies without forbearance.

What Happens to Paper and PDF Invoices?

From the mandatory date a paper or PDF invoice is no longer a legally valid B2B invoice in Poland. Issuing one to a Polish business buyer in place of a structured KSeF invoice triggers the penalty regime in section 9. Carve-outs: B2C transactions (paragony continue via fiscal cash registers and optional e-Paragon; consumer-requested invoices still flow through KSeF); cross-border invoices to foreign VAT customers (standard EU VAT invoice rules under Council Directive 2006/112/EC apply; PDFs remain valid for export); and force-majeure offline mode (invoice issued outside KSeF during API outage, uploaded retroactively within a 1-working-day grace window).

February 2026 is closer than you think

The mandatory date is fixed. Connect your Polish marketplace flow to KSeF today via Zunapro — FA(2) XML, qualified-seal signing and Allegro / Amazon / Empik order ingestion in a single panel.

Activate KSeF Now →

3. FA(2) Schema — The XML Invoice Format

From FA(1) to FA(2): What Changed

The FA(2) schema is the second-generation structured-invoice XML format mandated from 2026. It supersedes FA(1) (voluntary phase 2022 to mid-2024) and is published as an XSD on ksef.podatki.gov.pl, validated server-side on every submission.

Headline FA(2) changes vs FA(1): stricter NIP validation (recipient NIP, 10 digits, validated in real time against Biała Lista and VIES); new marketplace fields (P_RodzajFaktury, P_KSeF, P_TerminPlatnosci become required for sales channels); hardened FaKorygujaca block (corrections reference the original 10-character KSeF identifier in NrFaKorygowanej); currency + exchange-rate (Waluta / KursWaluty validated against NBP reference rates from the working day before sale); and MPP split-payment flag (mandatory for invoices above PLN 15,000 in Annex 15 categories).

Anatomy of an FA(2) XML Invoice

A minimal FA(2) document carries a Naglowek (header with schema version), a Podmiot1 block (seller NIP, name, address with KodKraju=PL), a Podmiot2 block (buyer NIP and name), and a Fa block containing currency code (KodWaluty=PLN), issue date (P_1), invoice number (P_2), net / VAT / gross totals (P_13_1, P_14_1, P_15), invoice type (RodzajFaktury), and one or more FaWiersz line-item entries with product description (P_7), quantity (P_8B), unit price (P_9A), line net (P_11) and VAT rate (P_12).

Every named element is enforced by the FA(2) XSD. A malformed NIP, a missing WariantFormularza, or a P_12 VAT rate outside the official set (0, 5, 8, 23, zw, np, oo) causes the KSeF API to reject the document with a 4xx structured error response. Zunapro's KSeF connector builds, validates and submits FA(2) documents automatically from incoming marketplace orders — no manual XSD work for the seller.

FA(2) Versioning and Schema Updates

The Ministry of Finance versions the FA(2) schema in the format 1-0E, 1-1E, and so on. Schema changes are announced in the official Dziennik Urzedowy Ministra Finansow with at least a three-month implementation window. Production XSDs are hosted under crd.gov.pl/wzor/. Any integration platform serving KSeF traffic must track these versions: an FA(2) document built against an outdated schema is rejected even if the business data is correct.

4. NIP-VAT Recipient Identification

NIP — The Polish Taxpayer Identifier

NIP (Numer Identyfikacji Podatkowej) is Poland's 10-digit tax identification number, issued by the relevant tax office on company registration. Every active VAT taxpayer has a NIP; foreign companies registered for Polish VAT receive a NIP prefixed with their country code (e.g. PL5252344078) for intra-EU purposes. NIP is the primary identifier of the parties on an FA(2) invoice.

Real-Time Validation — Biała Lista and VIES

The KSeF API performs three online checks on every B2B invoice: Biała Lista (White List of VAT Taxpayers at wykaz-podatnikow.mf.gov.pl — NIP must be present and active on the invoice date), name match (Nazwa must reasonably match the Biała Lista record; material mismatches are a soft warning today, hard rejection from H2 2026), and VIES for intra-EU B2B where the recipient holds a foreign EU VAT number.

Marketplace Order → NIP Capture

Capturing the buyer's NIP at marketplace checkout: Allegro exposes NIP under buyer.company.taxId when the order is flagged as a company purchase. Amazon.pl Business buyers pass NIP via the SP-API BuyerInfo.BuyerTaxInfo object. Empik / Ceneo / Morele / Erli each expose a "Faktura na firme" flag and NIP field in their order JSON. For own-shop checkouts on Shopify / WooCommerce / PrestaShop / BigCommerce, add a "VAT invoice (NIP)" checkbox; Polish-market themes already ship the widget.

Zunapro ingests the buyer NIP from every marketplace order's webhook payload, validates it pre-flight against Biała Lista, and slots it into Podmiot2 → NIP of the outgoing FA(2). Mismatched or missing NIP triggers an in-panel alert before the invoice is submitted, so you fix data quality at the order level rather than chasing KSeF rejections.

!

NIP discipline tip: ~12% of marketplace B2B orders in 2025 carried a malformed or inactive NIP. From February 2026 KSeF rejects those invoices outright — meaning your revenue is delayed and your JPK_V7M reconciliation breaks. Push NIP validation upstream into the marketplace checkout. See Zunapro's NIP-validation flow →

5. PEF (Platforma Elektronicznego Fakturowania) for B2G

What PEF Is and Where It Sits

PEF — the Platforma Elektronicznego Fakturowania (Electronic Invoicing Platform) — is Poland's pre-existing B2G (business-to-government) e-invoicing platform, launched in 2019 and operated by the Ministry of Development and Technology (Ministerstwo Rozwoju i Technologii). PEF was built to implement EU Directive 2014/55/EU on electronic invoicing in public procurement: every Polish public-sector buyer (central government, municipalities, hospitals, schools) is required to receive structured e-invoices through PEF for public-procurement contracts.

PEF and KSeF: Coexistence Model

A common question in 2026 is whether PEF goes away once KSeF is mandatory. Answer: PEF stays operational. The two platforms coexist with a clear division of labour:

  • PEF — transport-and-routing layer for B2G invoices, including cross-border B2G via the EU's Peppol network. Optimised for the public-procurement workflow (order → invoice → payment → archival).
  • KSeF — tax-clearance and registration layer for all B2B and B2G invoices issued by Polish taxpayers. The Ministry of Finance is the recipient of the structured data.
  • Joint flow for B2G — a Polish company invoicing a Polish public buyer issues the invoice through PEF for delivery, and a parallel copy is registered in KSeF for VAT-reporting purposes. The Ministry of Finance has committed to building automatic PEF↔KSeF reconciliation so that sellers do not have to submit twice.

Who Has to Use PEF?

Every Polish public-sector contracting authority is obliged to receive PEF invoices. Suppliers (Polish and foreign) are obliged to issue PEF invoices when invoicing a public buyer for a procurement above the EU thresholds (currently EUR 140,000 for goods/services for central government, EUR 215,000 for sub-central). Below those thresholds, PEF use is optional but encouraged. PEF login uses ePUAP, qualified electronic signature, or a dedicated PEF token.

PEF Technical Stack

  • Transport — AS4 (Applicability Statement 4), the OASIS standard used by Peppol for secure document exchange.
  • Document format — primarily Peppol BIS Billing 3.0 (UBL 2.1 syntax) for cross-border, plus a national PEF schema for purely domestic Polish B2G invoices.
  • Identification — participant IDs in the Peppol address book; a Polish public buyer's Peppol ID is its NIP encoded under the 0190 scheme.
  • Operator — PEF is offered as a free Ministry-run platform plus, optionally, via accredited Peppol Access Points (Comarch, Sage, Edicom, etc.).
[i]
PEF official portal: The Ministry of Development and Technology runs the canonical PEF documentation at efaktura.gov.pl. Zunapro routes B2G invoices to PEF and the parallel KSeF copy automatically — sellers simply tag the buyer as a "public-sector entity" once.

6. Authentication via ePUAP + API

The Three Authentication Paths

KSeF supports three authentication mechanisms, each suited to a different operational pattern:

  1. Qualified electronic signature (kwalifikowany podpis elektroniczny) — a personal certificate issued by a Polish qualified trust-service provider (KIR Szafir, CenCert, Certum, EuroCert). Most common for accountants and individual taxpayers manually issuing low-volume invoices.
  2. Trusted Profile via ePUAP (Profil Zaufany) — the free, government-issued electronic identity tied to PESEL number and verified via online banking. Universally available to Polish individuals; the standard authentication path for SMEs.
  3. Qualified electronic seal (kwalifikowana pieczec elektroniczna) — a company-level certificate that lets an automated system sign FA(2) documents on behalf of the legal entity. The only viable path for marketplace and ERP integrations.

ePUAP — The Polish Trusted Profile

ePUAP (Elektroniczna Platforma Uslug Administracji Publicznej, Electronic Platform of Public Administration Services) is Poland's central e-government gateway, hosted at epuap.gov.pl and operated by the Centralny Osrodek Informatyki (COI) under the Ministry of Digital Affairs. The Profil Zaufany (Trusted Profile) issued through ePUAP is the cornerstone of Polish e-identity: it is used to file taxes, register a sole proprietorship via CEIDG, sign contracts with public administration — and, since 2022, to authenticate the bootstrap of KSeF integrations.

For marketplace sellers the typical flow is: the company representative (a board member or proxy with appropriate authorisation in KRS) logs into the KSeF portal once via ePUAP, generates an API token tied to a qualified seal, authorises Zunapro (or another integrator) as an "osoba uprawniona" (authorised person), and from then on all FA(2) submissions are automated.

The KSeF API at a Glance

The KSeF API is a JSON-over-HTTPS REST service. Headline endpoints: POST /api/online/Session/InitToken opens an authenticated session via token plus signed challenge; POST /api/online/Invoice/Send submits a Base64-encoded FA(2) XML document and returns a processing reference; GET /api/online/Invoice/Status/{ref} returns the 10-character KSeF identifier on success; POST /api/online/Query/Invoice/Sync downloads counterparty invoices; POST /api/online/Session/Terminate closes the session.

The API has both a sandbox (ksef-test.mf.gov.pl) and production (ksef.mf.gov.pl) environment. Rate limits are generous for normal workloads but spiky marketplace traffic should batch submissions.

Authorisation Model — Who Can Sign on Whose Behalf?

KSeF uses an "osoby uprawnione" model: every action against a NIP is taken by an authorised person whose rights are granted via the KSeF portal or API. Roles include Wlasciciel (owner, full rights), Faktury sprzedaz (issue outgoing invoices), Faktury zakup (download incoming invoices), and Nadawanie uprawnien (manage authorisation).

Marketplace sellers typically grant Zunapro the "Faktury sprzedaz" right scoped to their NIP, plus optionally "Faktury zakup" for inbound reconciliation. The seller retains the owner role and can revoke access at any time.

7. Integration With Major Polish Software (Comarch, Sage, Symfonia)

The Polish ERP / Accounting Software Landscape

Polish SMEs and corporates run a distinctive set of ERP and accounting platforms, most of which have shipped KSeF connectors during 2024 and 2025. Marketplace sellers will typically already have one of these systems in their stack — either as a primary ledger or as a downstream consumer of marketplace data. Below are the major players and how each handles KSeF.

Comarch ERP Optima & XL — Market Leader

Founded 1993 in Krakow · #1 PL ERP for SME & mid-market · native KSeF FA(2) module since 2024

100K+ PL installsComarch e-Sklep integration

Sage 50c / Sage Symfonia ERP

Symfonia rebrand 2021 · Strong in accounting bureaus · KSeF module via Sage Connect

60K+ PL installsMulti-tenant bureau version

Symfonia Finanse i Ksiegowosc

Polish accounting heritage since 1990s · Tight CIT / VAT integration · KSeF connector since Jan 2025

50K+ accountantsBureau-oriented

Insert — Subiekt GT / Subiekt nexo

Founded 1992 in Wroclaw · #1 PL SME invoicing tool · KSeF baked into Subiekt nexo

200K+ PL SMEsSferapro / mKsiegowosc

Enova365, Streamsoft Prestiz, Wapro Mag

Mid-market ERPs with strong manufacturing & trade footprint · KSeF modules shipped 2024

15K+ PL installsAPI-first architecture

iFirma / inFakt / Fakturownia / wFirma

Cloud-only invoicing & accounting for JDG / sp. z o.o. · KSeF on by default

500K+ PL JDGOnline bureaus

How Zunapro Slots Into the ERP Picture

Zunapro is not an ERP replacement — it is the marketplace orchestration layer between Allegro / Amazon.pl / Empik / Ceneo / Morele.net / Erli and your accounting backbone. The KSeF flow runs two ways: Zunapro-issued (Zunapro builds, signs and submits the FA(2), then pushes the invoice plus 10-character KSeF identifier back to your ERP) or ERP-issued (Zunapro streams orders into Comarch / Sage / Symfonia / Insert / Enova / iFirma, which issues the FA(2) through its own connector). Either configuration delivers full KSeF coverage.

Common Integration Pitfalls

  • Schema drift — ERPs sometimes lag the Ministry's FA(2) schema by a release. Cross-check the active XSD version before quarter-end.
  • NIP normalisation — marketplaces ship NIPs in many shapes (525-23-44-078, PL5252344078, plain digits). Normalise to 10 digits.
  • Bureau scaling — if a bureau manages KSeF for 50 NIPs, use the bulk authorisation flow in the KSeF portal, not the per-NIP web UI.
  • Sandbox bleed — never use the production qualified seal in the sandbox; issue a dedicated test seal for ksef-test.mf.gov.pl.

Already running Comarch, Sage or Symfonia?

Zunapro plugs marketplace orders into your existing accounting backbone and either issues KSeF directly or hands off to your ERP's connector. Allegro, Amazon.pl, Empik, Ceneo, Morele.net and Erli — all six flows clean and validated.

Connect My ERP →

8. Cross-Border E-Invoice — Peppol UBL via PEF

The Cross-Border Question

A Polish marketplace seller invoicing a German buyer, a Czech reseller invoicing a Polish public hospital, a Polish exporter selling B2B into France — all of these are not directly handled by KSeF. KSeF is a national clearance system; cross-border B2B invoices continue to follow the standard EU VAT invoice rules under Council Directive 2006/112/EC. PDFs and EDI are still acceptable for export — with one important exception: cross-border B2G.

Peppol — The EU's Cross-Border Backbone

Peppol (Pan-European Public Procurement Online) is the EU-wide, standards-based network for exchanging structured business documents, governed by the OpenPeppol Association. Every EU member state has integrated Peppol into its public-procurement infrastructure to implement Directive 2014/55/EU. Document format: UBL 2.1 (Universal Business Language) wrapped in the Peppol BIS Billing 3.0 specification. Transport: AS4 over a four-corner model (sender → sender's Access Point → receiver's Access Point → receiver).

How PEF Plugs Polish B2G Into Peppol

PEF (covered in section 5) is the Polish gateway into the Peppol network. For a Polish supplier invoicing a German public hospital: the supplier builds a Peppol BIS Billing 3.0 (UBL 2.1) invoice in its ERP, uploads it to PEF (the supplier-side Peppol Access Point), PEF routes via AS4 to the German receiver's Access Point, which delivers the invoice to the hospital's accounting system. PEF logs the transaction; a parallel copy is registered in KSeF for Polish VAT reporting.

Peppol BIS Billing 3.0 vs FA(2): Field Mapping

Peppol UBL and FA(2) are different XML grammars but the underlying invoice data is the same. Seller and buyer NIP map to cac:AccountingSupplierParty / AccountingCustomerParty / cbc:CompanyID; Fa/P_2 maps to cbc:ID; Fa/P_1 issue date maps to cbc:IssueDate; KodWaluty maps to cbc:DocumentCurrencyCode; FaWiersz/P_7 maps to cac:InvoiceLine/cac:Item/cbc:Name; P_12 VAT rate maps to cac:ClassifiedTaxCategory/cbc:Percent; Fa/P_15 gross total maps to cbc:PayableAmount.

Modern integration platforms (Zunapro included) keep the invoice data in a canonical internal model and emit FA(2) for KSeF and Peppol UBL for cross-border B2G from the same source. Sellers do not write XML by hand.

EU ViDA — What's Coming After KSeF

The EU VAT in the Digital Age (ViDA) package, agreed in late 2024, mandates structured e-invoicing and near-real-time Digital Reporting Requirements (DRR) for intra-EU B2B transactions by July 2030. ViDA's data model is explicitly Peppol-aligned. Poland's KSeF stack — FA(2) plus PEF/Peppol routing — is well placed to plug into ViDA with minimal architectural change; the Ministry of Finance has indicated that an FA(3) schema will absorb ViDA's required fields when the regulation enters force.

9. Penalties — Up to 100% of VAT Amount

Penalties for failing to use KSeF are set out in the amended Ustawa o VAT, specifically in the new articles introduced by the 2023 e-Invoice Act and detailed in the KSeF Ordinance. The Ministry of Finance has communicated a soft-enforcement Q1 2026 transition period; from July 1, 2026 the full penalty regime applies without forbearance.

The Penalty Schedule

Violation Penalty Floor
Issuing an invoice outside KSeF when KSeF is mandatory Up to 100% of the VAT amount on the invoice Minimum PLN 1,000 per invoice
Failing to submit an invoice to KSeF within the regulatory window after force-majeure offline issuance Up to 18.7% of the gross invoice amount Minimum PLN 1,000 per invoice
Issuing an invoice through KSeF with material errors (e.g. wrong NIP, missing MPP flag) Standard VAT-error penalties under Kodeks karny skarbowy (Fiscal Penal Code) Daily fines (kary dzienne) per Article 56 KKS
Failing to record an issued invoice in JPK_V7M Up to 20% of the under-reported tax Per Article 112b VAT Act

Worked Example — Marketplace Scenario

A Polish electronics seller ships 200 Allegro B2B orders per month, average gross PLN 1,500 with 23% VAT (~PLN 280 VAT per invoice). If KSeF is mandatory and the seller continues PDF-only: theoretical maximum penalty 200 × PLN 280 = PLN 56,000/month in VAT-amount fines; practical floor 200 × PLN 1,000 = PLN 200,000/month in minimum per-invoice fines (the higher applies); plus JPK_V7M discrepancies and loss of input-VAT deduction rights for buyers. The cost of implementing KSeF properly is a small fraction of the non-compliance exposure.

Defence Strategies and Mitigations

Offline-mode evidence — retain API response logs if an outage prevented KSeF submission and upload retroactively within the grace window (currently 1 working day). Czynny zal — the Polish self-disclosure procedure under Article 16 KKS can extinguish criminal-tax liability if the taxpayer voluntarily discloses non-compliance before KAS opens an audit. Audit trail — KSeF identifiers are the canonical proof of compliance; persist them alongside the order, as Zunapro does in the order detail.

!

Penalties are not theoretical. KAS has indicated it will use automated cross-matching between JPK_V7M and KSeF to identify non-compliant taxpayers from H2 2026. The largest enforcement risk falls on high-volume marketplace sellers issuing many low-value invoices — exactly the segment most likely to under-invest in KSeF integration. Get compliant before Q2 2026 →

10. E-Commerce + KSeF Compliance — The Marketplace Playbook

The Marketplace Reality

Polish marketplaces — Allegro (22M+ customers), Amazon.pl (4M+), Empik (1.5M+ Premium), Ceneo (19M+ visitors), Morele.net (8M+), Erli (4M+) — collectively process 30M+ orders per month in 2026, a non-trivial fraction flagged "faktura na firme". Manual KSeF issuance is impossible at marketplace volumes; the integration has to be automated.

The Five-Step Marketplace KSeF Flow

  1. Order ingestion — Zunapro receives the order webhook (incl. NIP if "faktura na firme" was selected).
  2. NIP validation — Biała Lista lookup; soft-fail with an in-panel alert if inactive.
  3. FA(2) build — canonical order data is rendered into FA(2) XML against the active XSD version.
  4. KSeF submission — the FA(2) is Base64-encoded, signed with the seller's qualified seal, and posted to the API; the 10-character KSeF identifier is captured by polling.
  5. Post-back — KSeF identifier is written back to the marketplace order, exposed to the buyer as a downloadable invoice, and pushed to the seller's ERP for JPK_V7M.

Marketplace-Specific Quirks

  • Allegro — buyer NIP arrives only after they switch the order to "Faktura VAT" mode; if toggled after shipment, the seller has 15 days to KSeF-register the invoice retroactively.
  • Amazon.pl — Amazon Business invoices are pre-issued by Amazon for Vendor Central; Seller Central / 3P sellers issue their own through their own taxpayer profile.
  • Empik / Ceneo / Morele / Erli — each marketplace exposes a similar "Faktura na firme" flag and NIP field; KSeF tagging must flow back to the order detail so the buyer sees the invoice in their account. Ceneo CPC keeps invoicing on the seller's own e-shop, where KSeF logic lives in the checkout integration.

Cross-Border Marketplace Orders

A Polish seller shipping an Allegro order to a German consumer is B2C distance sale (PDFs valid, OSS handles VAT). A Polish seller shipping Pan-EU FBA to a German business buyer is intra-EU B2B (standard EU VAT rules, not KSeF). The reverse case — a foreign seller invoicing a Polish business via Allegro — does trigger KSeF if the foreign seller is registered for Polish VAT.

Reporting and Reconciliation

Every KSeF invoice is automatically discoverable via JPK_V7M monthly reporting, but sellers still need order-to-invoice-to-KSeF-identifier traceability for audits and buyer complaints. Zunapro's compliance ledger persists, per marketplace order: marketplace order ID, full FA(2) XML payload, KSeF reference number, 10-character KSeF identifier and timestamp, buyer NIP and Biała Lista lookup result, JPK_V7M line-item reference, and any correction-invoice chain.

The Compliance Stack at a Glance

Layer Standard / System Role
Domestic B2B invoiceKSeF (FA(2) XML)Mandatory clearance, 10-char ID, archive
Domestic B2G invoicePEF + KSeF parallelDelivery via PEF, registration in KSeF
Cross-border B2GPeppol BIS Billing 3.0 (UBL 2.1)EU-wide public-sector e-invoicing
Cross-border B2BEU VAT rules (Dir. 2006/112/EC)Standard EU invoicing; PDFs valid
B2C receiptFiscal cash register + e-ParagonConsumer receipts; KSeF on request
AuthenticationePUAP / qualified signature / sealIdentity for KSeF and PEF
VAT reportingJPK_V7M (SAF-T)Monthly file; fed by KSeF

Make your marketplace stack KSeF-ready in 10 minutes

Allegro + Amazon.pl + Empik + Ceneo + Morele.net + Erli → FA(2) XML → KSeF, signed with your qualified seal, archived alongside the order. One panel, one onboarding wizard, every B2B invoice covered before February 2026.

Activate KSeF for My Shop →

Ustawa o VAT — The Polish VAT Act

The Ustawa z dnia 11 marca 2004 r. o podatku od towarow i uslug (Ustawa o VAT) is the primary statute governing VAT in Poland. KSeF obligations were inserted into the Act by the 2023 e-Invoice Act (Ustawa z dnia 16 czerwca 2023 r. o zmianie ustawy o podatku od towarow i uslug oraz niektorych innych ustaw, Dz.U. 2023 poz. 1598). The relevant articles cover the definition of a structured invoice (faktura ustrukturyzowana), the obligation to use KSeF, the offline mode in cases of API outage, and the penalty schedule.

The KSeF Ordinance

Detailed technical rules — FA(2) schema version, API authentication, the offline-mode grace window, the bulk authorisation flow — are set out in the Ministry of Finance's KSeF Ordinance (Rozporzadzenie Ministra Finansow w sprawie korzystania z Krajowego Systemu e-Faktur), published in the Dziennik Urzedowy Ministra Finansow and updated periodically.

  • Kodeks karny skarbowy (KKS) — Articles 56 and 62 cover invoice offences and the daily-fine (kary dzienne) regime.
  • Ordynacja podatkowa & Article 16 KKS — "czynny zal" (active regret) self-disclosure extinguishes liability when used correctly.
  • JPK Ordinance — sets the JPK_V7M SAF-T file structure to which KSeF feeds.
  • Ustawa o KAS — defines KAS's enforcement role and cross-matching capabilities.
  • Council Directive 2006/112/EC — EU VAT Directive; underlying invoice content rules.
  • Directive 2014/55/EU — mandatory e-invoicing in public procurement (basis for PEF).
  • EU ViDA package — agreed 2024; mandatory structured e-invoicing for intra-EU B2B by 2030; KSeF/PEF aligned.

How to Get KSeF-Ready — 2026 Step-by-Step

1. Confirm Your Obligation Date

  • 2025 sales above PLN 200M net of VAT — mandatory from February 1, 2026.
  • 2025 sales at or below PLN 200M net of VAT — mandatory from April 1, 2026.
  • Voluntary opt-in available immediately for any active VAT payer.

2. Obtain the Authentication Stack

  • Issue (or renew) a qualified electronic seal for the legal entity via KIR Szafir, Certum, CenCert or EuroCert.
  • Ensure at least one board member holds a working Profil Zaufany via ePUAP for the bootstrap authentication.
  • Identify the natural person who will hold the KSeF "wlasciciel" role and the persons who will be authorised as "Faktury sprzedaz" / "Faktury zakup" representatives.

3. Register in the KSeF Portal

  1. Log into ksef.podatki.gov.pl with the ePUAP Trusted Profile.
  2. Confirm the company's NIP and assign authorisation roles to your accountants / integrators / ERP system.
  3. Generate a KSeF API token, scoped to "Faktury sprzedaz" if you only need outbound issuance, or "Faktury zakup" plus "Faktury sprzedaz" for full bidirectional flow.
  4. Store the token in your platform's secrets vault — never in source control.

4. Configure FA(2) Generation

  1. Map your product catalog's VAT rates against the FA(2) allowed set (0, 5, 8, 23, zw, np, oo).
  2. Ensure your invoicing engine emits all FA(2)-required fields including WariantFormularza, KodWaluty and Adres/KodKraju.
  3. Validate sample documents against the official XSD before live submission.
  4. Run end-to-end test cases on ksef-test.mf.gov.pl: standard B2B invoice, correction invoice (faktura korygujaca), reverse-charge invoice (mechanizm odwrotnego obciazenia), MPP-flagged invoice.

5. Plug Marketplaces Into KSeF via Zunapro

  1. Sign in to Zunapro and open the Poland Accounting module.
  2. Connect your KSeF role — paste the API token, upload the qualified seal certificate.
  3. Connect marketplaces — Allegro, Amazon.pl, Empik, Ceneo, Morele.net, Erli — via the standard marketplace tiles.
  4. Map order → FA(2) — one-click mapping for the standard schema; advanced users tweak per-marketplace overrides.
  5. Go live — first sync issues retro-active invoices for any pending B2B orders, then live invoices stream as orders arrive.

February 2026 is fixed — your KSeF integration cannot slip

Zunapro covers FA(2) XML generation, qualified-seal signing, Biała Lista NIP lookup, KSeF API submission, correction invoices, JPK_V7M feed, ERP post-back — all six Polish marketplaces in one panel. 10-minute onboarding, no demo required.

PL Activate KSeF Compliance →

KSeF FAQ — 2026 Edition

When does KSeF become mandatory in Poland?

KSeF (Krajowy System e-Faktur) becomes mandatory on February 1, 2026 for large taxpayers with 2025 sales above the PLN 200 million net-of-VAT threshold, and on April 1, 2026 for all other Polish VAT-registered businesses.

The original July 2024 deadline was postponed after a Ministry of Finance commissioned audit in early 2024 found scalability and reliability gaps in the production KSeF API. The 2026 calendar is now considered final; the Ministry has committed to a soft-enforcement transition window in Q1 2026 with full sanctions from H2 2026.

What is FA(2) and how does it differ from FA(1)?

FA(2) is the second-generation XML schema for Polish structured invoices, published by the Ministry of Finance in 2024. It supersedes the FA(1) schema used during KSeF's voluntary phase. FA(2) adds stricter NIP validation, hardened correction-invoice (faktura korygujaca) references, mandatory marketplace-relevant fields, and currency / NBP-exchange-rate validation.

Every invoice must validate against the official FA(2) XSD hosted at crd.gov.pl/wzor/ before submission. An FA(1) document submitted in 2026 is rejected by the KSeF API.

How does KSeF authentication via ePUAP work?

KSeF supports three authentication paths: qualified electronic signature, Trusted Profile via ePUAP (Profil Zaufany), and KSeF API token signed with a qualified seal. For automated marketplace invoicing, the token-plus-seal path is the only viable mechanism.

The typical onboarding flow: a board member or proxy logs into ksef.podatki.gov.pl via ePUAP, generates the API token, authorises the integrator (Zunapro, ERP, accounting bureau) as an "osoba uprawniona" with appropriate scope, and from then on all FA(2) submissions are signed automatically by the qualified seal.

What are the penalties for failing to use KSeF after February 2026?

Under the amended Ustawa o VAT (Polish VAT Act), failure to use KSeF when required can trigger an administrative penalty of up to 100% of the VAT amount on the invoice, with a floor of PLN 1,000 per invoice. Failing to upload a force-majeure offline invoice within the regulatory window incurs penalties of up to 18.7% of the gross invoice amount.

The Ministry of Finance has indicated a soft-enforcement Q1 2026 transition window; from July 2026 the full schedule applies. KAS will use automated cross-matching between JPK_V7M and KSeF to identify non-compliant taxpayers.

Does KSeF apply to B2C invoices too?

Strictly, no. B2C is handled via fiscal cash registers (paragony) and the optional e-Paragon platform, not KSeF. However, when a consumer requests a full VAT invoice for a marketplace order — which is common in Poland under the 90-day rule — the invoice must be issued via KSeF if the seller is a KSeF-obligated taxpayer.

The practical implication for e-commerce: even pure-B2C sellers need a working KSeF integration for the subset of orders that get a buyer-requested VAT invoice.

How does PEF differ from KSeF?

PEF (Platforma Elektronicznego Fakturowania) is Poland's pre-existing B2G e-invoicing platform, operated by the Ministry of Development and Technology and connected to the EU's Peppol network. It implements EU Directive 2014/55/EU on e-invoicing in public procurement.

KSeF is the broader national e-invoice clearance system covering both B2B and B2G traffic from 2026, operated by the Ministry of Finance. The two coexist: B2G invoices route through PEF for delivery and Peppol cross-border, with a parallel copy registered in KSeF for VAT reporting.

Which Polish accounting software supports KSeF out of the box?

Every major Polish ERP and accounting platform shipped a native KSeF connector during 2024 and 2025: Comarch ERP Optima and XL, Sage Symfonia (Sage 50c), Symfonia FK, Insert Subiekt GT and nexo, Enova365, Streamsoft Prestiz, Wapro Mag, plus the cloud bureaus iFirma, inFakt, Fakturownia and wFirma.

Marketplace sellers can either run KSeF directly inside their ERP or delegate it to Zunapro, which auto-issues structured invoices from incoming Allegro / Amazon.pl / Empik / Ceneo / Morele.net / Erli orders and posts the resulting KSeF identifier back to the ERP.

Can cross-border e-invoices be sent via KSeF?

Cross-border B2B invoices to non-Polish EU customers are not submitted through KSeF — they follow standard EU VAT invoice rules under Council Directive 2006/112/EC. PDFs and EDI remain valid for export.

Cross-border B2G invoices use Peppol BIS Billing 3.0 (UBL 2.1) through PEF, which acts as Poland's Peppol Access Point. PEF auto-registers a parallel KSeF copy for Polish VAT reporting. The EU ViDA package will gradually align all intra-EU B2B with structured e-invoicing by 2030; Poland's stack is already on that path.

How do marketplace sellers handle KSeF for Allegro and Amazon orders?

Every marketplace order to a Polish business customer (NIP supplied at checkout) must trigger an FA(2) invoice in KSeF within the regulatory window. The integration: marketplace order webhook → NIP validation against Biała Lista → FA(2) XML build → signed submission to KSeF API → 10-character KSeF identifier stored against the order.

Allegro and Amazon both expose the buyer's NIP via their order APIs (Allegro under buyer.company.taxId, Amazon SP-API under BuyerInfo.BuyerTaxInfo). Zunapro automates the end-to-end flow for all six Polish marketplaces in one panel.

Are corrections (faktury korygujace) issued via KSeF?

Yes — both correction invoices (faktura korygujaca) and duplicates (duplikat) flow through KSeF using the FA(2) FaKorygujaca block, which references the original invoice's 10-character KSeF identifier in NrFaKorygowanej.

Critically, KSeF removes the long-standing requirement to obtain a buyer confirmation receipt (potwierdzenie odbioru korekty) for input-VAT reduction. The KSeF timestamp on the correction invoice is the legal proof of delivery, simplifying period-end VAT adjustments enormously.

How is NIP-VAT recipient identification enforced?

FA(2) requires the buyer's 10-digit Polish NIP on every B2B invoice, validated in real time against the Ministry of Finance's Biała Lista (White List of VAT taxpayers) and, for intra-EU sales, against VIES. The KSeF API rejects an invoice if the NIP is malformed, inactive on the registration date, or the registered name materially mismatches.

Marketplace checkouts must therefore enforce NIP capture for B2B orders. Zunapro pulls the NIP from each marketplace's order webhook, normalises the format, runs the Biała Lista lookup pre-flight, and surfaces in-panel alerts before KSeF rejects.

Does KSeF replace JPK_VAT (JPK_V7M) reporting?

No. JPK_V7M (the Standard Audit File for VAT) remains the monthly VAT reporting standard administered by KAS. KSeF feeds JPK_V7M by registering every invoice with a timestamp and a 10-character KSeF identifier, which simplifies reconciliation but does not replace the monthly file.

The Ministry of Finance has indicated a future merger of the two flows, but for the 2026 mandatory go-live sellers must continue filing JPK_V7M every month even with full KSeF coverage. Zunapro exports a JPK_V7M-ready feed alongside its KSeF integration.

What is the FA(2) offline mode and when can I use it?

KSeF supports a force-majeure offline mode: if the KSeF API is unavailable, the seller can issue the FA(2) invoice outside the system, mark it with an "offline" flag, and upload it retroactively once the API recovers. The grace window is currently one working day from issuance.

Offline mode is intended for genuine outages (Ministry-confirmed incidents on the status page) and not for routine integration laziness. Routine offline use is treated as non-compliance and subject to penalties under Ustawa o VAT.

How long does KSeF integration take with Zunapro?

Roughly 10 minutes for the Zunapro side of the integration: paste your KSeF API token, upload the qualified seal certificate, connect Allegro / Amazon.pl / Empik / Ceneo / Morele.net / Erli, and confirm the FA(2) field mapping for your product catalog.

The Polish-side prerequisites — qualified seal issuance (1–3 working days via KIR/Certum/Cencert/EuroCert), KSeF role assignment via ePUAP, sandbox testing — typically take an additional week. Most sellers complete end-to-end KSeF readiness in 7–10 calendar days.

Make your Polish e-commerce KSeF-compliant before February 2026

Allegro · Amazon.pl · Empik · Ceneo · Morele.net · Erli — one catalog, one inventory, FA(2) XML + KSeF + PEF + Peppol cross-border in a single panel. No demo required, no long contracts. Get compliant today.

PL Activate KSeF Now →
Delen:

Hulp nodig hierbij?

Bijbehorende dienst: E-Commerce

Neem contact op

Krijg gratis consult voor uw e-commerceproject.

Chat op WhatsApp