How to issue a collective correcting invoice in KSeF?

A collective correcting invoice in KSeF must carry the details of every corrected original invoice inside the structured XML file. The FA(3) schema does not support loose spreadsheet attachments. Read how to handle bulk volume rebates and populate the required elements correctly.

7 min read 12 views
How to issue a collective correcting invoice in KSeF?

Your Polish entity grants a customer a 3% volume rebate for the second quarter. That touches 148 invoices. Until 31 January 2026, one credit note plus a spreadsheet listing the original invoice numbers was enough. That shortcut is gone.

In KSeF, a collective correcting invoice has to carry each corrected invoice's details directly in the structured document, in the repeating DaneFaKorygowanej element. The FA(3) schema has no slot for a loose list of invoices attached alongside.

Here is when a collective correction is allowed, how to populate the structure the way the Polish Ministry of Finance recommends, and the five places where finance teams most often create a mess they then have to fix with another correction.

When one correction may cover many invoices

Polish VAT law explicitly regulates collective corrections in one scenario only. Under Article 106j(3), where a taxpayer grants a discount or price reduction covering supplies to a single customer in a given period, the correcting invoice must additionally indicate that period, and where the correction covers all supplies in that period, it may omit the name or type of goods and services.

That distinction has practical consequences:

  • Correction of all supplies to one customer in a period: simplified version, no line items required.

  • Correction of some supplies to one customer in a period: you must additionally give the name or type of goods or services in field P_7 inside FaWiersz.

  • Collective correction for a reason other than a discount or price reduction (a bulk VAT rate fix, for instance): still permitted, but it must carry the complete set of elements from Article 106j(2), with no simplifications.

Note the phrase a single customer. One collective correction cannot span invoices issued to different legal entities. A group with five Polish subsidiaries means five corrections.

What changed on 1 February 2026

Three things at once.

First, a correcting invoice issued against an invoice that went through KSeF must reference that original's KSeF number. On a collective correction, that means as many KSeF numbers as there are invoices in scope.

Second, noty korygujące (buyer-issued corrective notes) were abolished. The customer can no longer fix a minor detail on their side. Every change now routes back to the seller as a correcting invoice.

Third, the timing of downward corrections changed. The seller reduces the taxable base in the period the correction was issued in KSeF, with no need to collect documentation confirming that terms were agreed with the buyer. The buyer reduces input VAT in the period of receipt, and a structured invoice counts as received on the day KSeF assigns its identification number. For a 148-invoice rebate, that is good news: the whole operation lands in one settlement period instead of scattering across several.

The Ministry's detailed guidance sits in KSeF 2.0 Handbook, Part II, sections 2.13.6 and 2.13.7. It is Polish-language only.

How to populate the FA(3) structure

For the most common case, a rebate covering all supplies to one customer in a period, the Ministry sets out this layout:

Field or element What it holds RodzajFaktury KOR P_13_1, P_14_1, P_14_1W and so on correction amounts for taxable base and output VAT, negative, split by rate P_15 the correction (difference) of total amounts due from the corrected invoices DaneFaKorygowanej each original invoice separately, up to 50,000 occurrences OkresFaKorygowanej the period the discount relates to; a text field accepting a date range or a description PrzyczynaKorekty optional, e.g. "3% rebate for reaching the purchase threshold in Q2 2026" TypKorekty optional: 1, 2 or 3 FaWiersz omitted when the correction covers all supplies

The DaneFaKorygowanej element itself holds the original's issue date, its number, and then a choice: either the NrKSeF flag set to 1 together with NrKSeFFaKorygowanej, or the NrKSeFN flag set to 1 for an invoice issued outside KSeF.

That choice is useful in practice. One collective correction can cover invoices issued in KSeF and invoices issued before the mandate on paper or as PDFs, side by side. You just fill the right variant per entry.

In minus and in plus are not symmetrical

A collective correction can go either direction. The simplifications under Article 106j(3), meaning the option to omit the goods or services description, apply only to downward corrections. A price increase bundled into one collective correction needs the full data set.

Worked example: a quarterly rebate across 148 invoices

A 3% rebate on PLN 412,000 net turnover for 1 April to 30 June 2026:

