KSeF · Quick orientation

Does Poland's KSeF apply to your business?

A 5-minute orientation for foreign founders, cross-border sellers and Polish freelancers with international clients. No 4000-word compliance manual — just the decision tree, the currency rule, and the scenarios you'll actually meet.

Section 1 · The decision tree

Does the KSeF mandate apply to me?

Run through these questions in order. The first “yes” tells you what to do.

NO
Do I have a Polish tax ID (NIP)?

If you have no Polish NIP, KSeF does NOT apply to you. Issue standard PDF invoices. EU B2B sales use reverse charge; non-EU B2B is outside Polish VAT scope. You can stop reading here.

YES
Do I have a Polish NIP AND I'm a Polish VAT taxpayer?

KSeF is MANDATORY for every B2B invoice you issue, including invoices in EUR/USD/GBP to non-Polish buyers. The buyer doesn't have to be Polish — the seller does.

NO
Do I use OSS (One-Stop Shop) for B2C e-commerce?

OSS sales are reported through the OSS portal in your home country, not through KSeF. KSeF is a B2B mechanism only.

INFO
My customers ask me to send via KSeF but I have no NIP — what do I do?

You're not legally required to. Send a standard PDF invoice. For EU B2B, mark it as reverse charge and include your home VAT number. Most Polish accounting departments understand this.

Section 2 · Background

KSeF in 60 seconds

KSeF (Krajowy System e-Faktur) is the Polish Ministry of Finance's centralized e-invoicing platform — live since February 1, 2026. Think of it as Poland's equivalent of Italy's SDI or Spain's TicketBAI. The EU's upcoming ViDA directive will eventually harmonize all of these, but until then each country runs its own.

FA(3) XML

The structured invoice format every Polish taxpayer must submit. Your software generates it from your line items — you never write XML by hand.

KSeF ID

The unique identifier the Ministry assigns to every accepted invoice. Replaces the PDF as the legal source of truth.

UPO

"Urzędowe Poświadczenie Odbioru" — the official receipt confirming the Ministry accepted your invoice. Has the legal weight of a registered letter.

Section 3 · Foreign currency

If you invoice in EUR / USD / GBP from Poland

Polish law requires that the VAT amount on every invoice is shown in PLN — even if the invoice itself is in a foreign currency. The conversion uses the National Bank of Poland (NBP) reference rate from the day BEFORE the tax obligation date.

Legal basis
Polish VAT Act, art. 31a §1
Sets the NBP day-before rule for foreign-currency invoices. Combined with art. 19a which defines when the tax obligation arises (supply date or invoice date, whichever is earlier).

Example: you finish work Friday Nov 28 and invoice on Monday Dec 1. Tax obligation = Nov 28 (supply day). FX rate = NBP USD/PLN average from Nov 27. Fakturium fetches the right rate automatically when you pick the currency — you don't need to visit nbp.pl.

Section 4 · Common scenarios

Three foreign-business playbooks

Foreign founder running a Polish sp. z o.o. (LLC)
  1. Your sp. z o.o. has a Polish NIP — KSeF is mandatory for every B2B invoice you issue.
  2. Set up KSeF authentication once: qualified electronic signature (~200 zł/year, works for EU residents without PESEL) is the fastest path.
  3. Issue invoices through Fakturium (or another KSeF-integrated system) — NEVER from Word/Excel templates.
  4. Forward incoming cost invoices (Google Ads, AWS, contractors) to your Polish accountant monthly so they can claim input VAT.
Full founder's playbook →
Polish freelancer billing US / EU clients
  1. You have a Polish NIP (JDG) — KSeF applies to ALL invoices you issue, including USD/EUR ones to foreign clients.
  2. For EU B2B clients with valid VAT numbers: 0% VAT with reverse charge (art. 28b). Validate the buyer's VAT on VIES first.
  3. For non-EU B2B clients (US, UK): outside Polish VAT scope. Invoice with no VAT line, but still send to KSeF.
  4. Platforms (Upwork, Toptal): invoice goes to the platform's legal entity, not the end client.
Full freelancer's playbook →
Foreign company selling to Polish customers
  1. If you have NO Polish NIP, KSeF doesn't apply. Standard PDF invoice with reverse charge for EU B2B is enough.
  2. Polish buyer demanding KSeF? Politely refuse — you're not a Polish taxpayer. Most accounting departments accept this.
  3. If you sell at high volume (5+ invoices/month to PL), consider voluntary registration — it speeds up payments because Polish ERPs auto-import KSeF invoices.
  4. Voluntary registration is a 3-6 month process. Talk to a tax advisor before committing.
Full cross-border guide →
Section 5 · What Fakturium handles for you

End-to-end flow in under 30 seconds

  1. 1Type the buyer's NIP — Fakturium auto-fills name and address from VIES + Polish business registry.
  2. 2Add line items in PLN, EUR, USD, GBP or any currency. NBP rate fetched automatically.
  3. 3Click "Issue + send to KSeF" — system generates FA(3) XML, signs, submits to Ministry, receives KSeF ID.
  4. 4PDF generated (bilingual if needed) and emailed to the buyer with a clickable public link.
  5. 5JPK_FA monthly export ready in one click for your accountant.

Polish reader looking for the full KSeF compendium? Our dashboard has 15 deep-dive tabs (rejection codes, JPK_FA, certificates, offline mode). Polish KSeF help →