Registry entry

Moldova — SFS Form CET18, Individual's Declaration Regarding Income Tax (Declarația persoanei fizice cu privire la impozitul pe venit)

The State Tax Service's (Serviciul Fiscal de Stat, SFS) Form CET18, the annual individual income tax declaration, published as Annex 1 to Order of the Minister of Finance No. 150 of September 5, 2018. Filed by individuals not engaged in entrepreneurial activity who have a tax payment obligation, who elect to direct a percentage of their computed annual income tax to a designated beneficiary, or who are resident individuals that used the personal exemption and obtained annual taxable income above the statutory threshold; the statutory deadline is April 30 following the fiscal period declared. This opens Moldova's Taxes vertical (Moldova's third schema in this registry, following DMV via ASP's vehicle-registration request form, GOV-3157, and Business Formation via ASP's sole-proprietor registration form, GOV-3115; Moldova now stands at 3 of 6 verticals). This is a whole-of-form schema covering: Section 1 (General Information — taxpayer category, citizenship, identity, domicile, fiscal codes of the taxpayer/spouse/dependents, and contact details); Section 2 (the resident individual's tax computation — item C's personal-income table across salary, capital gain, foreign-source, investment, dividend, interest, and royalty income; item D's exemptions; item E's deductions, plus Table 1's bounded 3-row expense-substantiation schedule for deduction codes E3-E7; and item F's income-tax computation through the final payable/overpaid figures); Section 3 (the non-resident individual's parallel tax computation — item H's personal-income table and item J's income-tax computation); Section 4 (item K's bounded 5-row capital gain/loss schedule, referenced by both Section 2's and Section 3's own capital-gain lines via item K8, using the form's own closed asset-type and disposition-type code legends); Section 5 (the optional 2%-style percentage tax designation, item M); and the closing declaration/submission-date block, modeled as a documents[] attestation entry. Two genuine source-printed formula artifacts are disclosed rather than silently corrected: item D7's own total-exemptions formula, "(D1 sau D2) + D4 + (D5+D6)", excludes D3 (the base, non-increased spousal exemption); and item H8 (dividend income) is printed as its own line directly after the H7 subtotal rather than folded into H1-H6. Out of scope for this version, disclosed rather than silently omitted: the form's own back-office intake block (the tax official's stamp and signature acknowledging receipt), which is staff-completed data the taxpayer never supplies. This document describes the form only; it does not submit anything to the State Tax Service on a taxpayer's behalf, and does not imply endorsement by the Republic of Moldova or the Serviciul Fiscal de Stat. GovSchema is an independent, non-profit standards body.

Registry entry

md/sfs/cet18-individual-income-tax-declaration

Jurisdiction
Moldova · national
Version
1.0.0
Verification
draft

Authoritative source Form CET18, "Declarația persoanei fizice cu privire la impozitul pe venit" (Annex 1 to Order of the Minister of Finance No. 150 of September 5, 2018)

Machine access

Registry catalog
registry/index.jsonone record per schema id

Field reference

143 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

  • fiscalPeriod string required

    The fiscal year this declaration covers, entered on the form's own title-block blank line.

  • taxpayerCategory enum required

    The individual taxpayer's category, from a flat set of five checkboxes. A1-A3 and A5 are Moldovan citizens or foreign citizens resident in Moldova for tax purposes, whose income is computed in Section 2 (item C onward); A4 (foreign citizen non-resident/stateless) computes income in Section 3 (item H onward) instead.

    enum: A1_MOLDOVAN_CITIZEN | A2_MOLDOVAN_CITIZEN_CHANGING_DOMICILE | A3_OTHER_CATEGORY | A4_FOREIGN_NON_RESIDENT_OR_STATELESS | A5_FOREIGN_RESIDENT_FOR_TAX_PURPOSES
  • citizenship string optional

    The taxpayer's foreign citizenship/residence. The source form prints this same blank line twice, once directly under option A4 ("Cetățenia (rezidența)") and again under option A5 ("Cetățenia") — modeled once, since both blanks capture the identical concept for whichever of the two foreign-citizen categories applies.

  • lastName string required

    B1. Last Name

  • firstName string required

    B2. First Name

  • domicileLocality string required

    B3. Domicile/Residence — Locality

  • domicileStreet string required

    B3. Domicile/Residence — Street

  • domicileNumber string optional

    Modeled optional: not every address includes a distinct building number.

  • domicileApartment string optional

    Modeled optional: not every address includes an apartment number.

  • taxpayerFiscalCode string required

    B4. Taxpayer's Fiscal Code

  • spouseFiscalCode string optional

    Modeled optional: not every taxpayer is married.

  • dependentsFiscalCodes string optional

    The fiscal codes of the taxpayer's dependents. The source form prints up to six blank slots arranged as a comma-separated list; modeled as a single comma-separated string field rather than six fixed slots, since the source itself groups them as one running list rather than six independently labeled fields.

  • phoneNumber string optional

    Modeled optional per this form's own footnote: "Necompletarea poziției B7 nu va genera aplicarea sancțiunilor prevăzute în art.260 din Codul fiscal" (not completing B7 will not trigger the sanctions in art.260 of the Fiscal Code).

  • emailAddress string optional

    Modeled optional, per the same B7 footnote as phoneNumber.

    pattern
  • fiscalMessageDissemination boolean optional

    Whether the taxpayer consents to receiving fiscal-character messages via the contact details given above.

  • c1SalaryIncome number optional

    Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c1SalaryTaxWithheld number optional

    C1. Salary Income — Tax Withheld at Source

    range: 0–∞
  • c2CapitalGainIncome number optional

    Restates the taxable capital gain computed in item K8 (Section 4). Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c2CapitalGainTaxWithheld number optional

    C2. Capital Gain Income — Tax Withheld at Source

    range: 0–∞
  • c3ForeignSourceIncome number optional

    Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c3ForeignSourceTaxWithheld number optional

    C3. Income from Sources Outside Moldova — Tax Withheld

    range: 0–∞
  • c31InvestmentIncome number optional

    Sub-item of C3. Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c31InvestmentTaxWithheld number optional

    C3.1. Investment Income — Tax Withheld

    range: 0–∞
  • c311DividendIncome number optional

    Sub-item of C3.1. Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c311DividendTaxWithheld number optional

    C3.1.1. Dividend Income — Tax Withheld

    range: 0–∞
  • c32FinancialIncome number optional

    Sub-item of C3. Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c32FinancialTaxWithheld number optional

    C3.2. Financial Income — Tax Withheld

    range: 0–∞
  • c321InterestIncome number optional

    Sub-item of C3.2. Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c321InterestTaxWithheld number optional

    C3.2.1. Interest Income — Tax Withheld

    range: 0–∞
  • c322RoyaltyIncome number optional

    Sub-item of C3.2. Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c322RoyaltyTaxWithheld number optional

    C3.2.2. Royalty Income — Tax Withheld

    range: 0–∞
  • c4OtherTaxableIncome number optional

    Part of Section 2 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ REZIDENTĂ A REPUBLICII MOLDOVA", Computation of the tax obligation for a resident individual), applicable when taxpayerCategory is A1/A2/A3/A5. Modeled optional: this is a whole-of-form declaration and not every resident taxpayer has income in every category.

    range: 0–∞
  • c4OtherTaxWithheld number optional

    C4. Other Taxable Income — Tax Withheld

    range: 0–∞
  • c5TotalIncome number optional

    The form's own printed formula: sum of C1+C2+C3+C4 (the top-level rows only; the C3.1/C3.1.1/C3.2/C3.2.1/C3.2.2 sub-items are already folded into C3 and not added again).

    range: 0–∞
  • c5TotalTaxWithheld number optional

    C5. Total Tax Withheld

    range: 0–∞
  • d1PersonalExemption number optional

    Part of Section 2 (resident individual computation). Modeled optional: exemptions apply only where the taxpayer is eligible and elects to claim them.

    range: 0–∞
  • d2IncreasedPersonalExemption number optional

    Part of Section 2 (resident individual computation). Modeled optional: exemptions apply only where the taxpayer is eligible and elects to claim them.

    range: 0–∞
  • d3SpousalExemption number optional

    Part of Section 2 (resident individual computation). Modeled optional: exemptions apply only where the taxpayer is eligible and elects to claim them.

    range: 0–∞
  • d4IncreasedSpousalExemption number optional

    Part of Section 2 (resident individual computation). Modeled optional: exemptions apply only where the taxpayer is eligible and elects to claim them.

    range: 0–∞
  • d5DependentsExemption number optional

    Part of Section 2 (resident individual computation). Modeled optional: exemptions apply only where the taxpayer is eligible and elects to claim them.

    range: 0–∞
  • d6DisabledDependentsExemption number optional

    Part of Section 2 (resident individual computation). Modeled optional: exemptions apply only where the taxpayer is eligible and elects to claim them.

    range: 0–∞
  • d7TotalExemptions number optional

    The form's own printed formula: (D1 or D2) + D4 + (D5+D6) — notably excluding D3 (the base, non-increased spousal exemption) from this total, exactly as printed on the form; a genuine source artifact, reproduced rather than corrected.

    range: 0–∞
  • e1MandatoryHealthInsurance number optional

    Part of Section 2 (resident individual computation). Modeled optional: deductions apply only where the taxpayer incurred the underlying qualifying expense.

    range: 0–∞
  • e2FixedSocialInsuranceContributions number optional

    Part of Section 2 (resident individual computation). Modeled optional: deductions apply only where the taxpayer incurred the underlying qualifying expense.

    range: 0–∞
  • e3VoluntaryHealthInsurance number optional

    Part of Section 2 (resident individual computation). Modeled optional: deductions apply only where the taxpayer incurred the underlying qualifying expense.

    range: 0–∞
  • e4SingleProviderMedicalServices number optional

    Part of Section 2 (resident individual computation). Modeled optional: deductions apply only where the taxpayer incurred the underlying qualifying expense.

    range: 0–∞
  • e5LifeHealthFireInsurancePremiums number optional

    Part of Section 2 (resident individual computation). Modeled optional: deductions apply only where the taxpayer incurred the underlying qualifying expense.

    range: 0–∞
  • e6FirstHomeMortgageInterest number optional

    Part of Section 2 (resident individual computation). Modeled optional: deductions apply only where the taxpayer incurred the underlying qualifying expense. Excludes interest paid under a state-program credit contract, per the form's own text.

    range: 0–∞
  • e7DependentsEducationExpenses number optional

    Part of Section 2 (resident individual computation). Modeled optional: deductions apply only where the taxpayer incurred the underlying qualifying expense.

    range: 0–∞
  • e8OtherDeductions number optional

    Part of Section 2 (resident individual computation). Modeled optional: deductions apply only where the taxpayer incurred the underlying qualifying expense.

    range: 0–∞
  • e9TotalDeductions number optional

    The form's own printed formula: sum of E1 through E8.

    range: 0–∞
  • totalExemptionsAndDeductions number optional

    The form's own printed formula: D7 + E9.

    range: 0–∞
  • f1TaxableIncomeBeforeDonation number optional

    The form's own printed formula: C5 (gross income, tax-withheld column) − DE (total exemptions and deductions). Part of Section 2 (resident individual computation).

  • f2DonationAmount number optional

    Part of Section 2 (resident individual computation).

    range: 0–∞
  • f3DonationIncomeDetermination number optional

    The form's own printed formula: the positive value, if any, of F2 minus total income obtained during the fiscal period. Part of Section 2 (resident individual computation).

    range: 0–∞
  • f4TaxableIncome number optional

    The form's own printed formula: F1 + F3. Part of Section 2 (resident individual computation).

  • f5IncomeTaxComputed number optional

    Computed by applying the resident individual income tax rate in force for the declared period (art.15 of the Fiscal Code) to F4. Part of Section 2 (resident individual computation).

    range: 0–∞
  • f6TaxReflectedInPersonalFile number optional

    The form's own printed formula: F5 minus C5's tax-withheld-at-source column. Part of Section 2 (resident individual computation).

  • f7TaxPaidIndependently number optional

    Part of Section 2 (resident individual computation).

    range: 0–∞
  • f8TaxPayable number optional

    Completed only when F6 − F7 is positive. Part of Section 2 (resident individual computation).

    range: 0–∞
  • f9TaxOverpaid number optional

    Completed only when F6 − F7 is negative; entered without its sign. Part of Section 2 (resident individual computation).

    range: 0–∞
  • table1Row1ExpenseCode enum optional

    Row 1 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

    enum: E3 | E4 | E5 | E6 | E7
  • table1Row1SupportingDocumentType string optional

    Row 1 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row1DocumentNumber string optional

    Row 1 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row1DocumentDate date optional

    Row 1 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row1ProviderFiscalCode string optional

    Row 1 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row1ProviderName string optional

    Row 1 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row1ExpenseAmount number optional

    Row 1 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

    range: 0–∞
  • table1Row2ExpenseCode enum optional

    Row 2 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

    enum: E3 | E4 | E5 | E6 | E7
  • table1Row2SupportingDocumentType string optional

    Row 2 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row2DocumentNumber string optional

    Row 2 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row2DocumentDate date optional

    Row 2 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row2ProviderFiscalCode string optional

    Row 2 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row2ProviderName string optional

    Row 2 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row2ExpenseAmount number optional

    Row 2 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

    range: 0–∞
  • table1Row3ExpenseCode enum optional

    Row 3 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

    enum: E3 | E4 | E5 | E6 | E7
  • table1Row3SupportingDocumentType string optional

    Row 3 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row3DocumentNumber string optional

    Row 3 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row3DocumentDate date optional

    Row 3 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row3ProviderFiscalCode string optional

    Row 3 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row3ProviderName string optional

    Row 3 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

  • table1Row3ExpenseAmount number optional

    Row 3 of 3 of Tabelul nr.1 ("Deducerea cheltuielilor suportate de către persoana fizică conform codurilor E3 – E7"), the bounded 3-row expense-substantiation schedule for deductions E3 through E7. The source form's own printed grid provides exactly 3 blank rows; a taxpayer with more than 3 substantiated expense entries has no further row on this form.

    range: 0–∞
  • h1SalaryIncome number optional

    Salary income diminished by mandatory health insurance premiums paid per legislation (art. 71 letters n) and o) of the Fiscal Code). Part of Section 3 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ NEREZIDENTĂ", Computation of the tax obligation for a non-resident individual), applicable when taxpayerCategory is A4. Modeled optional: this is a whole-of-form declaration and not every non-resident taxpayer has income in every category.

    range: 0–∞
  • h1SalaryTaxWithheld number optional

    H1. Salary Income — Tax Withheld at Source

    range: 0–∞
  • h2LeaseRentIncome number optional

    Part of Section 3 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ NEREZIDENTĂ", Computation of the tax obligation for a non-resident individual), applicable when taxpayerCategory is A4. Modeled optional: this is a whole-of-form declaration and not every non-resident taxpayer has income in every category.

    range: 0–∞
  • h2LeaseRentTaxWithheld number optional

    H2. Leasing/Rental/Usufruct Income — Tax Withheld

    range: 0–∞
  • h3CapitalGainIncome number optional

    Restates the taxable capital gain computed in item K8 (Section 4). Part of Section 3 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ NEREZIDENTĂ", Computation of the tax obligation for a non-resident individual), applicable when taxpayerCategory is A4. Modeled optional: this is a whole-of-form declaration and not every non-resident taxpayer has income in every category.

    range: 0–∞
  • h3CapitalGainTaxWithheld number optional

    H3. Capital Gain Income — Tax Withheld

    range: 0–∞
  • h4InterestIncome number optional

    Part of Section 3 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ NEREZIDENTĂ", Computation of the tax obligation for a non-resident individual), applicable when taxpayerCategory is A4. Modeled optional: this is a whole-of-form declaration and not every non-resident taxpayer has income in every category.

    range: 0–∞
  • h4InterestTaxWithheld number optional

    H4. Interest Income — Tax Withheld

    range: 0–∞
  • h5RoyaltyIncome number optional

    Part of Section 3 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ NEREZIDENTĂ", Computation of the tax obligation for a non-resident individual), applicable when taxpayerCategory is A4. Modeled optional: this is a whole-of-form declaration and not every non-resident taxpayer has income in every category.

    range: 0–∞
  • h5RoyaltyTaxWithheld number optional

    H5. Royalty Income — Tax Withheld

    range: 0–∞
  • h6OtherIncome number optional

    Other income obtained by the non-resident individual in Moldova, excluding income already reported in H1-H5. Part of Section 3 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ NEREZIDENTĂ", Computation of the tax obligation for a non-resident individual), applicable when taxpayerCategory is A4. Modeled optional: this is a whole-of-form declaration and not every non-resident taxpayer has income in every category.

    range: 0–∞
  • h6OtherTaxWithheld number optional

    H6. Other Income — Tax Withheld

    range: 0–∞
  • h7TotalIncome number optional

    The form's own printed formula: sum of H1 through H6. Part of Section 3 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ NEREZIDENTĂ", Computation of the tax obligation for a non-resident individual), applicable when taxpayerCategory is A4. Modeled optional: this is a whole-of-form declaration and not every non-resident taxpayer has income in every category.

    range: 0–∞
  • h7TotalTaxWithheld number optional

    H7. Total — Tax Withheld

    range: 0–∞
  • h8DividendIncome number optional

    Printed as its own item directly after the H7 total rather than among H1-H6, a genuine layout feature of the source reproduced as-is (dividends of a non-resident individual are taxed distinctly from the H1-H6 categories). Part of Section 3 ("CALCULUL OBLIGAȚIEI FISCALE PENTRU PERSOANA FIZICĂ NEREZIDENTĂ", Computation of the tax obligation for a non-resident individual), applicable when taxpayerCategory is A4. Modeled optional: this is a whole-of-form declaration and not every non-resident taxpayer has income in every category.

    range: 0–∞
  • h8DividendTaxWithheld number optional

    H8. Dividend Income — Tax Withheld

    range: 0–∞
  • j1IncomeTaxComputed number optional

    Computed by applying the non-resident individual income tax rate in force for the declared period (art.91 of the Fiscal Code) to H7. Part of Section 3 (non-resident individual computation).

    range: 0–∞
  • j2TaxReflectedInPersonalFile number optional

    The form's own printed formula: J1 minus H7's tax-withheld-at-source column. Part of Section 3 (non-resident individual computation).

  • j3TaxPaidIndependently number optional

    Part of Section 3 (non-resident individual computation).

    range: 0–∞
  • j4TaxPayable number optional

    Completed only when J2 − J3 is positive. Part of Section 3 (non-resident individual computation).

    range: 0–∞
  • j5TaxOverpaid number optional

    Completed only when J2 − J3 is negative; entered without its sign. Part of Section 3 (non-resident individual computation).

    range: 0–∞
  • capitalRow1AssetCode enum optional

    Row 1 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: 7 values
  • capitalRow1DispositionCode enum optional

    Row 1 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: VIN | DON | SCH | AMS
  • capitalRow1AmountReceived number optional

    Row 1 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow1TransactionDate date optional

    Row 1 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

  • capitalRow1AdjustedBasis number optional

    Row 1 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow1GainAmount number optional

    Row 1 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow1LossAmount number optional

    Row 1 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow2AssetCode enum optional

    Row 2 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: 7 values
  • capitalRow2DispositionCode enum optional

    Row 2 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: VIN | DON | SCH | AMS
  • capitalRow2AmountReceived number optional

    Row 2 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow2TransactionDate date optional

    Row 2 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

  • capitalRow2AdjustedBasis number optional

    Row 2 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow2GainAmount number optional

    Row 2 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow2LossAmount number optional

    Row 2 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow3AssetCode enum optional

    Row 3 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: 7 values
  • capitalRow3DispositionCode enum optional

    Row 3 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: VIN | DON | SCH | AMS
  • capitalRow3AmountReceived number optional

    Row 3 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow3TransactionDate date optional

    Row 3 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

  • capitalRow3AdjustedBasis number optional

    Row 3 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow3GainAmount number optional

    Row 3 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow3LossAmount number optional

    Row 3 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow4AssetCode enum optional

    Row 4 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: 7 values
  • capitalRow4DispositionCode enum optional

    Row 4 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: VIN | DON | SCH | AMS
  • capitalRow4AmountReceived number optional

    Row 4 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow4TransactionDate date optional

    Row 4 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

  • capitalRow4AdjustedBasis number optional

    Row 4 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow4GainAmount number optional

    Row 4 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow4LossAmount number optional

    Row 4 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow5AssetCode enum optional

    Row 5 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: 7 values
  • capitalRow5DispositionCode enum optional

    Row 5 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    enum: VIN | DON | SCH | AMS
  • capitalRow5AmountReceived number optional

    Row 5 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow5TransactionDate date optional

    Row 5 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

  • capitalRow5AdjustedBasis number optional

    Row 5 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow5GainAmount number optional

    Row 5 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalRow5LossAmount number optional

    Row 5 of 5 of Section K ("Calculul creșterii sau pierderilor de capital", Section 4, computation of capital gain or loss). The source form's own printed grid provides exactly 5 numbered rows; a taxpayer with more than 5 capital-asset disposals in the fiscal period has no further row on this form. Referenced by c2CapitalGainIncome/h3CapitalGainIncome via the totals below.

    range: 0–∞
  • capitalGainTotal number optional

    The Total row beneath Section K's 5 numbered rows, summing the K6 (capital gain) column across all completed rows.

    range: 0–∞
  • capitalLossTotal number optional

    The Total row beneath Section K's 5 numbered rows, summing the K7 (capital loss) column across all completed rows.

    range: 0–∞
  • taxableCapitalGain number optional

    The form's own printed formula: (Total K6 − Total K7) x 50%. Feeds into c2CapitalGainIncome (Section 2) or h3CapitalGainIncome (Section 3), whichever applies per taxpayerCategory.

  • percentageDesignationBeneficiaryFiscalCode string optional

    Section 5 ("FACULTATIVĂ", optional): the fiscal code of the nonprofit beneficiary to whom the taxpayer directs a percentage of their computed annual income tax. Optional by the section's own heading.

  • declarationSubmissionDate date required

    The date the declarant signs and submits the declaration, adjoining the wet-ink signature (excluded per this registry's standing convention on physical signatures).

Verification record

This file is the source-review record for this document version, per the manual-source-review-v1 practice.

Current claim

  • status: draft
  • verification.method: manual-source-review-v1
  • verification.lastVerifiedAt: 2026-07-15

Why this schema and why now (GOV-3180)

GOV-3180 is a pre-scouted, ready-to-author candidate delegated from GOV-3157 (Moldova's DMV vertical opener, md/asp/vehicle-registration, now merged). This document opens Moldova's Taxes vertical, bringing Moldova to 3 of 6 verticals (following DMV via md/asp/vehicle-registration, GOV-3157, and Business Formation via md/asp/cerere-inregistrare-intreprinzator-individual, GOV-3115). The candidate was re-verified from scratch rather than trusting the prior cycle's disclosed note.

Sources examined

  • Document (id, version): md/sfs/cet18-individual-income-tax-declaration / 1.0.0
  • Spec version: GovSchema 0.3.0
  • Authority: State Tax Service (Serviciul Fiscal de Stat, "SFS").
  • Primary source:
    • Form file: https://www.sfs.md/uploads/blank/226/document/forma-cet18pdf-69a1953b3177e0.49234558.pdf — the www. subdomain is required; the bare sfs.md host is WAF-gated/403s, consistent with the prior cycle's note. Independently re-fetched this cycle via plain curl: HTTP 200, content-type application/pdf, 492,863 bytes, sha256 5b502e0ddd70e2e942d456ad45bac8f51a1f714c7f3eaaef85141d48346d2bd9. A genuine native-text-layer PDF (not scanned), 4 pages.
    • Corroborating sources: a web search independently returned sfs.md/ro/pagina/cet18 ("Prezentarea Declarației cu privire la impozitul pe venit (CET18)"), sfs.md/ro/formular/persoane_fizice, the Ministry of Finance's own CET18 completion guide (mf.gov.md), and the SFS news item "SFS pune la dispoziția persoanelor fizice-cetățeni o gamă largă de soluții pentru a depune Declarația CET18" — all confirming CET18 is the current, live individual income-tax declaration, filed annually by April 30 for the preceding fiscal year, and confirming the 2%-style percentage tax designation (modeled here as Section M) and the 360,000-lei annual taxable-income filing threshold. WebFetch against sfs.md/ro/pagina/cet18 itself confirmed the page title names the form verbatim but the page body is JS-rendered and did not yield further plain-text detail — not needed, since the direct PDF fetch and the web search corroboration are independently sufficient.
    • Text extracted with pdfjs-dist (3.11.174, legacy/build/pdf.js, CommonJS entry point — the package ships no .mjs/ESM build under legacy/build) with y-coordinate-based line reconstruction. All 4 pages rendered to PNG at 3x scale via node-canvas for grid/layout confirmation; a number of embedded-font glyphs (Romanian diacritics in particular) failed to render as paths in this environment (logged as getPathGenerator warnings), dropping some words from the rendered image — the raw pdfjs-dist text extraction, unaffected by this, is the basis for every field's label/description, with the rendered image used only to confirm grid/row/column structure and blank-line counts, not to re-derive text content.
    • The rendered grid confirmed three bounded repeating structures whose row counts are not obvious from a plain-text read alone: Table 1 ("Tabelul nr.1", the E3-E7 expense-substantiation schedule) prints exactly 3 blank rows under its 8-column header (column 1 being a non-data row-number column); Section K (capital gain/loss computation) prints exactly 5 numbered rows (1-5) plus a "Total" row under its 7-column (K1-K7) header. Both are modeled as disclosed-bounded repeating groups (table1Row{1..3}<Column>, capitalRow{1..5}<Column>) — a taxpayer with more substantiated entries than the form provides rows for has no further row on this document, consistent with this registry's established bounded- repeating-group technique (e.g. TZ/DK/FI entrant/child-N patterns).
    • Section K's own closed code legends (page 4) were read directly: capital-asset-type codes MT (Mijloc de transport/vehicle), TR (Teren/land), OB (Obligațiuni/bonds), AT (Acțiuni/shares), ALT (Alte imobile/other real estate), CP (Cotă-parte/share-quota), AAC (Alte active de capital/other capital assets); disposition-type codes VIN (vânzare-cumpărare/sale-purchase), DON (donație/donation), SCH (schimb/exchange), AMS (alt mod de înstrăinare/other disposition method) — both closed sets, modeled as enum validation on capitalRow{N}AssetCode/capitalRow{N}DispositionCode rather than free text.
    • Two source formula artifacts are disclosed rather than silently corrected: item D7's own printed total-exemptions formula, "(D1 sau D2) + D4 + (D5+D6)", excludes D3 (the base, non-increased spousal exemption) even though D3 is a distinct, separately-labeled line directly preceding D4 — reproduced exactly as printed in d7TotalExemptions's own description. Item H8 (dividend income) is printed as its own line directly after the H7 subtotal rather than folded into H1-H6 — also reproduced as printed, disclosed in h8DividendIncome's own description.
    • The raw pdfjs-dist text-extraction reading order interleaved Section K's own table between item H6 and the H7/H8 lines (a PDF content-stream paint-order artifact, not a logical ordering claim); the schema instead groups fields by their own printed section number (Section 2: C/D/E/F/Table 1; Section 3: H/J; Section 4: K; Section 5: M), which is how a human reader of the rendered page would group them.

Scope decisions

  1. Modeled in full: Section 1 (General Information — taxpayer category, citizenship, identity, domicile, own/spouse/dependents' fiscal codes, contact details); Section 2 (resident individual's computation — items C, D, E, Table 1, F); Section 3 (non-resident individual's computation — items H, J); Section 4 (item K's capital gain/loss schedule, shared by both Section 2's C2 and Section 3's H3 via K8); Section 5 (item M's optional percentage tax designation); and the closing declaration, modeled as a documents[] attestation entry.
  2. Out of scope: the form's own back-office intake stub (the tax official's stamp and signature acknowledging receipt of the declaration) — staff-completed data the taxpayer never supplies, consistent with this registry's established exclusion of similar office-only blocks.
  3. Items C/D/E/F (Section 2) and H/J (Section 3) are modeled required: false. This is a single whole-of-form declaration covering both resident and non-resident computations; taxpayerCategory (item A) determines which of the two applies to a given filer, but the form gives no indication that the non-applicable section's lines must be entered as zero. This mirrors the established treatment of TZ's ITX201 and DO's IR-2 whole-of-form tax returns in this registry.
  4. citizenship is the only field modeled with requiredWhen (gated on taxpayerCategory being A4 or A5) rather than left unconditionally optional like the rest of Section 2/3/4: the source form prints this exact blank line twice, directly beneath both of the two foreign- citizen checkboxes, making its conditional applicability an explicit, printed feature of the form itself (not an inferred convenience).
  5. table1Row{N}ExpenseCode is modeled as a closed enum (E3-E7), since the table's own header text names exactly that closed range ("conform codurilor E3 – E7"). table1Row{N}SupportingDocumentType is modeled as free string, since the column header itself gives an open-ended, non-exhaustive example list ("contractul, factura fiscală, extrasul din contul bancar, etc.").
  6. validation.minimum: 0 is applied to every direct-entry amount field whose own label cannot logically be negative (all C/H income and tax-withheld columns, D/E exemption/deduction amounts, Table 1/K row amounts); it is withheld from every field whose own printed formula can subtract to a negative result (f1TaxableIncomeBeforeDonation, f4TaxableIncome, f6TaxReflectedInPersonalFile, j2TaxReflectedInPersonalFile, taxableCapitalGain) — the same disclosed departure already established elsewhere in this registry (e.g. Dominican Republic's IR-2, GOV-3114; Tanzania's ITX201, GOV-3159). f9TaxOverpaid/j5TaxOverpaid keep minimum: 0 since the form's own text states they are "entered without their sign" (i.e. always a non-negative magnitude), unlike the signed intermediate figures they are derived from.
  7. dependentsFiscalCodes (item B6) is modeled as a single comma-separated string field, not six discrete fields. The source form itself prints up to six blank slots as one running, comma-punctuated list rather than six independently labeled fields; modeling it as a single field mirrors the source's own grouping.
  8. Every numbered item was checked for an asterisk or similar requiredness marking; only item B7 (contact details) carries one — the form's own footnote ("Necompletarea poziției B7 nu va genera aplicarea sancțiunilor... din Codul fiscal") explicitly states that omitting B7 triggers no sanction, the basis for modeling phoneNumber/emailAddress/fiscalMessageDissemination as optional. No other item on this form carries a similar marking.

Conformance fixtures (Phase 3)

8 fixtures committed under conformance/md/sfs/cet18-individual-income-tax-declaration/1.0.0/: 2 valid scenarios plus 6 mutation-control fixtures. All 8 were run against a from-scratch, ephemeral field-by-field conformance checker (derived directly from this schema's own fields[]/documents[]/required/requiredWhen/validation rules, including requiredWhen condition evaluation; not committed to the repo) before being finalized:

  • valid-resident-employment-only-refund.json (a resident individual, category A1, with employment income only, filing a simple return that nets to a refund position via f9TaxOverpaid) — 0 errors.
  • valid-nonresident-with-capital-gain-and-percentage-designation.json (a non-resident individual, category A4, with salary and a single land-sale capital gain reported through Section K row 1, plus the optional Section M percentage designation) — 0 errors.
  • mutation-control-missing-required-field.json (drops lastName) — exactly 1 error.
  • mutation-control-invalid-date-format.json (sets declarationSubmissionDate to 15/04/2026, not ISO 8601) — exactly 1 error.
  • mutation-control-invalid-taxpayer-category-enum.json (sets taxpayerCategory to "RESIDENT", not one of the form's own five checkbox codes) — exactly 1 error.
  • mutation-control-invalid-email-pattern.json (sets emailAddress to "not-an-email") — exactly 1 error.
  • mutation-control-invalid-capital-asset-code-enum.json (sets capitalRow1AssetCode to "XX", not in the page-4 asset-code legend) — exactly 1 error.
  • mutation-control-missing-citizenship-when-required.json (drops citizenship from the A4 non-resident fixture, testing the requiredWhen gate) — exactly 1 error.
  • mutation-control-missing-declaration-attestation.json (sets documents.declarationOfAccuracy to false) — exactly 1 error.

Structural validation

  • node tools/validate.mjs registry/md/sfs/cet18-individual-income-tax-declaration/1.0.0/schema.jsonok.
  • node tools/validate-ajv.mjs registry/md/sfs/cet18-individual-income-tax-declaration/1.0.0/schema.json (ajv 2020-12 against spec/v0.3) — ok.
  • Full-registry re-run after adding this document: node tools/validate.mjs480/480 (up from 479/479 before this document); node tools/validate-ajv.mjs480/480.
  • node tools/verify-sources.mjs — clean (no FAIL on this document's changed files).
  • npm run build-index re-run in tools/govschema-client/ to regenerate registry-index.json with this document included.

Maturity

structural-reference: the source PDF's own printed structure — including both the resident and non-resident computation paths, the bounded Table 1 and Section K repeating schedules, and the closed asset/disposition code legends — is fully transcribed from the genuine, currently-served official form, but no live submission through any SFS filing channel was attempted. GovSchema is an independent, non-profit standards body and is not affiliated with, endorsed by, or operated by the Republic of Moldova or the Serviciul Fiscal de Stat.

View the raw record (VERIFICATION.md)

Version history

  • 1.0.0 draft latest this page has verification record schema.json

Independent and non-affiliated

GovSchema is an independent, open-source project. This reference is not produced, reviewed, or endorsed by Serviciul Fiscal de Stat or any government. The authoritative source is always the live government form and its official instructions.