The KPiR, the revenue register and exchange differences
How to keep a JDG's KPiR or revenue register in Norman, confirm invoices, add documents in other currencies, and how Norman books exchange differences.
Updated
A JDG keeps the revenue and expense ledger (KPiR) in Norman on the tax scale or the flat tax, or the revenue register on ryczałt. Norman calculates the PIT advances, ZUS contributions and the annual return from these entries. An sp. z o.o. keeps full books: see Getting started: an sp. z o.o..
Confirm issued invoices
Issued invoices appear under Invoices to review.
- Click Review and record.
- Confirm the Recognition date, the date the revenue arose according to the document. Do not wait for the payment.
- Click Confirm entry.
Until every issued invoice of the year is confirmed, Norman calculates no PIT advance or contributions. When you change an invoice's content, confirm it again.
Add a document
Click Add document and fill in:
- Recognition date, Document number, Description,
- KPiR column (2026): 9 Sales, 10 Other revenue, 12 Goods and materials, 13 Incidental purchase costs, 14 Wages, 15 Other costs,
- Tax amount (PLN): without the VAT you deduct and without non-deductible costs,
- Linked document: link the file, so its later payment is not counted a second time.
Do not add ZUS contributions as documents: Norman takes them from approved operations.
Enter a correction with a minus or plus sign and its reason in Notes / correction reason. Entries that affect an advance marked as paid cannot be changed.
Correct wrongly recognised revenue
When revenue reached the register wrongly, open the ⋯ menu next to the entry. What you can do depends on where the revenue comes from.
An invoice in KSeF, issued in Norman or imported from KSeF, stays in the register because it exists in KSeF. Only a correcting invoice changes it. See Correcting invoices in KSeF (KOR).
- Issue a correction to zero: for a duplicate or an invoice issued by mistake. Choose the reason and click Send the correction to KSeF. Norman sends a correcting invoice (KOR). Once KSeF accepts it, the correction enters the register in the month of the corrected invoice and cancels its revenue, because it fixes an error (art. 14 ust. 1o of the PIT act). Until then the entry says it is waiting for KSeF, and that month's PIT waits for the correction.
- Change the revenue date: when the service date on the invoice is wrong, for example copied from the previous invoice. Enter the date and the reason. Revenue arises on the day of the service, at the latest on the day of the invoice or the payment (art. 14 ust. 1c of the PIT act). Norman writes the date and the reason in the Remarks, recalculates the PIT advance and the health contribution, and keeps the date also when the invoice comes from KSeF again. If the buyer needs the right date on the invoice itself, issue a correction of it in KSeF. Use the invoice's date undoes the change.
Revenue from an uploaded document or an operation (without a KSeF number): click Remove from the register and choose the reason: not my revenue, duplicate, refund or return, test document, or other. The entry stays in the register marked as removed, with who removed it, when and why. It goes into no PIT, ZUS, total or annual JPK. The document and the operation stay in Norman. Restore to the register undoes it.
An invoice issued in Norman and not sent to KSeF: Correct the invoice opens it. Correct or cancel it like any invoice.
In a month whose PIT advance is filed or paid you cannot remove an entry or change its date: correct the settlement first. A correction to zero of an invoice from such a month waits there for your confirmation.
Norman flags an invoice whose dates look copied from another one, for example "Check the service date: the same as on invoice 2/07/2026":
- the service date falls in a month before the invoice was issued and is the same as on another invoice to the same buyer with the same lines and amount,
- or the payment is due before the invoice was issued.
Norman changes nothing by itself. Check the date and, if needed, click Change the revenue date.
An invoice's status does not change its revenue: an unpaid or uncollectible invoice is still revenue. Only a correction reduces it.
Ryczałt: rates of revenue categories
On ryczałt, set a rate for each revenue category under Lump-sum rates of revenue categories. The rate depends on the kind of activity the revenue comes from. Without a rate Norman calculates no advance and names the category that lacks one. One invoice has one rate.
Documents in other currencies
Norman converts an invoice or document in another currency (EUR, USD, GBP, CHF) to złoty at NBP's average rate (table A) of the last business day before the document date (art. 11a ust. 1 of the PIT act). The entry shows the amount in the currency, the rate, its date and the table number.
If NBP has not published the rate yet, the entry shows Waiting for the NBP rate, and Norman books it once the rate is out. Until then it calculates no advance for that period.
A correction of an invoice in another currency takes the corrected invoice's rate, so book that invoice first.
Exchange differences
When a document in another currency is paid by an operation linked to it, Norman books the realised exchange difference itself (art. 24c of the PIT act), on the payment day:
- a positive one in column 10 (other revenue),
- a negative one in column 15 (other costs).
Norman values the document at the NBP average rate of the last business day before the document date (art. 11a ust. 1 of the PIT act). It values a payment from a złoty account at the rate the bank actually applied, that is the złoty amount the bank debited or credited for the amount in the currency (art. 24c ust. 4 of the PIT act). It uses the NBP average rate of the last business day before the payment day only when the actual rate cannot be determined, for example for a cash payment in the foreign currency or a payment from a currency account. The difference between the two values is the realised exchange difference. If the month is already settled, a change to an exchange difference waits for you as a proposed correction in the original month and counts only once you confirm it. On ryczałt a positive difference is revenue at the invoice's rate, and a negative one reduces revenue.
These entries carry the Exchange difference badge, cannot be edited and are worked out from the payment: do not add them again.
Payments Norman cannot settle (an advance before the revenue date, a refund, a payment in another currency, a PLN payment in parts) appear under Exchange differences to enter. Click Add difference and add it as a document dated on the payment day.
You enter the inventory (remanent) in the annual PIT-36 or PIT-36L.
Export the book
Click Export next to Open taxes and choose:
- Period: the month selected on the page, the whole year, or a Custom range within one year.
- Format: PDF to print, Excel (XLSX), CSV, or a JPK_PKPIR or JPK_EWP file (XML).
The PDF follows the KPiR or revenue register template of the regulations in force since 2026, with your company's details and totals under each page: the page total, the total carried from the previous page, and the total since the start of the year (KPiR) or of the month (revenue register). The Excel file keeps amounts and dates as numbers, with a total for each month.
The export contains the confirmed book entries. Invoices to review and proposals waiting for your confirmation are not in it. If your book in Norman starts during the year and the period covers earlier months, the PDF and the Excel file start with a line of the totals from the books kept before Norman.
The JPK file is for handing the book to the tax office when it asks for it (art. 193a of the Tax Ordinance). Norman does not send it. For JPK_PKPIR, enter the stock-taking value (spis z natury) at the start of the year and at the end of the period: enter 0 if you have no goods or materials.
Switch to AI accounting with Norman
Connect KSeF and your bank, and your operations land in Norman by themselves. Norman prepares your returns from your documents, and you check them.