RodzajFaktury      = KOR
P_13_1             = -12360.00
P_14_1             = -2842.80
P_15               = -15202.80
OkresFaKorygowanej = 2026-04-01 to 2026-06-30
PrzyczynaKorekty   = 3% turnover rebate, Q2 2026
DaneFaKorygowanej  x 148
FaWiersz           (omitted)

Five places where it goes wrong

1. Several customers on one correction. A collective correction under Article 106j(3) covers one recipient. Splitting by legal entity is not optional.

2. Referencing an earlier correction instead of the original. DaneFaKorygowanej always carries the original invoice's details. Amounts, by contrast, are calculated against the state that already reflects earlier corrections. Those two rules are easy to swap by accident.

3. FaWiersz filled the wrong way round. Line items are omitted when correcting all supplies and mandatory (P_7) when correcting only some. Teams get this backwards in both directions.

4. OkresFaKorygowanej used everywhere. The field applies only to corrections under Article 106j(3). Putting a period there on an ordinary arithmetic fix misrepresents what the document is.

5. Expecting KSeF to check the maths. It does not. The system validates the file against the XSD schema and checks the sender's permissions. It does not verify sums. A collective correction with a mis-added rebate will be accepted, receive a KSeF number, and from then on can only be fixed by yet another correction.

In Biurko, every DaneFaKorygowanej section on an invoice pulled from KSeF is stored as its own link to the original, matched either by KSeF number or by invoice number narrowed to the document's direction and the seller's NIP (Polish tax identification number). Where the match is ambiguous, the document is flagged for review rather than silently attached to some other invoice that happens to share a number like "1/2026". Issuing collective corrections on the sales side is in development.

Checklist before you send

  1. Confirm every original invoice relates to one customer and one period.

  2. Decide whether you are correcting all supplies in the period or only some. That drives FaWiersz.

  3. Collect the KSeF numbers of the originals; prepare the NrKSeFN flag for pre-mandate invoices.

  4. Calculate correction amounts against the post-earlier-corrections state, not the original invoice.

  5. Fill OkresFaKorygowanej in a format your customer's accountant can read.

  6. Verify the sums before sending, because KSeF will not.

  7. Store the UPO (official receipt confirmation) and the correction's KSeF number for later corrections and for JPK_V7 reporting.

Summary

A collective correction in KSeF is no harder legally than it was before. It is considerably harder operationally, because every original's details now belong in the XML file and the KSeF numbers have to be at hand. With a dozen invoices that is a matter of patience. With a hundred and fifty it is a matter of whether your system holds the full set of links.

Biurko tracks correction-to-original links on both sides of the flow and surfaces the ones it cannot match automatically. Create a free account at biurko.io and test it against your own invoices.

FAQ

How many invoices can one collective correction cover in KSeF? The DaneFaKorygowanej element can repeat up to 50,000 times in the FA(3) structure. In practice the binding constraint is the maximum XML file size accepted by KSeF rather than the element count.

Can a collective correction cover invoices issued before the KSeF mandate? Yes. A single correction can reference both invoices with KSeF numbers and invoices issued outside the system. For the latter you set the NrKSeFN flag to 1 instead of supplying a KSeF number.

Can I attach a list of invoices instead of itemising them? The FA(3) structure requires each corrected invoice's details inside the DaneFaKorygowanej element. The former practice of attaching a separate schedule has no equivalent in the structure.

Is the reason for correction mandatory on a collective correction? No. PrzyczynaKorekty is optional. It is worth filling in anyway, because your customer's accounting team then knows immediately what the document covers, for example "3% rebate for Q2 2026".

In which period is a downward collective correction recognised? The seller recognises it in the period the correction was issued in KSeF. The buyer recognises it in the period of receipt, and a structured invoice counts as received on the day KSeF assigns its identification number.


Internal links (placeholder): [Correcting invoices in KSeF: the basics] | [Correcting to zero and a wrong buyer NIP] | [KSeF number in JPK_V7]

Tags

#KSeF
Share

Previous article

How to fix a wrong buyer VAT ID on a KSeF invoice?

Stay in the Loop

Get notified when we publish new articles — no newsletter, unsubscribe anytime.

We respect your privacy. Unsubscribe at any time.

Cookies

Essential ones keep the service running. The rest only with your consent. Cookie Policy