Year-end balance confirmations: the window opens on 1 October, but most offices start in January
The Window Opened on Thursday
From 1 October, any company that keeps full accounting books can start the year-end inventory of its receivables by balance confirmation. The window closes on 15 January. Most accounting offices I talk to start in the second half of December or in January. That lands the slowest part of year-end, the part that's mostly chasing people, right on top of the December JPK and the start of the annual close.
The legal side is short. Art. 26 of the Polish Accounting Act says receivables are inventoried by obtaining confirmations from counterparties and explaining any differences. A few categories are verified against documents instead (art. 26 sec. 1 point 3): disputed and doubtful receivables, receivables from people who don't keep accounting books, and public-law settlements like VAT and ZUS. The timing rule (art. 26 sec. 3 point 1) says the inventory counts as on time if it starts no earlier than three months before year-end and finishes by the 15th of the next year. The creditor starts the process. Liabilities aren't covered by the obligation to confirm; they're verified. And silence isn't a confirmation.
None of that is the hard part. The hard part is the work between the printout and the signed protocol.
Where the Hours Actually Go
Printing the letters takes minutes. Optima and enova365 both have a ready confirmation printout built off settlements (rozrachunki), and so does every other mainstream ERP I've seen. Then the real work starts:
- The contact list. The ERP has an address for each counterparty. It rarely has the email of the person who can confirm a balance. Letters go to the generic office inbox and disappear.
- Chasing. Someone has to remember who hasn't replied, send a reminder, and send it again.
- Differences. Every "we show a different amount" reply is a small investigation: which items, which side is wrong, what to book.
- The silent ones. For every counterparty that never answers, someone has to put together other evidence: payments after the balance date, invoices, delivery documents.
Put rough numbers on it. Take a wholesale client with 150 active counterparties. If sending, logging and two reminders cost around five minutes per counterparty, that's 12 to 13 hours before anyone looks at a single difference. The differences come on top, and each one can take anything from two minutes to an afternoon. Now multiply that by every client on full books. No wonder it slides into January.
Clean the Settlements Before You Send Anything
The most expensive mistake is sending confirmations from settlements nobody has cleaned up. A good share of the differences that come back weren't created by the counterparty. The office created them.
The usual suspects:
- Paid but not matched. The money came in, the statement was booked, and the payment never got settled against the invoice. Your books show an open receivable; the customer's books show nothing. I wrote about how this happens with automatic statement imports in the Optima MT940 post.
- Overpayments and small leftovers. Rounding differences and old 3.17 zł balances that nobody writes off. Each one gets its own line in the letter, and some counterparties will query them.
- Unbooked corrections. A credit note issued in November, booked by the customer in November and by you in December, and the balance is off on the date.
Before you send anything, run one report: open items older than 60 days, payments not settled against anything, and balances under some threshold you set. Fix what you can, and agree with the client what to write off. An hour spent here saves a dozen confirmation replies. For enova365 clients, the same report doubles as receivables reporting; see settlements and receivables in enova365.
Pick 30 November, Not 31 December
The law lets you confirm balances as of a date inside the fourth quarter and then roll the books forward to 31 December. Most offices still pick 31 December out of habit.
A November balance date buys you three things:
- You resolve differences in December, not in January alongside the December JPK, the annual returns and the client who just discovered a missing invoice.
- Counterparties reply faster in December than in the first week of January, when their own accounting is buried.
- You still finish before 15 January even if a third of the replies need follow-up.
The cost is a roll-forward from 30 November to 31 December, which a properly closed December gives you anyway. If the client is audited, agree the date and the list with the auditor first. Auditors often send their own confirmation requests, and you don't want two letters asking the same customer the same question.
The Four Sources of Differences, and What KSeF Changed
When a reply shows a different amount, it almost always falls into one of four buckets:
- Timing. A payment sent on the 29th that reached your account on the 2nd. Explained by the bank statement after the balance date.
- Invoice booked on one side only. This used to be the classic "we never received that invoice". Since this year most invoices between Polish VAT payers go through KSeF, so the invoice exists in the system for both sides. When this difference shows up now, it's usually a booking lag on the other side, not a lost document, and the KSeF number settles it in one email. More on retrieval in automatic KSeF downloads.
- Corrections in different months. Credit notes booked in different periods. The post on KSeF corrections covers why these drift.
- Disputes and offsets. A complaint the customer deducted, or an offset (kompensata) booked on one side. These are the only ones that need a person with authority, and some of them belong in the "disputed" category from the start, which means verification, not confirmation.
You can explain the first three from data you already have: bank lines after the balance date, KSeF invoices, booked corrections. That leaves only the fourth for a person.
What an Agent Does, and What Stays With a Person
It's a good fit for an AI agent. Most of the work is assembling, sending, tracking and matching. Very little of it calls for judgement.
The agent can:
- build the list from settlements, with the open items itemised, not just the total. A letter that shows invoice numbers gets answered faster than one with a single amount;
- flag the art. 26 sec. 1 point 3 categories for verification instead of sending: counterparties without a NIP, public-law accounts, items already marked as disputed;
- send from the office or client mailbox, log every send, and remind at day 7 and day 14;
- read replies and sort them: confirmed, difference with amounts, wrong recipient;
- pre-explain differences by matching them to bank lines after the balance date, KSeF invoices and booked corrections, and hand a person a short list of what's left;
- for silent counterparties, assemble the alternative evidence (payments after the date, invoices) as a ready file.
A person keeps:
- the scope and the balance date, agreed with the client;
- every decision on disputed items, write-offs and allowances for doubtful receivables;
- deciding whether the alternative evidence for a silent counterparty is enough;
- the final inventory protocol and its signature.
This matches the line I draw in every accounting project: the agent prepares, a person signs. I wrote about who is responsible for what in AI agents and liability, and about the monthly version of the same split in month-end close in an accounting office.
Two Numbers to Track
If you automate any part of this, track two things:
- The response rate by day 21. It tells you whether the contact list and reminders work. If it's low, the letters are going to the wrong inboxes.
- The share of differences explained without a person. If timing, KSeF and corrections account for most of them, that's work off your accountants' desks.
You don't need a big project to find out. Pick one client on full books, run the pre-send cleanup on its settlements this month, and send confirmations as of 30 November. You'll see where your hours go before the December rush starts.
If you want to try it on one of your clients this year, write to me. I'll go through the settlements and the process with you and tell you honestly which part is worth automating at your volume.
Check a Polish VAT counterparty in seconds, free
KsięgoAI checks a NIP against the VAT white list and VIES, scores the risk and saves proof of due diligence. Works in Telegram and Claude.
Try KsięgoAI→Let’s talk about your project
Free 30-minute consultation. We’ll figure out if and how I can help.



