Aktualnie obowiązujący druk

Pola formularza

Formularz: PIT-28 (21) (archiwalny) (2018) Zeznanie o wysokości uzyskanego przychodu, wysokości dokonanych odliczeń i należnego ryczałtu od przychodów ewidencjonowanych za 2018



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/2018/12/19/6467/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 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>14525375</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>
              <p0_>[Wartość wyboru w polu p0. Dostępne wartości: 1 2 ]</p0_>
              <p5_subfield_0>[Kod urzędu skarbowego]</p5_subfield_0>
              <p6_>[Wartość wyboru w polu p6. Dostępne wartości: 1 2 ]</p6_>
              <p7>[nazwisko]</p7>
              <p8>[pierwszeImie]</p8>
              <p9>[dataUrodzenia]</p9>
              <p10>[KodKraju]</p10>
              <p11>[Wojewodztwo]</p11>
              <p12>[Powiat]</p12>
              <p13>[Gmina]</p13>
              <p14>[Ulica]</p14>
              <p15>[NrDomu]</p15>
              <p16>[NrLokalu]</p16>
              <p17>[Miejscowosc]</p17>
              <p18>[KodPocztowy]</p18>
              <p19>[Poczta]</p19>
              <rect1805>[Klawisz tylko w e-pity (klik - eval na Wartosc)]</rect1805>
              <rect1805_4>[Klawisz tylko w e-pity (klik - eval na Wartosc)]</rect1805_4>
              <p20>[Pole kwoty]</p20>
              <p21>[Pole kwoty]</p21>
              <p22>[Pole kwoty]</p22>
              <p23>[Pole kwoty]</p23>
              <p24>[Pole kwoty]</p24>
              <p25>[Pole kwoty]</p25>
              <p27>[Pole kwoty]</p27>
              <p28>[Pole kwoty]</p28>
              <p29>[Pole kwoty]</p29>
              <p30>[Pole kwoty]</p30>
              <p31>[Pole kwoty]</p31>
              <p32>[Pole kwoty]</p32>
              <p34>[Pole kwoty]</p34>
              <p35>[Pole kwoty]</p35>
              <p37>[Pole kwoty]</p37>
              <p48>[Pole kwoty]</p48>
              <p49>[Pole kwoty]</p49>
              <p50>[Pole kwoty]</p50>
              <p51>[Pole kwoty]</p51>
              <p52>[Pole kwoty]</p52>
              <p53>[Pole kwoty]</p53>
              <p54>[Pole kwoty]</p54>
              <p55>[Pole kwoty]</p55>
              <p73_subfield_1>[Straty z lat ubiegłych Pole p73 = ograniczDo(p73_subfield_1,p47+p56-p74-p76) ]</p73_subfield_1>
              <p74_subfield_1>[Kwota składki na ubezpieczenie społeczne Pole p74 = ograniczDo(p74_subfield_1,p47+p56-p73-p76) ]</p74_subfield_1>
              <p75_subfield_1>[Kwota zagranicznej składki na ubezpieczenie społeczne Pole p75 = ograniczDo(p75_subfield_1,p74) ]</p75_subfield_1>
              <odliczenia1>[Klawisz tylko w e-pity (klik - eval na Wartosc)]</odliczenia1>
              <p76_subfield_1>[Odliczenia od przychodów Pole p76 = ograniczDo(p76_subfield_1,p47+p56-p73-p74) ]</p76_subfield_1>
              <odliczenia2>[Klawisz tylko w e-pity (klik - eval na Wartosc)]</odliczenia2>
              <p78_subfield_1>[Ulga odsetkowa Pole p78 = ograniczDo(p78_subfield_1,p77) ]</p78_subfield_1>
              <p80>[Pole kwoty]</p80>
              <p90>[Pole kwoty]</p90>
              <p109>[Pole kwoty]</p109>
              <p111>[Pole kwoty]</p111>
              <p112>[Pole kwoty]</p112>
              <p114_subfield_1>[Kwota składki na ubezpieczenie zdrowotne Pole p114 = ograniczDo(p114_subfield_1,p113) ]</p114_subfield_1>
              <p115_subfield_1>[Kwota składki na ubezpieczenie zdrowotne, o której mowa w art.b ust. 1 pkt 2 Pole p115 = ograniczDo(p115_subfield_1,p114) ]</p115_subfield_1>
              <odliczenia3>[Klawisz tylko w e-pity (klik - eval na Wartosc)]</odliczenia3>
              <p116_subfield_1>[Kwota odliczenia od ryczałtu - wykazane w części C załącznika PIT/O Pole p116 = ograniczDo(p116_subfield_1,p113-p114) ]</p116_subfield_1>
              <p118_subfield_1>[Odliczenie od ryczatłu z tytułu poniesienia wydatków mieszkaniowych Pole p118 = ograniczDo(p118_subfield_1,p117) ]</p118_subfield_1>
              <odliczenia4>[Klawisz tylko w e-pity (klik - eval na Wartosc)]</odliczenia4>
              <p120>[rok]</p120>
              <p121>[Pole kwoty zaokrąglonej do 1 zł]</p121>
              <p122_>[Wartość wyboru w polu p122. Dostępne wartości: 1 2 3 ]</p122_>
              <p123>[Pole kwoty zaokrąglonej do 1 zł]</p123>
              <p126>[Pole kwoty zaokrąglonej do 1 zł]</p126>
              <p127>[Pole kwoty zaokrąglonej do 1 zł]</p127>
              <p128>[Pole kwoty zaokrąglonej do 1 zł]</p128>
              <p129>[Pole kwoty zaokrąglonej do 1 zł]</p129>
              <p130>[Pole kwoty zaokrąglonej do 1 zł]</p130>
              <p131>[Pole kwoty zaokrąglonej do 1 zł]</p131>
              <p132>[Pole kwoty zaokrąglonej do 1 zł]</p132>
              <p133>[Pole kwoty zaokrąglonej do 1 zł]</p133>
              <p134>[Pole kwoty zaokrąglonej do 1 zł]</p134>
              <p135>[Pole kwoty zaokrąglonej do 1 zł]</p135>
              <p136>[Pole kwoty zaokrąglonej do 1 zł]</p136>
              <p138>[Pole kwoty zaokrąglonej do 1 zł]</p138>
              <p139>[KRS OPP (kwota id: opp_kwota)]</p139>
              <rect2783>[Klawisz (klik - eval na Wartosc)]</rect2783>
              <rect2783_4>[Klawisz (klik - eval na Wartosc)]</rect2783_4>
              <p143>[Pole tekstowe]</p143>
              <p144>[Pole integer - wartość liczbowa]</p144>
              <p145>[Pole integer - wartość liczbowa]</p145>
              <p146>[Pole integer - wartość liczbowa]</p146>
              <p147>[Pole integer - wartość liczbowa]</p147>
              <p148>[Pole integer - wartość liczbowa]</p148>
              <p149_>[Wartość wyboru w polu p149. Dostępne wartości: 1 2 ]</p149_>
              <p151>[pole wielowierszowe]</p151>
              <p150_>[Wartość wyboru w polu p150. Dostępne wartości: 1 2 3 ]</p150_>
              <p152>[Pole integer - wartość liczbowa]</p152>
              <p153>[Checkbox (pole wyboru tak/nie)]</p153>
              <p155_subfield_0>[imię przedstawiciela]</p155_subfield_0>
              <p155_subfield_1>[nazwisko przedstawiciela]</p155_subfield_1>
              <p142>[Funkcja checkbox]</p142>

            </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-28 (21)</title>
          <id>647394756</id>
          <forms type="Array">
            <item type="com.efile.data.FormFields">
              <typ>14525375</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>
              <p0_>1</p0_>
              <p5_subfield_0>3022</p5_subfield_0>
              <p6_>1</p6_>
              <p7>Kowalski</p7>
              <p8>Jan</p8>
              <p9>30-10-1985</p9>
              <p10>PL</p10>
              <p11>wielkopolskie</p11>
              <p12>poznański</p12>
              <p13>Poznań</p13>
              <p14>Strzelecka</p14>
              <p15>1</p15>
              <p16>1</p16>
              <p17>Poznań</p17>
              <p18>61-155</p18>
              <p19>Poznań</p19>
              <rect1805></rect1805>
              <rect1805_4></rect1805_4>
              <p20>10</p20>
              <p21>10</p21>
              <p22>10</p22>
              <p23>10</p23>
              <p24>10</p24>
              <p25>10</p25>
              <p27>10</p27>
              <p28>10</p28>
              <p29>10</p29>
              <p30>10</p30>
              <p31>10</p31>
              <p32>10</p32>
              <p34>10</p34>
              <p35>10</p35>
              <p37>10</p37>
              <p48>10</p48>
              <p49>10</p49>
              <p50>10</p50>
              <p51>10</p51>
              <p52>10</p52>
              <p53>10</p53>
              <p54>10</p54>
              <p55>10</p55>
              <p73_subfield_1>1</p73_subfield_1>
              <p74_subfield_1>1</p74_subfield_1>
              <p75_subfield_1>1</p75_subfield_1>
              <odliczenia1></odliczenia1>
              <p76_subfield_1>1</p76_subfield_1>
              <odliczenia2></odliczenia2>
              <p78_subfield_1>1</p78_subfield_1>
              <p80>10</p80>
              <p90>10</p90>
              <p109>10</p109>
              <p111>10</p111>
              <p112>10</p112>
              <p114_subfield_1>1</p114_subfield_1>
              <p115_subfield_1>1</p115_subfield_1>
              <odliczenia3></odliczenia3>
              <p116_subfield_1>1</p116_subfield_1>
              <p118_subfield_1>1</p118_subfield_1>
              <odliczenia4></odliczenia4>
              <p120></p120>
              <p121>10</p121>
              <p122_>1</p122_>
              <p123>10</p123>
              <p126>10</p126>
              <p127>10</p127>
              <p128>10</p128>
              <p129>10</p129>
              <p130>10</p130>
              <p131>10</p131>
              <p132>10</p132>
              <p133>10</p133>
              <p134>10</p134>
              <p135>10</p135>
              <p136>10</p136>
              <p138>10</p138>
              <p139></p139>
              <rect2783></rect2783>
              <rect2783_4></rect2783_4>
              <p143>test pola tekstowego</p143>
              <p144>10</p144>
              <p145>10</p145>
              <p146>10</p146>
              <p147>10</p147>
              <p148>10</p148>
              <p149_>1</p149_>
              <p151>to jest pole wielowierszowe</p151>
              <p150_>1</p150_>
              <p152>10</p152>
              <p153>1</p153>
              <p155_subfield_0>Krzysztof</p155_subfield_0>
              <p155_subfield_1>Kowalczyk</p155_subfield_1>
              <p142></p142>

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