---
title: "JPK_V7M — art. 99"
description: "Jednolity Plik Kontrolny VAT z deklaracją — struktura pliku XML, pola K_10 do K_47, znaczniki GTU i procedur, oznaczenia NrKSeF/OFF/BFK/DI, termin do 25. dnia następnego miesiąca."
url: https://numifyai.com/docs/zgodnosc-z-prawem/ustawa-o-vat/jpk-v7m
review_status: internal
updated: 2026-04-16
---


**JPK\_V7M** to ustrukturyzowany plik XML, w którym sp. z o.o.
rozliczająca się miesięcznie z VAT składa **jednocześnie**
deklarację podatkową i ewidencję sprzedaży oraz zakupów.
Odpowiednikiem dla małych podatników rozliczających się kwartalnie
jest **JPK\_V7K**.

Podstawą prawną jest <LegalRef act="VAT" art="99" paragraph="11c" />,
który wymaga, aby deklaracja VAT była sporządzana „zgodnie z wzorem
dokumentu elektronicznego (...), który obejmuje deklarację
i ewidencję, o której mowa w art. 109 ust. 3". Szczegółową strukturę
określa <LegalRef act="Rozp_JPK_V7M" /> (Dz.U. 2019 poz. 1988 ze zm.).

<ComplianceDisclaimer />

## Terminy składania — art. 99 [#terminy-składania--art-99]

<LegalRef act="VAT" art="99" paragraph="1" /> określa termin
miesięcznej deklaracji:

> (...) są obowiązani składać w urzędzie skarbowym deklaracje
> podatkowe za okresy miesięczne w terminie do 25. dnia miesiąca
> następującego po każdym kolejnym miesiącu (...).

<DeadlineBadge type="jpk-v7m" />

Dla małych podatników rozliczających się kwartalnie
(<LegalRef act="VAT" art="99" paragraph="2" />) termin to 25. dnia
miesiąca po każdym kwartale. &#x2A;*Uwaga:** ograniczenia w korzystaniu
z rozliczenia kwartalnego nakłada <LegalRef act="VAT" art="99" paragraph="3a" />
— wyłączenie w okresie 12 miesięcy od rejestracji oraz przy sprzedaży
towarów z Załącznika 15 powyżej 50 000 zł miesięcznie.

<LegalRef act="VAT" art="99" paragraph="11b" /> wymaga, aby wszystkie
deklaracje składane były wyłącznie elektronicznie.

## Dwa bloki danych — deklaracja + ewidencja [#dwa-bloki-danych--deklaracja--ewidencja]

Plik XML JPK\_V7M zawiera dwie sekcje:

| Sekcja         | Zakres                                                                                       | Odpowiednik „papierowy" |
| -------------- | -------------------------------------------------------------------------------------------- | ----------------------- |
| **Deklaracja** | Pozycje P\_10 – P\_68 — podsumowanie rozliczenia za okres                                    | VAT-7(23)               |
| **Ewidencja**  | Zbiór wierszy sprzedaży (SprzedazWiersz) i zakupów (ZakupWiersz) z pojedynczymi polami K\_xx | Rejestr VAT             |

Dane deklaracji są **wyliczane z ewidencji** — nie należy ich
wpisywać ręcznie. Numify generuje plik w
<ServiceRef path="src/lib/services/jpk-vat-generator.ts" tests="22">jpk-vat-generator.ts</ServiceRef>
na podstawie wpisów z tabeli `vat_entries`.

## Pola K\_xx — klasyfikacja sprzedaży i zakupów [#pola-k_xx--klasyfikacja-sprzedaży-i-zakupów]

### Sprzedaż (K\_10 – K\_36) [#sprzedaż-k_10--k_36]

| Pole          | Zakres                                                            | Podstawa prawna                                                                    |
| ------------- | ----------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| K\_10         | Sprzedaż zwolniona z VAT                                          | <LegalRef act="VAT" art="43" />                                                    |
| K\_11         | Sprzedaż poza terytorium kraju                                    | <LegalRef act="VAT" art="28b" /> (usługi)                                          |
| K\_12         | Usługi art. 28b świadczone na rzecz kontrahentów UE (część K\_11) | <LegalRef act="VAT" art="100" paragraph="1" /> pkt 4                               |
| K\_13         | Sprzedaż krajowa ze stawką <VatRate rate="0" />                   | <LegalRef act="VAT" art="83" />                                                    |
| K\_15 / K\_16 | Netto / VAT przy stawce <VatRate rate="5" />                      | <LegalRef act="VAT" art="41" paragraph="2a" />                                     |
| K\_17 / K\_18 | Netto / VAT przy stawce <VatRate rate="8" />                      | <LegalRef act="VAT" art="41" paragraph="2" /> + <LegalRef act="VAT" art="146ef" /> |
| K\_19 / K\_20 | Netto / VAT przy stawce <VatRate rate="23" />                     | <LegalRef act="VAT" art="41" paragraph="1" /> + <LegalRef act="VAT" art="146ef" /> |
| K\_21         | WDT — wewnątrzwspólnotowa dostawa towarów (<VatRate rate="0" />)  | <LegalRef act="VAT" art="13" /> + <LegalRef act="VAT" art="42" />                  |
| K\_22         | Eksport towarów (<VatRate rate="0" />)                            | <LegalRef act="VAT" art="41" paragraph="4" />                                      |
| K\_23 / K\_24 | Netto / VAT przy WNT                                              | <LegalRef act="VAT" art="9" />                                                     |
| K\_29 / K\_30 | Netto / VAT przy imporcie usług art. 28b                          | <LegalRef act="VAT" art="17" paragraph="1" /> pkt 4                                |

