Aktualnie obowiązujący druk

Pola formularza

Formularz: PIT-39 (10) (archiwalny) (2019) Zeznanie o wysokości osiągniętego dochodu (poniesionej straty)



Import danych w formacie XML e-Deklaracji

  • Dane tego formularza można wczytać za pomocą XML z systemu e-Deklaracji. Link do pliku XSD: http://crd.gov.pl/wzor/2019/12/23/8986/schemat.xsd

Pola

  • Pola typu String: dowolny ciąg znaków, znaki specjalne powinny być zapisane za pomocą encji HTML (np znaki < > to odpowiednio &lt; oraz &gt;
  • Pola typu Number: dozwolone znaki to cyfry 0-9 oraz separator dziesiętny (kropka)
  • Pola typu Boolean: wartości logiczne true/false
  • Pola daty: data zapisana w formacie timestamp w milisekundach lub w formacie rrrr-mm-dd, na przykład 1976-11-10.
  • Format znaków to UTF-8

Bazy kodów

Tabele kodów krajów, US etc.

Podstawowa struktura:

Wzór pliku:
<data type="com.efile.importer.ImportData">
  <Profiles type="Array">
    <item type="com.efile.data.DBProfile">
      <FormsList type="Array">
        <item type="com.efile.data.DBForm">
          <title>[nazwa formularza na liście moich formularzy]</title>
          <id>[opcjonalne: id wypełnionego formularza, jeśli będzie już taki wpisany w bazie to zostanie nadpisany, musi być unikalny w bazie całego programu - czyli musi być unikalny również w zakresie wpisanych w programie profili/baz danych]</id>
          <forms type="Array">
            <item type="com.efile.data.FormFields">
              <typ>17397189</typ>
              <dataDod>[opcjonalne: data dodania jako timestamp w milisekundach]</dataDod>
              <dataMod>[opcjonalne: data modyfikacji jako timestamp w milisekundach]</dataMod>
              <p1_>[Wartość wyboru w polu p1. Dostępne wartości: 1 2 ]</p1_>
              <p1_3_subfield_>[Zaznaczenie wyboru: 1:NIP / 2:PESEL]</p1_3_subfield_>
              <p1_3_subfield_2>[Pole PESEL]</p1_3_subfield_2>
              <p1_3_subfield_3>[Pole NIP]</p1_3_subfield_3>
              <p5_subfield_0>[Kod urzędu skarbowego]</p5_subfield_0>
              <p7_>[Wartość wyboru w polu p7. Dostępne wartości: 1 2 ]</p7_>
              <p6_>[Wartość wyboru w polu p6. Dostępne wartości: 1 2 ]</p6_>
              <p8>[nazwisko]</p8>
              <p9>[pierwszeImie]</p9>
              <p10>[dataUrodzenia]</p10>
              <p11>[KodKraju]</p11>
              <p12>[Wojewodztwo]</p12>
              <p13>[Powiat]</p13>
              <p14>[Gmina]</p14>
              <p15>[Ulica]</p15>
              <p16>[NrDomu]</p16>
              <p17>[NrLokalu]</p17>
              <p18>[Miejscowosc]</p18>
              <p19>[KodPocztowy]</p19>
              <p20_subfield_1>[Przychód Pole p20 = p20_subfield_1 ]</p20_subfield_1>
              <p21_subfield_1>[Koszt Pole p21 = p21_subfield_1 ]</p21_subfield_1>
              <p22_subfield_1>[Amortyzajca Pole p22 = p22_subfield_1 ]</p22_subfield_1>
              <p25_subfield_1>[Wydatki na cele mieszkaniowe Pole p25 = jezeli(((p23*p25_subfield_1)/p20)>p23,p23,((p23*p25_subfield_1)/p20)) ]</p25_subfield_1>
              <p28>[Pole kwoty]</p28>
              <p30_subfield_1>[Wpisz kwotę zaokrągloną do 1 zł. W przypadku przychodów, o których mowa w art.30a ust.1 pkt 1-3 ustawy, wpisz kwotę z groszami (niezaokrągloną). Pole p30 = p30_subfield_1 ]</p30_subfield_1>
              <p31_subfield_1>[Zryczałtowany podatek art. 30a ust.1 p.1-5 Pole p31 = p31_subfield_1+p31_subfield_2 ]</p31_subfield_1>
              <p31_subfield_2>[W tym kwota z tyt. art.30a ust. 1 p. 1-3 ustawy Pole p31 = p31_subfield_1+p31_subfield_2 ]</p31_subfield_2>
              <p32_subfield_1>[Podatek zapłacony za granicą art. 30a ust.9 Pole p32 = ograniczDo(p32_subfield_1+p32_subfield_2,p31) ]</p32_subfield_1>
              <p32_subfield_2>[W tym kwota z tyt. art.30a ust. 1 p. 1-3 ustawy Pole p32 = ograniczDo(p32_subfield_1+p32_subfield_2,p31) ]</p32_subfield_2>
              <p35>[Pole kwoty zaokrąglonej do 1 zł]</p35>
              <p36>[Pole kwoty zaokrąglonej do 1 zł]</p36>
              <p37>[Pole kwoty zaokrąglonej do 1 zł]</p37>
              <p38>[Pole kwoty zaokrąglonej do 1 zł]</p38>
              <p39>[Pole kwoty zaokrąglonej do 1 zł]</p39>
              <p40>[Pole kwoty zaokrąglonej do 1 zł]</p40>
              <p41>[Pole kwoty zaokrąglonej do 1 zł]</p41>
              <p42>[Pole kwoty zaokrąglonej do 1 zł]</p42>
              <p43>[Pole kwoty zaokrąglonej do 1 zł]</p43>
              <p44>[Pole kwoty zaokrąglonej do 1 zł]</p44>
              <p45>[Pole kwoty zaokrąglonej do 1 zł]</p45>
              <p46>[Pole kwoty zaokrąglonej do 1 zł]</p46>
              <p47>[Pole kwoty]</p47>
              <p48>[KRS OPP (kwota id: opp_kwota)]</p48>
              <rect2783>[Klawisz (klik - eval na Wartosc)]</rect2783>
              <rect2783_4>[Klawisz (klik - eval na Wartosc)]</rect2783_4>
              <p52>[Pole tekstowe]</p52>
              <p53>[Pole integer - wartość liczbowa]</p53>
              <p55_subfield_0>[imię przedstawiciela]</p55_subfield_0>
              <p55_subfield_1>[nazwisko przedstawiciela]</p55_subfield_1>
              <p51>[Funkcja checkbox]</p51>

            </item>
          </forms>
        </item>
        <item type="com.efile.data.DBForm">
          <forms type="Array">
            <item type="com.efile.data.FormFields">
              [... kolejny formularz ...]
            </item>
          </forms>
          <title>[nazwa formularza na liście moich formularzy]</title>
        </item>
    
      </FormsList>
    </item>
  </Profiles>
</data>

Przykład pliku (pobierz i uruchom w programie):
<data type="com.efile.importer.ImportData">
  <Profiles type="Array">
    <item type="com.efile.data.DBProfile">
      <FormsList type="Array">
        <item type="com.efile.data.DBForm">
          <title>PIT-39 (10)</title>
          <id>647394756</id>
          <forms type="Array">
            <item type="com.efile.data.FormFields">
              <typ>17397189</typ>
              <dataDod>1374565725382</dataDod>
              <dataMod>1374565725382</dataMod>
              <p1_>1</p1_>
              <p1_3_subfield_>2</p1_3_subfield_>
              <p1_3_subfield_2>23050608219</p1_3_subfield_2>
              <p1_3_subfield_3>8875155741</p1_3_subfield_3>
              <p5_subfield_0>3022</p5_subfield_0>
              <p7_>1</p7_>
              <p6_>1</p6_>
              <p8>Kowalski</p8>
              <p9>Jan</p9>
              <p10>30-10-1985</p10>
              <p11>PL</p11>
              <p12>wielkopolskie</p12>
              <p13>poznański</p13>
              <p14>Poznań</p14>
              <p15>Strzelecka</p15>
              <p16>1</p16>
              <p17>1</p17>
              <p18>Poznań</p18>
              <p19>61-155</p19>
              <p20_subfield_1>1</p20_subfield_1>
              <p21_subfield_1>1</p21_subfield_1>
              <p22_subfield_1>1</p22_subfield_1>
              <p25_subfield_1>1</p25_subfield_1>
              <p28>10</p28>
              <p30_subfield_1>1</p30_subfield_1>
              <p31_subfield_1>1</p31_subfield_1>
              <p31_subfield_2>1</p31_subfield_2>
              <p32_subfield_1>1</p32_subfield_1>
              <p32_subfield_2>1</p32_subfield_2>
              <p35>10</p35>
              <p36>10</p36>
              <p37>10</p37>
              <p38>10</p38>
              <p39>10</p39>
              <p40>10</p40>
              <p41>10</p41>
              <p42>10</p42>
              <p43>10</p43>
              <p44>10</p44>
              <p45>10</p45>
              <p46>10</p46>
              <p47>10</p47>
              <p48></p48>
              <rect2783></rect2783>
              <rect2783_4></rect2783_4>
              <p52>test pola tekstowego</p52>
              <p53>10</p53>
              <p55_subfield_0>Krzysztof</p55_subfield_0>
              <p55_subfield_1>Kowalczyk</p55_subfield_1>
              <p51></p51>

            </item>
          </forms>
        </item>    
      </FormsList>
    </item>
  </Profiles>
</data>