Pola formularza
Formularz: PIT-5L (3) (archiwalny) (do XII 2006) Deklaracja na zaliczkę miesięczną na podatek dochodowy według stawki 19%
Pola
- Pola typu String: dowolny ciąg znaków, znaki specjalne powinny być zapisane za pomocą encji HTML (np znaki < > to odpowiednio < oraz >
- 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 profilu to zostanie nadpisany, musi być unikalny w zakresie profilu, do którego jest importowany]</id> <forms type="Array"> <item type="com.efile.data.FormFields"> <typ>2763047</typ> <dataDod>[opcjonalne: data dodania jako timestamp w milisekundach]</dataDod> <dataMod>[opcjonalne: data modyfikacji jako timestamp w milisekundach]</dataMod> <p1>[NIP]</p1> <p4_1>[Miesiąc na druku]</p4_1> <p4_2>[Rok na druku]</p4_2> <p5_subfield_0>[Kod urzędu skarbowego]</p5_subfield_0> <p6>[nazwisko]</p6> <p7>[pierwszeImie]</p7> <p8>[dataUrodzenia]</p8> <p9>[KodKraju]</p9> <p10>[Wojewodztwo]</p10> <p11>[Powiat]</p11> <p12>[Gmina]</p12> <p13>[Ulica]</p13> <p14>[NrDomu]</p14> <p15>[NrLokalu]</p15> <p16>[Miejscowosc]</p16> <p17>[KodPocztowy]</p17> <p18>[Poczta]</p18> <p19>[Pole kwoty]</p19> <p20>[Pole kwoty]</p20> <p23_subfield_1>[Straty z lat ubiegłych zgodnie z art.9 ust.3 i 3a ustawy z uwzględnieniem art.3 ustawy z dnia 11 sierpnia 2001 r. Pole p23 = ograniczDo(p23_subfield_1, p21) ]</p23_subfield_1> <p24_subfield_1>[Składki na ubezpieczenie społeczne - na podstawie art.30c ust.2 w związku z art.26 ust.1 pkt 2 lit.a, z zastrzeżeniem art.30c ust.3 ustawy Pole p24 = ograniczDo(p24_subfield_1, (p21-p23)) ]</p24_subfield_1> <p26>[Pole kwoty]</p26> <zdrowotne_tekst>[Klawisz (klik - eval na Wartosc)]</zdrowotne_tekst> <zdrowotne_label>[pole wyświetlające tylko tekst]</zdrowotne_label> <dochod_zdrowotne_subfield_0>[Dochód narastająco do składki zdrowotnej Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_0> <dochod_zdrowotne_subfield_1>[Dochód/strata za styczeń Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_1> <dochod_zdrowotne_subfield_2>[Dochód/strata za luty Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_2> <dochod_zdrowotne_subfield_3>[Dochód/strata za marzec Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_3> <dochod_zdrowotne_subfield_4>[Dochód/strata za kwiecień Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_4> <dochod_zdrowotne_subfield_5>[Dochód/strata za maj Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_5> <dochod_zdrowotne_subfield_6>[Dochód/strata za czerwiec Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_6> <dochod_zdrowotne_subfield_7>[Dochód/strata za lipiec Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_7> <dochod_zdrowotne_subfield_8>[Dochód/strata za sierpień Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_8> <dochod_zdrowotne_subfield_9>[Dochód/strata za wrzesień Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_9> <dochod_zdrowotne_subfield_10>[Dochód/strata za październik Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_10> <dochod_zdrowotne_subfield_11>[Dochód/strata za listopad Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_11> <dochod_zdrowotne_subfield_12>[Dochód/strata za grudzień Pole dochod_zdrowotne = _tmp_dochNar = 0; if (p4_1) { for (i = 1; i <= parseInt(p4_1) - 1; i++) { _tmp_dochNar = zaokr(_tmp_dochNar + thisObj()['dochod_zdrowotne_subfield_' + i] - thisObj()['zus_spol_' + i], 2); } } return zaokr(_tmp_dochNar, 0); ]</dochod_zdrowotne_subfield_12> <p29_subfield_1>[Składka na ubezpieczenie zdrowotne, o której mowa w art.27b ust.1 pkt 1 ustawy, z zastrzeżeniem art.27b ust.2 ustawy opłacona od początku roku Pole p29 = p4_2 < 2022 ? ograniczDo(p29_subfield_1,p28) : 0 ]</p29_subfield_1> <p31>[Pole kwoty zaokrąglonej do 1 zł]</p31> <p34>[pole wielowierszowe]</p34> <p35_1>[data]</p35_1> <p35_2>[data]</p35_2> <p35_3>[data]</p35_3> <p35_4>[data]</p35_4> <p35_5>[data]</p35_5> <p35_6>[data]</p35_6> <p35_7>[data]</p35_7> <p35_8>[data]</p35_8> <p36>[Pole kwoty zaokrąglonej do 1 zł]</p36> <p37>[Pole kwoty zaokrąglonej do 1 zł]</p37> <p38_subfield_1>[Kwota do zrealizowania w niniejszej deklaracji Pole p38 = ograniczDo(p38_subfield_1, p32) ]</p38_subfield_1> <p40>[Pole kwoty zaokrąglonej do 1 zł]</p40> <rect641>[Klawisz (klik - eval na Wartosc)]</rect641> <p42>[Pole kwoty zaokrąglonej do 1 zł]</p42> <p43>[NIP]</p43> <p44>[REGON]</p44> <p45>[nazwaPelna]</p45> <p47>[Pole liczby (do 5 miejsc po przecinku)]</p47> <p48>[Pole kwoty]</p48> <p49>[Pole kwoty]</p49> <p52>[NIP]</p52> <p53>[REGON]</p53> <p54>[nazwaPelna]</p54> <p56>[Pole liczby (do 5 miejsc po przecinku)]</p56> <p57>[Pole kwoty]</p57> <p58>[Pole kwoty]</p58> <p61>[NIP]</p61> <p62>[REGON]</p62> <p63>[nazwaPelna]</p63> <p65>[Pole liczby (do 5 miejsc po przecinku)]</p65> <p66>[Pole kwoty]</p66> <p67>[Pole kwoty]</p67> <p70>[NIP]</p70> <p71>[REGON]</p71> <p72>[nazwaPelna]</p72> <p74>[Pole liczby (do 5 miejsc po przecinku)]</p74> <p75>[Pole kwoty]</p75> <p76>[Pole kwoty]</p76> <p79>[Pole integer - wartość liczbowa]</p79> <p80>[Pole integer - wartość liczbowa]</p80> <p81>[Pole tekstowe]</p81> </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:
<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-5L (3)</title> <id>647394756</id> <forms type="Array"> <item type="com.efile.data.FormFields"> <typ>2763047</typ> <dataDod>1374565725382</dataDod> <dataMod>1374565725382</dataMod> <p1>8832175725</p1> <p4_1>09</p4_1> <p4_2>2013</p4_2> <p5_subfield_0>3022</p5_subfield_0> <p6>Kowalski</p6> <p7>Jan</p7> <p8>138138876200</p8> <p9>Polska</p9> <p10>wielkopolskie</p10> <p11>poznański</p11> <p12>Poznań</p12> <p13>Strzelecka</p13> <p14>1</p14> <p15>1</p15> <p16>Poznań</p16> <p17>61-144</p17> <p18>Poznań</p18> <p19>10</p19> <p20>10</p20> <p23_subfield_1>1</p23_subfield_1> <p24_subfield_1>1</p24_subfield_1> <p26>10</p26> <zdrowotne_tekst>10</zdrowotne_tekst> <zdrowotne_label>10</zdrowotne_label> <dochod_zdrowotne_subfield_0>1</dochod_zdrowotne_subfield_0> <dochod_zdrowotne_subfield_1>1</dochod_zdrowotne_subfield_1> <dochod_zdrowotne_subfield_2>1</dochod_zdrowotne_subfield_2> <dochod_zdrowotne_subfield_3>1</dochod_zdrowotne_subfield_3> <dochod_zdrowotne_subfield_4>1</dochod_zdrowotne_subfield_4> <dochod_zdrowotne_subfield_5>1</dochod_zdrowotne_subfield_5> <dochod_zdrowotne_subfield_6>1</dochod_zdrowotne_subfield_6> <dochod_zdrowotne_subfield_7>1</dochod_zdrowotne_subfield_7> <dochod_zdrowotne_subfield_8>1</dochod_zdrowotne_subfield_8> <dochod_zdrowotne_subfield_9>1</dochod_zdrowotne_subfield_9> <dochod_zdrowotne_subfield_10>1</dochod_zdrowotne_subfield_10> <dochod_zdrowotne_subfield_11>1</dochod_zdrowotne_subfield_11> <dochod_zdrowotne_subfield_12>1</dochod_zdrowotne_subfield_12> <p29_subfield_1>1</p29_subfield_1> <p31>10</p31> <p34>to jest pole wielowierszowe</p34> <p35_1>10</p35_1> <p35_2>10</p35_2> <p35_3>10</p35_3> <p35_4>10</p35_4> <p35_5>10</p35_5> <p35_6>10</p35_6> <p35_7>10</p35_7> <p35_8>10</p35_8> <p36>10</p36> <p37>10</p37> <p38_subfield_1>1</p38_subfield_1> <p40>10</p40> <rect641></rect641> <p42>10</p42> <p43>8813539735</p43> <p44>512678591</p44> <p45>Nazwa Pełna</p45> <p47>10</p47> <p48>10</p48> <p49>10</p49> <p52>1828423952</p52> <p53>512678591</p53> <p54>Nazwa Pełna</p54> <p56>10</p56> <p57>10</p57> <p58>10</p58> <p61>4555690092</p61> <p62>512678591</p62> <p63>Nazwa Pełna</p63> <p65>10</p65> <p66>10</p66> <p67>10</p67> <p70>8861425389</p70> <p71>512678591</p71> <p72>Nazwa Pełna</p72> <p74>10</p74> <p75>10</p75> <p76>10</p76> <p79>10</p79> <p80>10</p80> <p81>10</p81> </item> </forms> </item> </FormsList> </item> </Profiles> </data>