Registry entry
Croatia Annual Personal Income Tax Declaration (Obrazac DOH)
The Porezna uprava's (Croatian Tax Administration) "PRIJAVA POREZA NA DOHODAK" (Income Tax Declaration), internally referenced as Obrazac DOH — the annual personal income tax return Croatian resident taxpayers file to declare income and reconcile advance tax paid during the year. Opens Croatia's Taxes vertical (the registry's 52nd jurisdiction). The source is a static, unauthenticated PDF distributed directly from Porezna uprava's own document host, with no AcroForm layer (confirmed via pdfjs-dist returning zero widget annotations across all 8 pages) — a hand-fill/print template, the same pattern as Poland's PIT-37 and Bulgaria's Обр. 2001, but fully self-documenting via its own printed section numbers and column headers. Mirroring the PIT-37 precedent, this v1.0.0 deliberately scopes to the most common salaried-employee/pensioner case rather than modelling the whole form. It models in full: the form's header (tax year, filing tax office/branch), Section 1 (general identification — name, address, contact details, OIB, the assisted-area/Vukovar residency flag, bank account, and authorized representative/tax advisor identification), Section 2 (dependent family members, a bounded repeating group capped at 3 of the paper form's own 7 numbered rows), Section 3 (personal deduction increase for domestic health-insurance contributions and donations), Section 4.1.1 (domestic employment wages earned outside assisted areas, a bounded repeating group of employer/payer rows capped at 3 of the paper form's own 6 numbered rows, plus its UKUPNO total), Section 4.1.5 (domestic pension income, structured identically to 4.1.1 and capped the same way), Section 6 (the flat 9-row table of tax reliefs/exemptions/incentives), Section 7 (free-text list of attached documents), and Section 8 (taxpayer's notes and the closing signature declaration). It deliberately does NOT model: Section 1.5 (the multi-period residence/habitual-abode table, relevant only to taxpayers who changed their municipality or country of residence during the year) and Section 1.6 (the HRVI war-disabled-veteran disability-status table), both narrow pathways outside the common salaried-employee/pensioner case; Sections 4.1.2/4.1.3/4.1.4 (wages earned in assisted areas/Vukovar, or abroad) and 4.1.6 (foreign pension income); Section 4.1.7 (the computed total employment+pension income/tax figure, chained off the unmodelled foreign-income rows) and 4.1.8 (HRVI-exempt employment/pension income); Section 4.2 (other income — board-member fees, copyright/royalties, artist/sportsperson income, sales-agent commissions, prizes/scholarships, student work, and journalist/athlete honoraria); Section 4.3 (income from self-employment/crafts/freelance/agriculture — by far the form's most complex section, with its own current-year/loss, foreign-income, carried-forward-loss, and social-contribution sub-calculations); and Section 5 (the grand-total income/tax figure, which sums across the unmodelled 4.2 and 4.3 sections and so cannot be correctly derived from this schema's field set alone). See VERIFICATION.md for the full scope rationale, every disclosed judgment call, and the candidate-comparison record for Croatia's other five verticals. GovSchema is an independent, non-profit standards body and is not affiliated with, endorsed by, or operated by the Government of Croatia or the Porezna uprava.
Registry entry
hr/porezna-uprava/prijava-poreza-na-dohodak
Authoritative source Obrazac DOH — Prijava poreza na dohodak (Income Tax Declaration)
Machine access
- Schema document
registry/hr/porezna-uprava/prijava-poreza-na-dohodak/1.0.0/schema.jsonapplication/schema+json- Verification record
registry/hr/porezna-uprava/prijava-poreza-na-dohodak/1.0.0/VERIFICATION.mdtext/markdown- Registry catalog
registry/index.jsonone record per schema id
Field reference
86 fields, read from the published schema.json, with names, types, requiredness, and validation as the document states them. The live government form remains the authoritative source.
Fields
-
taxYearinteger requiredThe tax year this annual income tax declaration covers, printed in the form's own header blank.
range: 2000–2100 -
taxOfficeAndBranchstring requiredThe regional tax office (područni ured) and its branch office (ispostava) with jurisdiction over the taxpayer, where this declaration is filed.
-
fullNameAndParentNamestring requiredThe taxpayer's full name and their parent's given name (a Croatian civil-registry convention used to disambiguate taxpayers who share a name).
classification: pii -
residentialAddressstring requiredThe taxpayer's current address: place, street, and house number.
classification: pii -
phonestringOptional phone number to help the tax office reach the taxpayer about this return.
classification: pii -
emailstringOptional email address to help the tax office reach the taxpayer about this return.
classification: pii -
oibstring requiredThe taxpayer's OIB (Osobni identifikacijski broj), Croatia's 11-digit personal identification number.
patternclassification: sensitive-pii -
assistedAreaOrVukovarResidentboolean requiredWhether the taxpayer resided during the tax year in an area classified as 'assisted' (a group-I municipality under the special regional-development regulation) or in the City of Vukovar — a status that gates certain tax reliefs modelled in Section 6 below.
-
bankAccountNumberstringThe taxpayer's bank account number, used e.g. for routing a refund.
classification: financial -
bankNameAndSeatstringName and registered seat of the bank where the account in bankAccountNumber is held.
-
representativeNamestringName of the authorized representative or tax advisor filing on the taxpayer's behalf, if any.
classification: pii -
representativeAddressstringAddress (registered seat, permanent, or temporary residence) of the representative/tax advisor named in representativeName.
classification: pii -
representativeOibstringOIB of the representative/tax advisor named in representativeName.
patternclassification: pii -
dependent1FullNamestringFull name of dependent family member 1 (row 1 of the paper form's uzdržavani članovi table, capped at 3 of the form's own 7 numbered rows — see VERIFICATION.md).
classification: pii -
dependent1RelationshipstringRelationship of dependent 1 to the taxpayer (e.g. child, spouse, parent).
-
dependent1OibstringOIB of dependent 1.
patternclassification: sensitive-pii -
dependent1DisabilityMarkingenumDisability marking for dependent 1, when applicable: 'I' (invalid) or 'I*' (100% invalidity, or entitlement to assistance/care due to disability, or to the inclusive supplement). Left absent when the dependent has no disability marking.
enum: I | I_star -
dependent1PeriodFromdateStart date of the period during the tax year this dependent was claimed for dependent 1.
-
dependent1PeriodTodateEnd date of the period during the tax year this dependent was claimed for dependent 1.
-
dependent1PersonalDeductionSharedWithOibstringOIB of the other person the personal deduction for dependent 1 is split with, when the deduction is shared between two taxpayers (e.g. divorced parents).
patternclassification: sensitive-pii -
dependent1PersonalDeductionSharePercentagenumberPercentage of the personal deduction for dependent 1 claimed by this taxpayer, when split with another person.
range: 0–100 -
dependent2FullNamestringFull name of dependent family member 2 (row 2 of the paper form's uzdržavani članovi table, capped at 3 of the form's own 7 numbered rows — see VERIFICATION.md).
classification: pii -
dependent2RelationshipstringRelationship of dependent 2 to the taxpayer (e.g. child, spouse, parent).
-
dependent2OibstringOIB of dependent 2.
patternclassification: sensitive-pii -
dependent2DisabilityMarkingenumDisability marking for dependent 2, when applicable: 'I' (invalid) or 'I*' (100% invalidity, or entitlement to assistance/care due to disability, or to the inclusive supplement). Left absent when the dependent has no disability marking.
enum: I | I_star -
dependent2PeriodFromdateStart date of the period during the tax year this dependent was claimed for dependent 2.
-
dependent2PeriodTodateEnd date of the period during the tax year this dependent was claimed for dependent 2.
-
dependent2PersonalDeductionSharedWithOibstringOIB of the other person the personal deduction for dependent 2 is split with, when the deduction is shared between two taxpayers (e.g. divorced parents).
patternclassification: sensitive-pii -
dependent2PersonalDeductionSharePercentagenumberPercentage of the personal deduction for dependent 2 claimed by this taxpayer, when split with another person.
range: 0–100 -
dependent3FullNamestringFull name of dependent family member 3 (row 3 of the paper form's uzdržavani članovi table, capped at 3 of the form's own 7 numbered rows — see VERIFICATION.md).
classification: pii -
dependent3RelationshipstringRelationship of dependent 3 to the taxpayer (e.g. child, spouse, parent).
-
dependent3OibstringOIB of dependent 3.
patternclassification: sensitive-pii -
dependent3DisabilityMarkingenumDisability marking for dependent 3, when applicable: 'I' (invalid) or 'I*' (100% invalidity, or entitlement to assistance/care due to disability, or to the inclusive supplement). Left absent when the dependent has no disability marking.
enum: I | I_star -
dependent3PeriodFromdateStart date of the period during the tax year this dependent was claimed for dependent 3.
-
dependent3PeriodTodateEnd date of the period during the tax year this dependent was claimed for dependent 3.
-
dependent3PersonalDeductionSharedWithOibstringOIB of the other person the personal deduction for dependent 3 is split with, when the deduction is shared between two taxpayers (e.g. divorced parents).
patternclassification: sensitive-pii -
dependent3PersonalDeductionSharePercentagenumberPercentage of the personal deduction for dependent 3 claimed by this taxpayer, when split with another person.
range: 0–100 -
healthInsuranceContributionsPaidDomesticallynumberDomestic health-insurance contributions paid during the tax year, in EUR, that increase the taxpayer's personal deduction.
range: 0–∞classification: financial -
donationsGivennumberDonations given during the tax year, in EUR, that increase the taxpayer's personal deduction.
range: 0–∞classification: financial -
increasedPersonalDeductionTotalnumberTotal increase to the personal deduction: healthInsuranceContributionsPaidDomestically plus donationsGiven. This schema captures the value as declared and does not itself enforce the arithmetic relationship.
range: 0–∞classification: financial -
employer1OibstringOIB of employer/payer 1 for domestic wage income earned outside assisted areas and the City of Vukovar (row 1 of §4.1.1, capped at 3 of the form's own 6 numbered rows — see VERIFICATION.md).
patternclassification: sensitive-pii -
employer1GrossReceiptsnumberTotal gross receipts (wages) from employer 1, in EUR.
range: 0–∞classification: financial -
employer1MandatoryContributionsnumberMandatory contributions withheld from wages paid by employer 1, in EUR.
range: 0–∞classification: financial -
employer1IncomenumberTaxable income from employer 1 (gross receipts minus mandatory contributions). This schema captures the value as declared and does not itself enforce the arithmetic relationship.
range: 0–∞classification: financial -
employer1TaxPaidnumberAdvance income tax already paid on wages from employer 1, in EUR.
range: 0–∞classification: financial -
employer2OibstringOIB of employer/payer 2 for domestic wage income earned outside assisted areas and the City of Vukovar (row 2 of §4.1.1, capped at 3 of the form's own 6 numbered rows — see VERIFICATION.md).
patternclassification: sensitive-pii -
employer2GrossReceiptsnumberTotal gross receipts (wages) from employer 2, in EUR.
range: 0–∞classification: financial -
employer2MandatoryContributionsnumberMandatory contributions withheld from wages paid by employer 2, in EUR.
range: 0–∞classification: financial -
employer2IncomenumberTaxable income from employer 2 (gross receipts minus mandatory contributions). This schema captures the value as declared and does not itself enforce the arithmetic relationship.
range: 0–∞classification: financial -
employer2TaxPaidnumberAdvance income tax already paid on wages from employer 2, in EUR.
range: 0–∞classification: financial -
employer3OibstringOIB of employer/payer 3 for domestic wage income earned outside assisted areas and the City of Vukovar (row 3 of §4.1.1, capped at 3 of the form's own 6 numbered rows — see VERIFICATION.md).
patternclassification: sensitive-pii -
employer3GrossReceiptsnumberTotal gross receipts (wages) from employer 3, in EUR.
range: 0–∞classification: financial -
employer3MandatoryContributionsnumberMandatory contributions withheld from wages paid by employer 3, in EUR.
range: 0–∞classification: financial -
employer3IncomenumberTaxable income from employer 3 (gross receipts minus mandatory contributions). This schema captures the value as declared and does not itself enforce the arithmetic relationship.
range: 0–∞classification: financial -
employer3TaxPaidnumberAdvance income tax already paid on wages from employer 3, in EUR.
range: 0–∞classification: financial -
totalDomesticEmploymentIncomenumberUKUPNO 4.1.1.: total taxable income across all domestic employer/payer rows in §4.1.1. This schema captures the value as declared.
range: 0–∞classification: financial -
totalDomesticEmploymentTaxPaidnumberUKUPNO 4.1.1.: total advance tax paid across all domestic employer/payer rows in §4.1.1.
range: 0–∞classification: financial -
pensionPayer1OibstringOIB of pension payer 1 for domestic pension income (row 1 of §4.1.5, capped at 3 of the form's own 6 numbered rows — see VERIFICATION.md).
patternclassification: sensitive-pii -
pensionPayer1GrossAmountnumberTotal gross pension amount paid by pension payer 1, in EUR.
range: 0–∞classification: financial -
pensionPayer1MandatoryContributionsnumberMandatory contributions withheld from the pension paid by pension payer 1, in EUR.
range: 0–∞classification: financial -
pensionPayer1IncomenumberTaxable pension income from pension payer 1 (gross amount minus mandatory contributions). This schema captures the value as declared and does not itself enforce the arithmetic relationship.
range: 0–∞classification: financial -
pensionPayer1TaxPaidnumberAdvance income tax already paid on the pension from pension payer 1, in EUR.
range: 0–∞classification: financial -
pensionPayer2OibstringOIB of pension payer 2 for domestic pension income (row 2 of §4.1.5, capped at 3 of the form's own 6 numbered rows — see VERIFICATION.md).
patternclassification: sensitive-pii -
pensionPayer2GrossAmountnumberTotal gross pension amount paid by pension payer 2, in EUR.
range: 0–∞classification: financial -
pensionPayer2MandatoryContributionsnumberMandatory contributions withheld from the pension paid by pension payer 2, in EUR.
range: 0–∞classification: financial -
pensionPayer2IncomenumberTaxable pension income from pension payer 2 (gross amount minus mandatory contributions). This schema captures the value as declared and does not itself enforce the arithmetic relationship.
range: 0–∞classification: financial -
pensionPayer2TaxPaidnumberAdvance income tax already paid on the pension from pension payer 2, in EUR.
range: 0–∞classification: financial -
pensionPayer3OibstringOIB of pension payer 3 for domestic pension income (row 3 of §4.1.5, capped at 3 of the form's own 6 numbered rows — see VERIFICATION.md).
patternclassification: sensitive-pii -
pensionPayer3GrossAmountnumberTotal gross pension amount paid by pension payer 3, in EUR.
range: 0–∞classification: financial -
pensionPayer3MandatoryContributionsnumberMandatory contributions withheld from the pension paid by pension payer 3, in EUR.
range: 0–∞classification: financial -
pensionPayer3IncomenumberTaxable pension income from pension payer 3 (gross amount minus mandatory contributions). This schema captures the value as declared and does not itself enforce the arithmetic relationship.
range: 0–∞classification: financial -
pensionPayer3TaxPaidnumberAdvance income tax already paid on the pension from pension payer 3, in EUR.
range: 0–∞classification: financial -
totalDomesticPensionIncomenumberUKUPNO 4.1.5.: total taxable pension income across all domestic pension-payer rows in §4.1.5. This schema captures the value as declared.
range: 0–∞classification: financial -
totalDomesticPensionTaxPaidnumberUKUPNO 4.1.5.: total advance tax paid across all domestic pension-payer rows in §4.1.5.
range: 0–∞classification: financial -
reliefTaxExemptArtistIncomenumberTax-exempt receipts of independent artists, per čl. 20. Zakona o pravima samostalnih umjetnika i poticanju kulturnog i umjetničkog stvaralaštva.
range: 0–∞classification: financial -
reliefTaxExemptArtisticHonorariumnumberTax-exempt portion of an artistic honorarium, per čl. 22. Zakona o pravima samostalnih umjetnika i poticanju kulturnog i umjetničkog stvaralaštva.
range: 0–∞classification: financial -
reliefRepresentationCostsnumberTax-recognized representation costs, per čl. 33. st.1. t.1. Zakona o porezu na dohodak.
range: 0–∞classification: financial -
reliefPensionersAndAssistedAreaResidentsnumberTax reduction for pensioners and for residents of assisted areas/the City of Vukovar, per čl. 46. st.1. Zakona o porezu na dohodak.
range: 0–∞classification: financial -
reliefHrvinumberTax reduction for Croatian war-disabled veterans (HRVI), per čl. 42. st.1. Zakona o porezu na dohodak.
range: 0–∞classification: financial -
reliefAssistedAreasAndVukovarnumberTax reduction for assisted areas and the City of Vukovar, per čl. 43. Zakona o porezu na dohodak.
range: 0–∞classification: financial -
reliefUnder25numberTax reduction for individuals under 25 years of age, per čl. 46. st.2. Zakona o porezu na dohodak.
range: 0–∞classification: financial -
relief26To30numberTax reduction for individuals aged 26 to 30, per čl. 46. st.2. Zakona o porezu na dohodak.
range: 0–∞classification: financial -
reliefCroatianEmigrantsnumberTax reduction for Croatian emigrants to overseas and European countries, per čl. 46. st.3. i 4. Zakona o porezu na dohodak.
range: 0–∞classification: financial -
listOfAttachedDocumentsstringFree-text list of the supporting documents the taxpayer attaches to this declaration. The paper form provides blank lines rather than a predefined checklist.
-
taxpayerNotesstringOptional free-text notes from the taxpayer, representative, or tax advisor.
-
declarationDatedate requiredDate the declaration is signed. The form itself splits this into day/month/year boxes; modelled here as one ISO 8601 date, consistent with this registry's convention elsewhere.
Verification record
This file is the source-review record for this document version, per the manual-source-review-v1 practice. It documents the provenance of the published fields and states the current verification claim honestly.
Current claim
status:draftverification.method:manual-source-review-v1verification.lastVerifiedAt:2026-07-14
This is a GovSchema Standard Research cycle (GOV-2883). Croatia was not previously in the registry (51 jurisdictions existed at the start of this cycle). This document opens Croatia as the registry's 52nd jurisdiction, via the Taxes vertical.
Why this candidate
Croatia's Ministry of Finance / Tax Administration (Porezna uprava) publishes an annual personal income tax return, "PRIJAVA POREZA NA DOHODAK" (internally referenced here as Obrazac DOH), directly and unauthenticated from its own document host. It is a genuine, current, 8-page text-layer PDF (confirmed not scanned, via pdfjs-dist text extraction), with no AcroForm widget layer — a static hand-fill/print template, the same pattern this registry already applies to Poland's PIT-37 and Bulgaria's Обр. 2001. Its own printed section numbers and column headers are fully self-documenting.
Sources examined
Source 1 (primary source, the form)
- Authority: Porezna uprava (Croatian Tax Administration), a body within Ministarstvo financija (Ministry of Finance).
- URL:
https://porezna-uprava.gov.hr/UserDocsImages/Dokumenti%20obrasci/DOH.pdf - Retrieved / reviewed: 2026-07-14, independently re-fetched this cycle with
curl. - HTTP status: 200. Content-Type:
application/pdf. Size: 271,486 bytes. sha256:506fdc3469a457a60bdd71f924c379d7daf10a4ab2f2d5f83068b08b548c152c(independently computed this cycle withsha256sum, not trusted from any prior report). - Extraction method: downloaded directly, then parsed with
pdfjs-dist(legacy/build/pdf.js, CommonJSrequire, matching this registry's established technique for this environment, which has nopdftotext/pdftoppm).page.getAnnotations()returned zero Widget annotations across all 8 pages — confirming a static, print/hand-fill template, not a fillable AcroForm PDF — sopage.getTextContent()was used instead, reading the form's own printed section numbers (1-8, with sub-sections like 4.1.1-4.1.8) and column headers across all 8 pages, in full, independently of any prior extraction. - What it confirms: every field this document models, verbatim, including the closed enum values for
dependentXDisabilityMarking("I"/"I*"); the exact 9-row relief table in Section 6 with its inline statute citations (čl. 20, čl. 22, čl. 33 st.1 t.1, čl. 46 st.1, čl. 42 st.1, čl. 43, čl. 46 st.2 (×2), čl. 46 st.3-4, all "Zakona" = Zakon o porezu na dohodak); and the exact closing declaration text used indocuments[].signatureDeclaration, "ZA ISTINITOST I VJERODOSTOJNOST PODATAKA JAMČIM VLASTITIM POTPISOM." - What it does NOT print: unlike Poland's PIT-37, the Obrazac DOH PDF's own text carries no explicit "pravna osnova"/legal-basis citation line naming the enabling statute and article.
authority.operatedBy.basisis therefore drawn from independent research (Source 2 below), not the form's own printed text — a disclosed difference from the PIT-37 precedent.
Source 2 (governing legislation, for authority.operatedBy.basis)
Independent web research (not the form's own printed text) located:
- Zakon o porezu na dohodak (Income Tax Act), consolidated at
zakon.hr/z/85/zakon-o-porezu-na-dohodak, originally Narodne novine 115/16, subsequently amended by 106/18, 121/19, 32/20, 138/20, 151/22, and 114/23. This is the primary statute establishing personal income tax and the annual-return obligation; the form's own Section 6 relief table cites several of its articles inline (see above) as "Zakona" without repeating the full title, confirming this is the statute the form itself means. - Pravilnik o porezu na dohodak (Income Tax Ordinance), the implementing regulation, Narodne novine 10/17, subsequently amended through 143/23 (per
zakon.hr/c/podzakonski-propis/18269/...and the Porezna uprava's ownporezna-uprava.gov.hr/hr/pravilnik-o-dopunama-pravilnika-o-porezu-na-dohodak/6790page). This is the regulation that prescribes return procedures and forms. - What was NOT independently pinned down: the exact article number of the Zakon that specifically mandates filing an annual return (a WebFetch pass over the consolidated
zakon.hrtext found references to "godišnja porezna prijava" scattered across Articles 13, 26, and others in the personal-deduction/tax-card context, but the page's visible content was truncated before reaching the later "UTVRĐIVANJE I NAPLATA POREZA NA DOHODAK" (assessment and collection) chapter that most likely contains the specific filing-obligation article). Rather than guess a specific article number the form itself does not print and this cycle could not independently confirm,authority.operatedBy.basiscites the Zakon and Pravilnik by their Narodne novine numbers only, without a specific article citation — a narrower, more honest claim than PIT-37's (whose exact article was printed on the form itself).
Candidates screened this cycle — Croatia's other five verticals
Per this cycle's brief, all five of Croatia's other verticals were screened via WebSearch/WebFetch before committing to Taxes as the opening vertical. None had been screened in any prior cycle (Croatia was not yet in the registry).
- DMV — driving-licence issuance (vozačka dozvola).
mup.gov.hr(https://mup.gov.hr/vozacka-dozvola-332/332) states plainly: "Obrazac zahtjeva za izdavanje vozačke dozvole ispisuje službenik na šalteru, a podnositelj zahtjeva svojim potpisom na obrascu potvrđuje točnost ispisanih podataka" (the application form is printed by the clerk at the counter from the Ministry's own information system; the applicant only signs to confirm the printed data's accuracy). Dead end — no public blank template exists to distribute. - DMV — vehicle registration (registracija vozila / prometna dozvola). Registration is handled in person at a Stanica za tehnički pregled vozila (licensed vehicle-inspection station; see
cvh.hrandmup.gov.hr/gradjani-281562/moji-dokumenti-281563/registracija-vozila-331/331). The owner presents proof of ownership and payment of statutory fees/ duties/insurance in person; no standalone downloadable application template was found. Dead end, same officer/station-mediated pattern as driving-licence issuance. - Business Formation — obrt (craft/trade business) registration. Found a genuine, directly downloadable, unauthenticated form: "Prijava za upis u Obrtni registar" at
https://portor.gov.hr/dokumenti/OR_prijava_za_upis_u_obrtni_registar.doc— independently re-fetched this cycle: HTTP 200,Content-Type: application/msword, 141,824 bytes, sha256cb809f58ad127ef7297d0e8921fda811f50d2524d1005d65cfabbdd7a767303e. This is a strong candidate, structurally similar to Bulgaria's OKD-5 (a Word-format, not AcroForm, source). Not authored this cycle (this cycle's brief scoped Croatia's opening to Taxes only); left as open, ready-to-author backlog for a future cycle. - Visa — long-term (Type D) national visa. MVEP (Ministry of Foreign and European Affairs) publishes
https://mvep.gov.hr/UserDocsImages/dokumenti/obrasci/LongtermVisaApplication-English.pdf(and a Croatian-language mirror) — independently re-fetched this cycle: HTTP 200,application/pdf, 670,331 bytes. Extracted withpdfjs-distand compared field-by-field against the already-modelled EU-harmonized long-stay-visa template (de/auswaertiges-amt/national-visa-application,bg/mvnr/zayavlenie-za-izdavane-na-natsionalna-viza-tip-d,es/maec/solicitud-visado-nacional): the same 30-numbered-field sequence (surname(s)/family name(s), former family name(s), first name(s), date of birth, place of birth, country of birth, current nationality, sex, marital status, national identity number, travel-document details, home address, residence in a third country, occupation/employer, temporary-stay purpose, family-reunification relationship, intended accommodation address, closing HVIS data-protection declaration, etc.), confirming this is the same EU long-stay (Type D) visa template lineage already modelled multiple times in this registry. Confirmed a duplicate, not authored, per this registry's established precedent for this exact template (see e.g.pl/mf/zeznanie-pit-37's VERIFICATION.md, which reached the same conclusion for Poland's equivalent form). - Passport (putovnica).
mup.gov.hrandeputovnica.mup.hrdescribe the process: either an in-person application where a police-authority clerk enters the applicant's data electronically, or (for an existing passport holder with a Croatian eID no older than one year) a fully online e-Zahtjev submission through e-Građani — no downloadable blank application template is distributed in either channel. Dead end, same officer/system-mediated pattern this cycle found for DMV. - National ID (osobna iskaznica).
mup.gov.hrand multiple secondary sources (expatincroatia.com,welcome-center-croatia.com) confirm: "the official at the counter prints the request form with data from the Ministry of Interior's Information System, and the party confirms the accuracy and truthfulness of the entered data with their signature" — the applicant provides fingerprints and a signature but never fills a blank public template. Dead end, the same pattern as passport and driving licence — Croatia's MUP-issued civil identity documents are uniformly officer/system-mediated at the counter, not distributed as blank downloadable forms.
Summary: Taxes (this document) and Business Formation (obrt, strong, unauthored backlog) are Croatia's two vetted-open verticals; DMV, Passport, and National ID are all confirmed dead ends this cycle (officer/system- mediated, no public blank template); Visa is a confirmed duplicate of an already-modelled EU-harmonized template.
Field inventory (Phase 2)
All 86 fields[] entries and the 1 documents[] entry, and their exact Obrazac DOH position reference, are listed inline in schema.json's own sourceRef per field/document. Summary by section:
| Section | Representative fields | Modelled scope | |---|---|---| | Header | taxYear, taxOfficeAndBranch | Full | | §1 Opći podaci | fullNameAndParentName, residentialAddress, phone, email, oib, assistedAreaOrVukovarResident, bankAccountNumber, bankNameAndSeat, representativeName, representativeAddress, representativeOib (11 fields) | Full for §1.1-1.4, 1.7, 1.8; §1.5 (multi-period residence table) and §1.6 (HRVI disability-status table) excluded as narrow edge cases outside the salaried-employee/pensioner scope | | §2 Uzdržavani članovi uže obitelji | dependent1..3 × 8 sub-fields (24 fields) | Bounded repeating group capped at 3 of the paper form's own 7 numbered rows | | §3 Uvećanje osobnog odbitka | healthInsuranceContributionsPaidDomestically, donationsGiven, increasedPersonalDeductionTotal (3 fields) | Full | | §4.1.1 Plaća ostvarena u tuzemstvu izvan potpomognutih područja | employer1..3 × 5 sub-fields + 2 totals (17 fields) | Bounded repeating group capped at 3 of the paper form's own 6 numbered rows, plus its UKUPNO total | | §4.1.5 Mirovina ostvarena u tuzemstvu | pensionPayer1..3 × 5 sub-fields + 2 totals (17 fields) | Structured and capped identically to §4.1.1 | | §6 Olakšice, oslobođenja i poticaji | 9 relief amount fields | Full — flat 9-row table | | §7 Popis priloženih isprava | listOfAttachedDocuments | Full, modelled as free text (the paper form itself is blank lines, not a predefined checklist) | | §8 Napomene / declaration | taxpayerNotes, declarationDate, documents[].signatureDeclaration | Full |
Total: 86 fields[] entries (7 required: true) plus 1 documents[] entry (a required attestation). No crossFieldValidation rules or exclusivityGroups are modelled.
Access notes and judgment calls
- Scope mirrors the PIT-37/PL precedent: the salaried-employee/pensioner case only, not the whole form. Excluded, and disclosed in the schema's own
description: §1.5 (multi-period residence table) and §1.6 (HRVI war-disabled-veteran disability-status table), both narrow pathways; §4.1.2/4.1.3/4.1.4 (wages earned in assisted areas/Vukovar, or abroad) and §4.1.6 (foreign pension income); §4.1.7 (a computed total chained off the unmodelled foreign-income rows) and §4.1.8 (HRVI-exempt income); §4.2 (other income — board fees, royalties, artist/sportsperson income, sales- agent commissions, prizes, student work, journalist/athlete honoraria); §4.3 (self-employment/crafts/freelance/agriculture income — the form's single most complex section, with its own loss-carryforward and social- contribution sub-calculations); and §5 (the grand-total figure, which sums across the unmodelled §4.2/§4.3 sections and so cannot be correctly derived from this schema's field set). - Bounded repeating groups capped at 3, not the paper form's own 6-7 row capacity, for §2 (dependents, form has 7 rows), §4.1.1 (employers, form has 6 rows), and §4.1.5 (pension payers, form has 6 rows). This mirrors this registry's established convention (e.g.
gb/hmrc/child-benefit- claim-ch2capping at the form's own capacity,se/migrationsverket/work- permit-applicationmodelling up to 5 children) of choosing a reasonable, disclosed cap rather than either silently truncating without disclosure or mechanically modelling every possible row; 3 covers the overwhelming majority of real filers (most taxpayers have at most a handful of dependents and 1-3 employers/pension payers in a given year) while keeping the schema's size proportionate to its "most common case" scope. - **
increasedPersonalDeductionTotal(§3.3),employerXIncome/employerXTaxPaidtotals, andpensionPayerXIncome/totalDomestic*totals are modelled as plain declared values, not computed.** Each is directly derivable from other fields this schema does model (unlike PIT-37's excluded computed-arithmetic chain, which depended on unmodelled income categories), so including them as declared figures — the same treatment PIT-37 gaveemploymentTaxableIncome(poz. 54, dependent only on two already-modelled fields) — is consistent with this registry's practice; this schema does not itself enforce the arithmetic. oibfields use an 11-digit pattern (^[0-9]{11}$), Croatia's fixed- length OIB (Osobni identifikacijski broj) format, applied uniformly to the taxpayer, representative, dependents, employers, and pension payers (OIB is used for both natural and legal persons in Croatia).- **
dependentXDisabilityMarkingmodels the form's own "I ili I*" distinction as a 2-value enum** (I,I_star), left absent (not a third enum value) when the dependent carries no disability marking at all — consistent with this registry's convention of using field absence, not an explicit "none" enum value, to represent "not applicable." - Money fields use
type: "number"with only aminimum: 0constraint, consistent with this registry's established convention for EUR-denominated amounts (e.g.pl/mf/zeznanie-pit-37's złoty/grosz fields), rather than a stricter 2-decimal-place pattern. bankAccountNumber/bankNameAndSeatandrepresentativeName/representativeAddress/representativeOibare all optional (requiredomitted/false), since not every filer nominates a refund account or files through a representative/tax advisor — the form itself leaves these blank when inapplicable.- Section 7 (
listOfAttachedDocuments) is modelled as a plain string field, not adocuments[]entry. Unlike PIT-37's PIT/O annex (a named, specific attachment with its own conditional trigger), the Obrazac DOH's §7 is literally blank lines for the filer to freely list whatever they attach — there is no predefined document-type vocabulary printed on the form to model as distinctdocuments[]entries. authority.operatedBy.basiscites the Zakon o porezu na dohodak and Pravilnik o porezu na dohodak by their Narodne novine numbers, without a specific article citation for the annual-filing obligation — see "Sources examined, Source 2" above for why a more specific citation (matching PIT-37's precedent of quoting the form's own printed "Podstawa prawna" line) was not available: the Obrazac DOH PDF prints no such line, and this cycle's research could not conclusively pin the exact article number from the consolidated statute text before it was truncated.
Test run (Phase 3)
No live submission was attempted: Porezna uprava's e-Porezna online-filing channel is an authenticated, session-based system requiring a real certificate/token-based login, and the paper channel requires mailing or hand-delivering an original signed form to a tax office — submitting fabricated taxpayer data against Croatia's live tax administration is not a safe or reversible action.
Instead, this document's own structural validity was confirmed with this registry's standard tooling:
``` $ node tools/validate.mjs registry/hr/porezna-uprava/prijava-poreza-na-dohodak/1.0.0/schema.json ok registry/hr/porezna-uprava/prijava-poreza-na-dohodak/1.0.0/schema.json
1/1 document(s) passed.
$ node tools/validate-ajv.mjs registry/hr/porezna-uprava/prijava-poreza-na-dohodak/1.0.0/schema.json ok registry/hr/porezna-uprava/prijava-poreza-na-dohodak/1.0.0/schema.json [v0.3]
1/1 document(s) validated against the meta-schema (ajv 2020-12). ```
A full-registry run after regenerating tools/govschema-client/registry-index.json (via npm run build-index) confirms no regression:
`` $ node tools/validate.mjs 425/425 document(s) passed. 3/3 mapping.json companion(s) passed. ``
(Up from 424/424 on main before this document was added — independently re-confirmed by stashing this branch's changes and re-running the validator against main's own working tree, rather than trusting a prior count.)
View the raw record (VERIFICATION.md)
Version history
-
1.0.0draftlatestthis pagehas verification recordschema.json
Independent and non-affiliated
GovSchema is an independent, open-source project. This reference is not produced, reviewed, or endorsed by Porezna uprava or any government. The authoritative source is always the live government form and its official instructions.