Skip to content

piotrkot/jpk-vdek

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 

Repository files navigation

JPK-VDEK

Prosty program do wysyłania JPK VAT z deklaracją (https://jpk-vdek.herokuapp.com/).

Wstęp

Od 1 października 2020 r. wszyscy podatnicy zarejestrowani jako czynni podatnicy VAT muszą obowiązkowo składać JPK_VAT z Deklaracją (JPK-VDEK). (źródło: https://www.podatki.gov.pl/jednolity-plik-kontrolny/jpk-vat-z-deklaracja/jpk-vat-z-deklaracja-info/)

Dokument elektroniczny JPK-VDEK składa się z ewidencji VAT (zakupy i sprzedaż, które wynikają z ewidencji VAT przedsiębiorcy za dany okres) oraz z deklaracji VAT.

Niestety, przesłanie takiego dokumentu nie jest proste. Wymaga on zgodności ze schematami XSD, odpowiedniej kompresji danych i ich właściwego zaszyfrowania. (źródło: https://www.podatki.gov.pl/jednolity-plik-kontrolny/jpk-vat-z-deklaracja/pliki-do-pobrania-jpk-vat-z-deklaracja/#jpk-vat)

W tym celu powstał ten program.

Licencja

Uznanie autorstwa-Użycie niekomercyjne-Bez utworów zależnych 3.0 Unported (CC BY-NC-ND 3.0) (https://creativecommons.org/licenses/by-nc-nd/3.0/deed.pl)

Wymagania

Do poprawnego działania programu wymagane jest środowisko Java (Java Runtime Environment, JRE) w wersji 8 lub nowszej.

Instalacja

Program ma dwie wersje:

  • DeskApp - Program graficzny do interaktywnego tworzenia ewidencji i deklaracji VAT, utrzymywania listy dostawców i kontrahentów, zarządzania wersjami roboczymi, podpowiedziami podczas wypełniania treścią, i wysyłania dokumentów do Ministerstwa Finansów.

  • ConsoleApp - Program z wiersza poleceń do wysyłania gotowych dokumentów do Ministerstwa Finansów.

DeskApp

Pobierz program deskapp.zip z https://github.com/piotrkot/jpk-vdek/releases.

Rozpakuj plik deskapp.zip do katalogu deskapp.

Windows

Uruchom plik jpk-vdek.bat z katalogu deskapp.

Linux

Uruchom plik jpk-vdek.sh z katalogu deskapp.

Środowisko testowe

Ministerstwo Finansów udostępniło środowisko testowe do wysyłania JPK-VDEK. Aby program połączył się ze środowiskiem testowym należy:

  • dla systemu Windows:

W pliku jpk-vdek.bat zamienić

set ENV=PROD

na

set ENV=TEST

  • dla systemu Linux:

w pliku jpk-vdek.sh zamienić

export ENV=PROD

na

export ENV=TEST

W tym środowisku dane podatnika mogą być dowolne, jednak jedynie NIP parzysty pozwoli z powodzeniem zakończyć wysyłkę. Dla nieparzystej wartości NIP pojawi się błąd.

Aktualizacja

Można wykonać aktualizację programu do nowej wersji nie tracąc przy tym danych ze starej wersji. Program podczas pracy tworzy katalog config w miejscu, gdzie został zainstalowany (rozpakowany). W katalogu config znajdują się:

  • taxpayer.xml - informacje o płatniku
  • config.xml - konfiguracja programu
  • cache.xml - pamięć podręczna z danymi o dostawcach i kontrahentach
  • drafts/ - katolog z wersjami roboczymi

Jeśli stara wersja programu ma ten sam numer główny (major) co wersja nowa (przykładowo aktualizacja z wersji 1.1 do wersji 1.6), wystarczy skopiować katalog config do nowej lokalizacji i wszystkie dane ze starej wersji będą automatycznie przeniesione.

Jeśli stara wersja programu ma inny numer główny (major) co wersja nowa (przykładowo aktualizacja z wersji 0.2 do wersji 1.6), poza skopiowaniem katalogu config do nowej lokalizacji należy nanieść pewne ręczne zmiany na plikach z katalogu config. Wymagane zmiany są zawsze opisane w pierwszej wersji o nowym numerze głównym (np. 1.0, 2.0).

Zrzuty ekranu

ConsoleApp

Pobierz program consoleapp.zip z https://github.com/piotrkot/jpk-vdek/releases.

Rozpakuj plik consoleapp.zip do katalogu consoleapp.

Windows

Uruchom plik jpk-vdek-cmd.bat z katalogu consoleapp.

Linux

Uruchom plik jpk-vdek-cmd.sh z katalogu consoleapp.

Opcje użycia

  • --help - Wyświetlenie komunikatu pomocy.
  • --test - Użycie środowiska testowego Ministerstwa Finansów. Bez tej opcji użyte zostanie środowisko produkcyjne. W środowisku testowym wysłanie dokumentu zakończy się sukcesem jedynie dla parzystych wartości NIP.
  • --out=<katalog> - Wskazanie katalogu do zapisu UPO. Bez tej opcji użyty zostanie katalog bieżący.
  • --doc=<dokument> - Wskazanie dokumentu JPK z Deklaracją do wysłania.
  • --auth-income=<kwota> - Wskazanie kwoty przychodu wykazanej w zeznaniu za rok przedostatni (np. dnia 25.04.2020 będzie to rok 2018). Brak tej opcji wymaga podania --auth-signature-pkcs12 lub --auth-signature-pkcs11.
  • --auth-signature-pkcs12=<ścieżka do pliku PKCS#12> - Wskazanie pliku PKCS#12 zawierającego certyfikat(y) do podpisu kwalifikowanego. Wymagana jest bezwzględna ścieżka do pliku PKCS#12. Brak tej opcji wymaga podania --auth-signature-pkcs11 lub --auth-income.
  • --storepass-pkcs12=<hasło do pliku PKCS#12> - Hasło dostępu do pliku PKCS#12. Bez tej opcji hasło będzie odczytane ze standardowego wejścia (stdin).
  • --auth-signature-pkcs11=<ścieżka do pliku biblioteki PKCS#11> - Wskazanie pliku natywnej biblioteki PKCS#11. Biblioteka zawiera implementację PKCS#11 i jest dostarczana z kartą kryptograficzną. Dla OS Linux/Solaris biblioteka ma rozszerzenie .so, dla OS Windows - .dll. Wymagana jest bezwzględna ścieżka do pliku PKCS#11. Brak tej opcji wymaga podania --auth-income lub --auth-signature-pkcs12.

Przykłady

$> jpk-vdek-cmd --test --out=/tmp --doc=jpk.xml --auth-income=10,50

$> jpk-vdek-cmd --doc=jpk.xml --auth-signature-pkcs12="/home/store.pfx"

$> jpk-vdek-cmd --doc=jpk.xml --auth-signature-pkcs11="/opt/libp11.so"

$> jpk-vdek-cmd --doc=jpk.xml --auth-signature-pkcs11="C:\libp11.dll"

Kontakt

jpk.vdek@gmail.com