Guide
Markdown exportE-Invoicing in Poland
Key formats, routing options, and a practical checklist for sending compliant e-invoices in Poland.
What matters in practice
This Poland guide explains KSeF submission, structured XML, NIP validation, and the status tracking steps that matter most for a smoother first submission.
Common e-invoice formats
Use these points as the practical checks for this section.
- Structured XML (KSeF)
Routing & delivery
Common identifiers
Use these points as the practical checks for this section.
- NIP
- VAT ID
Mandate & scope
Poland’s e-invoicing roadmap centers around KSeF, a platform model with structured XML requirements.
Country-specific operating notes for Poland
Use these points as the practical checks for this section.
- Model KSeF statuses as legal workflow states, not only delivery logs; downstream accounting should wait for the expected platform outcome.
- Keep authentication, token ownership, and provider delegation separate from XML generation so operational changes do not affect invoice mapping.
- Store platform IDs and receipt metadata with the invoice record because they are needed for reconciliation and dispute handling.
- JPK_FA: monthly e-invoice register file required from VAT-registered entities — separate from KSeF.
- White List (Wykaz podatników VAT): public registry of valid Polish VAT-IDs; payments to non-listed accounts can lose VAT-deduction rights.
Quick checklist
Use these points as the practical checks for this section.
- Routing: KSeF acts as the central platform for submission and status tracking.
- Identifiers: NIP is a key identifier; ensure it is correct and consistently used.
- Preparation: plan for platform acknowledgements and lifecycle statuses.
- KSeF (Krajowy System e-Faktur): national clearance platform mandatory for B2B from February 2026 (large taxpayers) and April 2026 (other taxpayers) — final phasing per Ministry of Finance announcements.
- FA(2) schema (current): the XML schema mandated by KSeF; FA(1) was the legacy/voluntary-phase format.
- UPO (Urzędowe Poświadczenie Odbioru): the official acceptance receipt issued by KSeF on successful submission.
- Voluntary phase: KSeF was open for voluntary submission from January 2022 until the mandate took effect.
How to send (practical steps)
Follow this sequence as the practical checklist for this section.
- Confirm the KSeF submission method (portal/API/provider) and required authentication.
- Collect correct buyer/seller identifiers (especially NIP) and master data.
- Generate the required structured XML and validate against platform rules.
- Submit, monitor status updates, and store receipts for audit trails.
Validation & compliance
Use these points as the practical checks for this section.
- Treat platform responses and statuses as part of the invoicing process.
- Ensure tax identifiers and party data are complete and consistent.
- Validate totals and VAT breakdown to prevent rejections.
Common pitfalls
Use these points as the practical checks for this section.
- Incorrect NIP values or inconsistent use across documents.
- Missing platform-required metadata/identifiers.
- Ignoring platform status feedback and retry logic.
- Sending an FA(1) invoice in 2026 — FA(2) is the mandated schema.
- Not handling the UPO acknowledgment correctly — without it, the invoice is not officially issued in Poland.
Frequently asked questions
What is the main invoice channel in Poland?
KSeF is the central platform for structured invoice submission and status tracking in Poland.
What should I check before sending to KSeF?
Verify NIP, party data, XML structure, and platform-required metadata before you submit the invoice.