### Zakupy (K\_40 – K\_47) [#zakupy-k_40--k_47]

| Pole          | Zakres                                                       |
| ------------- | ------------------------------------------------------------ |
| K\_40 / K\_41 | Netto / VAT naliczony od nabycia środków trwałych            |
| K\_42 / K\_43 | Netto / VAT naliczony od nabycia pozostałych towarów i usług |
| K\_44 – K\_47 | Korekty i zwroty (m.in. korekta rocznej proporcji)           |

Numify klasyfikuje wpis VAT do odpowiedniej kategorii w funkcji
`classifySale` w
<ServiceRef path="src/lib/services/jpk-vat-generator.ts" tests="22">jpk-vat-generator.ts</ServiceRef>
— na podstawie kraju kontrahenta (UE/poza UE/PL) i stawki VAT
z pozycji faktury.

## Znaczniki GTU — kody towarów i usług [#znaczniki-gtu--kody-towarów-i-usług]

Znaczniki GTU\_01 – GTU\_13 oznaczają **grupy towarów i usług
wrażliwe** z perspektywy ryzyka podatkowego. Muszą być ujawnione
w wierszu ewidencji dla sprzedawcy.

| Kod     | Zakres                                                                     |
| ------- | -------------------------------------------------------------------------- |
| GTU\_01 | Napoje alkoholowe                                                          |
| GTU\_02 | Paliwa                                                                     |
| GTU\_03 | Oleje opałowe, oleje smarowe                                               |
| GTU\_04 | Wyroby tytoniowe                                                           |
| GTU\_05 | Odpady                                                                     |
| GTU\_06 | Urządzenia elektroniczne, telefony, konsole                                |
| GTU\_07 | Pojazdy                                                                    |
| GTU\_08 | Metale szlachetne i nieszlachetne                                          |
| GTU\_09 | Leki i wyroby medyczne                                                     |
| GTU\_10 | Budynki, budowle i grunty                                                  |
| GTU\_11 | Prawa do emisji CO2                                                        |
| GTU\_12 | Usługi niematerialne (doradztwo, księgowość, prawne, zarządcze, marketing) |
| GTU\_13 | Usługi transportowe i gospodarki magazynowej                               |

Dla typowej usługowej sp. z o.o. relewantny jest głównie **GTU\_12**
(konsulting, księgowość, usługi prawne, marketing). Numify przechowuje
znaczniki w polu `gtuCodes` w tabeli `vat_entries` (wartości oddzielone
przecinkami, np. `GTU_12,GTU_13`).

## Oznaczenia procedur — MPP, TP, WEW, FP, RO... [#oznaczenia-procedur--mpp-tp-wew-fp-ro]

Oddzielną grupę znaczników stanowią **oznaczenia procedur**:

| Kod                                                  | Zakres                                                                                                              |
| ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| MPP                                                  | Transakcja objęta obowiązkowym mechanizmem podzielonej płatności (<LegalRef act="VAT" art="108a" paragraph="1a" />) |
| TP                                                   | Transakcja z podmiotem powiązanym                                                                                   |
| WEW                                                  | Dokument wewnętrzny (np. dowód na czynności nieodpłatne, korekta podstawy)                                          |
| FP                                                   | Faktura do paragonu fiskalnego                                                                                      |
| RO                                                   | Zbiorcza informacja o sprzedaży paragonowej                                                                         |
| B\_SPV / B\_MPV / B\_SPV\_DOSTAWA / B\_MPV\_PROWIZJA | Bony jednego / różnego przeznaczenia                                                                                |

Numify przechowuje oznaczenia w polu `procedureMarkers` w tabeli
`vat_entries`. Generator JPK emituje je jako pojedyncze elementy XML
w wierszu ewidencji (np. `<MPP>1</MPP>`).

## KSeF w JPK\_V7M — NrKSeF / OFF / BFK / DI [#ksef-w-jpk_v7m--nrksef--off--bfk--di]

Od 1 lutego 2026 r. (duzi) / 1 kwietnia 2026 r. (wszyscy) każda
faktura wystawiana przez sp. z o.o. musi przechodzić przez KSeF.
Struktura JPK\_V7M(3) przewiduje cztery wzajemnie wyłączne warianty
oznaczenia faktury w wierszu sprzedaży:

