---
title: "JPK_KR_PD — księgi rachunkowe w strukturze JPK"
description: "Obowiązkowe przekazywanie ksiąg rachunkowych w strukturze JPK wraz z znacznikami podatkowymi — art. 9 ust. 1c ustawy o CIT, Rozp. MF z 16.08.2024 (Dz.U. 2024 poz. 1314) znowelizowane Dz.U. 2025 poz. 1828. Pierwsza deklaracja za FY 2026 dla typowej sp. z o.o., struktura JPK_KR_PD(1), znaczniki `KodZapisuKR` i `OpisZapisuKR`."
url: https://numifyai.com/docs/zgodnosc-z-prawem/ustawa-o-cit/jpk-kr-pd
review_status: internal
updated: 2026-04-16
---


**JPK\_KR\_PD** (Jednolity Plik Kontrolny — Księgi Rachunkowe z Danymi
Podatkowymi) to nowy obowiązek dla podatników CIT: przekazywanie
prowadzonych ksiąg rachunkowych w **strukturze XML** wraz ze
znacznikami podatkowymi. Obowiązek wynika z <LegalRef act="CIT" art="9" paragraph="1c" />
i Rozporządzenia MF z 16 sierpnia 2024 r.

Typowa sp. z o.o. (rozliczająca VAT miesięcznie) składa pierwszy
plik **za rok 2026** — w terminie CIT-8, czyli do **31 marca 2027**.

<ComplianceDisclaimer />

## Podstawa prawna — art. 9 ust. 1c [#podstawa-prawna--art-9-ust-1c]

<LegalRef act="CIT" art="9" paragraph="1c" />:

> Podatnicy prowadzący księgi rachunkowe są obowiązani prowadzić
> te księgi przy użyciu programów komputerowych oraz **przesyłać
> właściwemu naczelnikowi urzędu skarbowego te księgi po zakończeniu
> roku podatkowego, w terminie do dnia upływu terminu złożenia
> zeznania**, o którym mowa w art. 27 ust. 1 (…), **za pomocą
> środków komunikacji elektronicznej, w postaci elektronicznej
> odpowiadającej strukturze logicznej**, o której mowa w art. 193a
> § 2 Ordynacji podatkowej (…).

Struktura logiczna publikowana jest na stronach MF w ramach schem
XSD — aktualna dla 2026 r. to &#x2A;*JPK\_KR\_PD(1)** (namespace
`http://jpk.mf.gov.pl/wzor/2024/08/16/08161/`).

## Zakres obowiązku — kto i kiedy [#zakres-obowiązku--kto-i-kiedy]

### Zwolnienia podmiotowe (art. 9 ust. 1d) [#zwolnienia-podmiotowe-art-9-ust-1d]

Obowiązek **nie dotyczy**:

1. Podatników zwolnionych podmiotowo (<LegalRef act="CIT" art="6" paragraph="1" />) —
   z wyjątkiem fundacji rodzinnych.
2. Podatników składających CIT-8 w postaci papierowej (<LegalRef act="CIT" art="27a" />) —
   wąski katalog.
3. Prowadzących uproszczoną ewidencję przychodów i kosztów (nie
   dotyczy sp. z o.o. — spółki handlowe muszą prowadzić pełne księgi).

### Rozporządzenie zwalniające — Dz.U. 2024 poz. 1861 [#rozporządzenie-zwalniające--dzu-2024-poz-1861]

<LegalRef act="JPK_KR_PD" href="https://isap.sejm.gov.pl/isap.nsf/DocDetails.xsp?id=WDU20240001861">Rozporządzenie MF z 13.12.2024</LegalRef>
wyłącza z obowiązku przesyłania **dwa elementy księgi** — struktury
ZOiS (Zestawienie Obrotów i Sald) oraz Dziennik — dla podatników,
którzy spełniają szczegółowe warunki (np. pierwsze lata obowiązku).
W praktyce dla sp. z o.o. w 2026/2027 — **podstawowy zakres
przesłania obejmuje pełen JPK\_KR\_PD** (łącznie z ZOiS i KontoZapis).

### Kalendarz wdrożenia [#kalendarz-wdrożenia]

Rozporządzenie MF z 16 sierpnia 2024 r. (Dz.U. 2024 poz. 1314)
wprowadza obowiązek etapami — **daty pierwszej deklaracji zależą od
kadencji rozliczania VAT**:

