Overview
Readiness for KSeF means having your party data, invoice fields, authentication method and a tested flow in place before your obligation applies. Work through a short checklist — buyer and seller NIPs, FA(3) field mapping, token authentication and a TEST run — so the switch is mechanical rather than a scramble.
Check your obligation date first
KSeF (Krajowy System e-Faktur) is Poland's national e-invoicing platform. The rollout is phased, so do not assume a single universal date for everyone. Confirm the date that applies to your business with a Polish accountant or the Ministry of Finance's current announcements. Once your obligation applies, B2B invoices must be issued as structured FA(3) XML with a KSeF number and a UPO.
The readiness checklist
Work through these before you send your first production invoice:
- Party data. Have accurate seller and buyer NIPs ready, plus the names and addresses you will map onto the schema. A wrong NIP is the kind of error that fails before the invoice is useful.
- Invoice fields. Map your data to the fields you must fill: P_1 (issue date), P_2 (invoice number) and P_15 (total amount due, VAT included) among them. P_1 and P_2 sit in the Fa element, not the form header.
- VAT rates. Confirm which rates apply to what you sell. Notaly's generator handles 23%, 8%, 5% and 0%; anything outside that, or any special marking, should be confirmed with your accountant before you rely on it.
- Authentication. Decide how you will authenticate. With Notaly you provide a KSeF token in Connect KSeF for production; XAdES with a qualified signature or seal is the alternative path you would only need if you built the integration yourself.
- Numbering. Set a sequential, non-repeating invoice numbering scheme so P_2 is always unique.
- Test the whole flow. Use the TEST environment for a run — Notaly's sandbox includes three free test invoices — and confirm you can submit, get an acceptance with a UPO, and receive the webhook.
What "done" looks like
You are ready when you can issue a test invoice end to end and read the result: the document validates, KSeF accepts it, you receive the KSeF number and UPO, and your systems record them. Until then, treat the integration as a draft — cheap to fix in TEST, expensive to fix in production.
FAQ
When does my KSeF obligation start? Confirm your own date with a Polish accountant or the Ministry of Finance. Once your obligation applies, B2B invoices must be issued as structured FA(3) XML with a KSeF number and a UPO.
Which VAT rates does Notaly support? The VAT rates the generator handles: 23%, 8%, 5% and 0%. Other markings should be confirmed with your accountant.
Disclaimer
Notaly is not a tax, accounting or legal advisor. This article is general information, not tax advice, and may be outdated. You are responsible for your own VAT compliance; confirm with a qualified accountant where required.
Sources
Source: www.podatki.gov.pl