| Element        | Znaczenie                                                                                                        |
| -------------- | ---------------------------------------------------------------------------------------------------------------- |
| `<NrKSeF>`     | Identyfikator faktury nadany przez KSeF (faktura ustrukturyzowana)                                               |
| `<OFF>1</OFF>` | Faktura wystawiona w trybie offline24 (<LegalRef act="VAT" art="106nf" />)                                       |
| `<BFK>1</BFK>` | Faktura elektroniczna lub papierowa wystawiona poza KSeF (w okresie przejściowym lub przy wyjątkach z obowiązku) |
| `<DI>1</DI>`   | Dokument inny niż faktura (np. paragon fiskalny)                                                                 |

Zgodnie ze schematem XSD elementy te muszą znaleźć się **przed**
znacznikami GTU i polami K\_xx. Walidację wymusza generator w
`jpk-vat-generator.ts` (switch na polu `ksefFlag` w rekordzie
`VatEntry`).

Szczegóły struktury KSeF i FA(3) — [KSeF format FA(3)](/docs/zgodnosc-z-prawem/ksef/format-fa3).

## Cel złożenia — oryginał czy korekta [#cel-złożenia--oryginał-czy-korekta]

<LegalRef act="VAT" art="99" paragraph="11c" /> odsyła do wzoru
dokumentu elektronicznego. W JPK\_V7M pole `CelZlozenia` przyjmuje:

* `1` — złożenie oryginalne.
* `2` — korekta.

Numify przekazuje cel jako parametr `purpose` w input dla
`generateJpkVatXml`. Korekta JPK\_V7M = pełne, ponowne sporządzenie
pliku z zaktualizowaną ewidencją (nie same różnice).

## Jak Numify generuje JPK\_V7M [#jak-numify-generuje-jpk_v7m]

Funkcja `generateJpkVatXml` w `jpk-vat-generator.ts`:

1. Pobiera wpisy VAT (`vat_entries`) za wybrany okres dla spółki.
2. Rozdziela wpisy na sprzedaż (sprzedaz) i zakup (zakup).
3. Klasyfikuje każdy wpis sprzedaży do kategorii K\_xx na podstawie
   stawki, kraju kontrahenta i typu transakcji.
4. Agreguje kwoty — deklaracja (P\_10 ... P\_38) + pola kontrolne
   (SprzedazCtrl, ZakupCtrl).
5. Buduje XML zgodny ze schematem MF — struktura `Naglowek`,
   `Podmiot1`, `Deklaracja`, `Ewidencja`.

Wpisy VAT są tworzone automatycznie przez
<ServiceRef path="src/lib/services/vat-register.ts">vat-register.ts</ServiceRef>
w momencie weryfikacji (zatwierdzenia) faktury. Dla transakcji
odwrotnego obciążenia tworzone są dwa wpisy — sprzedaż (VAT należny)

* zakup (VAT naliczony), co daje zero efektywnego VAT, ale obie
  pozycje pojawiają się w pliku zgodnie z wymogiem.

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

* **Pominięcie znaczników MPP** — faktura > 15 000 zł zawierająca
  towary/usługi z Załącznika 15 musi mieć `<MPP>1</MPP>`. Brak
  oznaczenia skutkuje sankcją 30 % (<LegalRef act="VAT" art="106e" paragraph="12" />).
* **Niewykazanie importu usług art. 28b** — transakcja reverse charge
  musi trafić do K\_29/K\_30 (sprzedaż — VAT należny) **oraz** K\_42/K\_43
  (zakup — VAT naliczony). Pominięcie którejkolwiek strony = błędna
  deklaracja.
* **Brak NrKSeF dla faktur objętych obowiązkiem KSeF** — od terminu
  obowiązkowego KSeF każda faktura B2B musi mieć NrKSeF (lub OFF dla
  trybu awaryjnego). Sama `BFK` dopuszczalna wyłącznie dla wyjątków
  ustawowych.
* **Korekta przez sam wpis różnicowy** — korekta JPK\_V7M polega na
  złożeniu **pełnego, nowego pliku** z oznaczeniem `CelZlozenia = 2`,
  nie dodawaniu różnicy do kolejnego okresu.

<ChangeHistory>
  <ChangeEntry date="2026-04-16" act="Phase 3b">
    Pierwsza wersja — oparta na art. 99 ustawy o VAT (Dz.U. 2025
    poz. 775 t.j.) oraz rozporządzeniu JPK\_V7M (Dz.U. 2019 poz. 1988
    ze zm.). Struktura K\_xx, GTU i procedur zgodna z bieżącym
    schematem JPK\_V7M(3) oraz implementacją `jpk-vat-generator.ts`.
  </ChangeEntry>
</ChangeHistory>