| Grupa podatników                                    | Pierwsza deklaracja JPK\_KR\_PD | Termin pierwszego złożenia      |
| --------------------------------------------------- | ------------------------------- | ------------------------------- |
| Duzi podatnicy CIT (przychód > 50 mln EUR) oraz PGK | za rok 2025                     | **31 marca 2026** — już za nami |
| Podatnicy VAT **miesięczni** (JPK\_V7M)             | za rok **2026**                 | **31 marca 2027**               |
| Podatnicy VAT **kwartalni** (JPK\_V7K) i pozostali  | za rok **2027**                 | **31 marca 2028**               |

**Dla typowej sp. z o.o. rozliczającej VAT miesięcznie pierwsze
złożenie to 31.03.2027 r. za FY 2026.** Nie jest prawdą, że „wszyscy
od 2026" — pierwsza deklaracja zależy od harmonogramu w rozporządzeniu
i od grupy podatnika.

### Nowelizacja Dz.U. 2025 poz. 1828 [#nowelizacja-dzu-2025-poz-1828]

<LegalRef act="JPK_KR_PD" href="https://isap.sejm.gov.pl/isap.nsf/DocDetails.xsp?id=WDU20250001828">Rozporządzenie MF z 15.12.2025</LegalRef>
zmieniające rozporządzenie wyjściowe, &#x2A;*wchodzi w życie 1 stycznia
2026 r.**. Zmiany techniczne dotyczą głównie zakresu obowiązku i
dat — treść jest w planie weryfikowana w pierwszej połowie 2026 r.
Szczegóły: [ISAP — karta aktu](https://isap.sejm.gov.pl/isap.nsf/DocDetails.xsp?id=WDU20250001828).

## Struktura JPK\_KR\_PD — cztery sekcje [#struktura-jpk_kr_pd--cztery-sekcje]

| Sekcja         | Zawartość                                                                                                                                                                |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Nagłówek**   | Metadane — kod formularza, cel złożenia, okres, kod US, system źródłowy                                                                                                  |
| **Podmiot**    | NIP, REGON, nazwa, email                                                                                                                                                 |
| **ZOiS**       | Zestawienie Obrotów i Sald — konto po koncie: BO, obroty okresu, obroty narastające, saldo końcowe                                                                       |
| **Dziennik**   | Chronologiczne ujęcie zapisów — numer, data, opis operacji, kwota                                                                                                        |
| **KontoZapis** | Dekretacja — każda linia zapisu z numerem zapisu, kontem, kwotami Wn/Ma, opcjonalnie `KodZapisuKR` (znacznik podatkowy), `OpisZapisuKR` (klasyfikacja), `NIPKontrahenta` |

Oraz dwa „bloki kontrolne":

* **DziennikCtrl** — liczba wierszy i suma kwot operacji w Dzienniku.
* **KontoZapisCtrl** — liczba wierszy KontoZapis i sumy Wn/Ma.

## Znaczniki podatkowe — `KodZapisuKR` i `OpisZapisuKR` [#znaczniki-podatkowe--kodzapisukr-i-opiszapisukr]

Dwa pola XML **w elemencie KontoZapis** realizują najważniejszy
element rozporządzenia — powiązanie zapisu księgowego z jego
klasyfikacją podatkową.

### `KodZapisuKR` — znacznik konta (`jpkPdMarker`) [#kodzapisukr--znacznik-konta-jpkpdmarker]

Wynika z **planu kont** — każdemu kontu syntetycznemu przypisuje się
znacznik JPK z listy rozporządzenia (np. `AKT_A_II` dla środków
trwałych, `KUP_RZS_B_V` dla wynagrodzeń, `NKUP_RZS_J` dla podatku
dochodowego). Znacznik jednoznacznie łączy konto z pozycją bilansową
(AKT/PAS) lub z pozycją RZiS (RZS\_\*) oraz z klasyfikacją podatkową
(KUP / NKUP / PRZYCHOD\_POD / PRZYCHOD\_NPOD / NEUTRALNE).

Pełna lista znaczników w Numify jest w `chart_accounts.jpkPdMarker` —
zobacz domyślny plan kont w <ServiceRef path="src/db/seed-accounts.ts">seed-accounts.ts</ServiceRef>.

### `OpisZapisuKR` — klasyfikacja podatkowa per zapis [#opiszapisukr--klasyfikacja-podatkowa-per-zapis]

Pozwala na **nadpisanie domyślnej klasyfikacji** konta dla
konkretnego zapisu. W schema enum `taxClassification`:

| Wartość         | Znaczenie                                |
| --------------- | ---------------------------------------- |
| `KUP`           | Koszt uzyskania przychodu                |
| `NKUP`          | Niestanowiący kosztu uzyskania przychodu |
| `PRZYCHOD_POD`  | Przychód podatkowy                       |
| `PRZYCHOD_NPOD` | Przychód niepodatkowy                    |
| `NEUTRALNE`     | Neutralny podatkowo                      |

Przykład: konto <AccountRef code="402" name="Usługi obce" /> ma
domyślny znacznik `KUP_RZS_B_III`. Jeżeli jeden konkretny wpis jest
NKUP (np. reprezentacja art. 16 ust. 1 pkt 28), na linii zapisu
ustawia się `taxClassification = NKUP` — w JPK\_KR\_PD zostanie
przekazane jako `<OpisZapisuKR>NKUP</OpisZapisuKR>` przy zachowaniu
znacznika konta `KUP_RZS_B_III` w `<KodZapisuKR>`. Organ podatkowy
widzi: konto normalnie kosztowe, ale ten konkretny dekret — NKUP.

### Logika wyznaczania `OpisZapisuKR` [#logika-wyznaczania-opiszapisukr]

Implementacja w <ServiceRef path="src/lib/services/jpk-kr-pd-generator.ts">generateJpkKrPdXml</ServiceRef>:

1. Jeżeli `journal_lines.taxClassification` jest ustawione → użyj tego.
2. W przeciwnym razie — `deriveTaxClassification(account, isTaxDeductible)`:
   * Konto typu `expense` + `isTaxDeductible = true` → `KUP`.
   * Konto typu `expense` + `isTaxDeductible = false` → `NKUP`.
   * Konto typu `revenue` → `PRZYCHOD_POD` (o ile brak odrębnego flagi).
   * Pozostałe konta (asset, liability, equity) → `NEUTRALNE`.

Użytkownik widzi i edytuje flagę `isTaxDeductible` oraz opcjonalnie
`taxClassification` na poziomie dekretu. Domyślne wartości są zgodne
z `chart_accounts.jpkPdMarker`.

## Dane kontrahenta — `NIPKontrahenta` [#dane-kontrahenta--nipkontrahenta]

Dla każdego zapisu może być dołączony NIP kontrahenta — jeżeli pole
`journal_lines.contractorId` wskazuje na pozycję w `contractors`.
Numify automatycznie pobiera `contractors.taxId` i wstawia do pola
XML. **Brak NIP-u nie blokuje generacji** — pole jest opcjonalne dla
operacji, które nie mają kontrahenta (np. przeksięgowania wewnętrzne,
odpisy amortyzacyjne, korekty).

## Wymagania dotyczące danych firmy [#wymagania-dotyczące-danych-firmy]

<ServiceRef path="src/lib/services/jpk-kr-pd-generator.ts">generateJpkKrPdXml</ServiceRef>
wymusza walidację przed generacją:

1. **NIP** — `companies.taxId` jest obowiązkowy.
2. **Kod urzędu skarbowego** — `companies.taxOfficeCode` musi być
   **4-cyfrowym kodem TKodUS** (enumeracja ministerstwa — pełna lista
   \~400 kodów w schemach JPK). Walidacja wyrażeniem regularnym
   `/^\d{4}$/`.
3. **Email** — przekazywany jako parametr funkcji; wymagany przez
   schemę.

Brak któregokolwiek → `Error: Missing or invalid tax office code`
(lub odpowiednio NIP).

## Walidacja i złożenie [#walidacja-i-złożenie]

Numify **generuje plik XML** — nie podpisuje go i nie przesyła
bezpośrednio do KAS. Workflow użytkownika:

1. `generateJpkKrPdXml({ companyId, fiscalYear, purpose: 1, email })` → string XML.
2. Pobranie pliku (UI dostępne z poziomu strony „Rozliczenie roku").
3. **Walidacja XSD** — zalecane offline przed złożeniem (np. Notepad++
   z wtyczką XML, lub walidator MF).
4. **Podpisanie** kwalifikowanym podpisem elektronicznym lub profilem
   zaufanym (e-Urząd Skarbowy).
5. **Przesłanie** — przez dedykowaną bramkę JPK ministerstwa finansów
   lub zewnętrzne narzędzie (e-mikrofirma, programy księgowe).

Pole `<CelZlozenia>`:

* `1` — pierwotne złożenie (domyślne w Numify).
* `2` — korekta (można wygenerować ponownie, parametr `purpose: 2`).

## Ograniczenia generatora [#ograniczenia-generatora]

Znane ograniczenia <ServiceRef path="src/lib/services/jpk-kr-pd-generator.ts">generateJpkKrPdXml</ServiceRef>
aktualnej wersji:

1. **Ręczne przełączenie trybu korekty** — użytkownik musi sam
   zdecydować, że generuje korektę (`purpose: 2`). System nie ma
   rejestru wcześniejszych złożeń.
2. **Brak walidacji przeciwko XSD** — generator konstruuje XML
   zgodnie ze schemą, ale **nie waliduje** wyniku wobec pliku XSD
   ministerstwa. Zalecane zewnętrzne narzędzie walidacji przed
   złożeniem.
3. **Księgi pomocnicze (subsidiary ledgers)** — generator nie
   emituje odrębnych struktur analitycznych (KsiegaGlowna + kartoteki
   subkont). Działa na poziomie syntetyki + analityki kontrahentów.
4. **Złożenie elektroniczne** — poza zakresem Numify; integracja z
   bramką MF jest planowana w kolejnych etapach.

## Typowe błędy [#typowe-błędy]

* **Przekazanie JPK\_KR\_PD za zbyt wczesny rok.** Typowa sp. z o.o.
  rozliczająca VAT miesięcznie **nie składa** JPK\_KR\_PD za FY 2025 —
  pierwsze obowiązkowe to FY 2026.
* **Brak wypełnionego kodu urzędu (`taxOfficeCode`).** Plik nie
  wygeneruje się bez czterocyfrowego kodu z TKodUS.
* **Niezgodność `KodZapisuKR` między ZOiS a KontoZapis dla tego
  samego konta.** Znacznik konta w obu sekcjach musi być identyczny.
  Numify zapewnia zgodność przez wspólne źródło (`chart_accounts.jpkPdMarker`).
* **Błędne sumowania kontrolne.** Wartości `DziennikCtrl` i
  `KontoZapisCtrl` muszą zgadzać się z faktycznymi sumami — generator
  Numify zlicza automatycznie. Przy ręcznym edytowaniu pliku łatwo
  złamać spójność.
* **Stosowanie poprzedniej wersji schemy.** Schemat JPK\_KR\_PD(1)
  używa namespace `http://jpk.mf.gov.pl/wzor/2024/08/16/08161/`.
  Nowelizacja z 2025 r. (Dz.U. 2025 poz. 1828) może wprowadzić nową
  wersję — sprawdź aktualny namespace w schematach MF.

## Powiązane sekcje [#powiązane-sekcje]

* [JPK\_ST\_KR](/docs/zgodnosc-z-prawem/ustawa-o-cit/jpk-st-kr) —
  osobna struktura dla ewidencji środków trwałych.
* [CIT-8](/docs/zgodnosc-z-prawem/ustawa-o-cit/cit-8) — JPK\_KR\_PD
  składany wraz z zeznaniem rocznym.
* [KUP / NKUP](/docs/zgodnosc-z-prawem/ustawa-o-cit/kup-nkup) —
  klasyfikacja podatkowa zapisu przekłada się na `OpisZapisuKR`.
* [Art. 18 UoR — Trial Balance](/docs/zgodnosc-z-prawem/ustawa-o-rachunkowosci/art-18-trial-balance) —
  sekcja ZOiS w JPK\_KR\_PD = zestawienie obrotów i sald zgodne z
  art. 18 UoR.

<ChangeHistory>
  <ChangeEntry date="2026-04-16" act="Phase 3c">
    Pierwsza wersja — oparta na Rozporządzeniu MF z 16.08.2024
    (Dz.U. 2024 poz. 1314) i nowelizacji Dz.U. 2025 poz. 1828.
    Obowiązek wprowadzony przez art. 9 ust. 1c ustawy o CIT
    (Dz.U. 2025 poz. 278).
  </ChangeEntry>
</ChangeHistory>
