Registry entry
Zambia Income Tax Return for Individuals (Self-Assessment Form, ITF 46_1 V001)
The Zambia Revenue Authority's (ZRA) Direct Taxes Division "Income Tax Return for Individuals — Self-Assessment Form" (ITF 46_1 V001), used by an individual taxpayer to declare rental income, employment income, and a statement of financial position (balance sheet) for an income tax charge year, and to make the accompanying signed declaration. Opens Zambia's Taxes vertical (3 of 6 — Business Formation and Passport already published via zm/pacra/company-incorporation and zm/dnrpc/passport-application). This schema models Taxpayer Details (page 1, always required); Part 1 Rental Income's directly-supplied income/withholding-tax lines; Section B's Statement of Financial Position (Balance Sheet) directly-supplied lines; Section F Employment Income for up to two employers; Section G Interest in Companies (related-party transactions); and Section H's Declaration. The form's own business/self-employment income computation (Section A Summary, Section C Statement of Comprehensive Income, Section D Computation of Chargeable Income from Business per source, Schedules 1-4 (Capital Allowances; income of other persons; current-year and prior-year losses), and Section E Details of Share of Profit from Partnership Firm(s)) is out of scope for v1.0.0 — see this document's own VERIFICATION.md for the full disclosed scoping rationale. This schema does not file the return itself; the live source is always authoritative. GovSchema is independent and is not affiliated with, endorsed by, or operated by the Republic of Zambia or the Zambia Revenue Authority.
Registry entry
zm/zra/individual-income-tax-return
Machine access
- Schema document
registry/zm/zra/individual-income-tax-return/1.0.0/schema.jsonapplication/schema+json- Verification record
registry/zm/zra/individual-income-tax-return/1.0.0/VERIFICATION.mdtext/markdown- Registry catalog
registry/index.jsonone record per schema id
Field reference
107 fields across 6 steps, 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.
Taxpayer Details
-
chargeYearinteger requiredIncome Tax Charge Year (ended 31st December)
range: 1991–∞ -
tpinstring requiredTaxpayer Identification Number (TPIN)
classification: pii -
titlestring requiredPrinted as a plain blank cell under "Name of Taxpayer" with no delete-non-applicable option list (unlike this registry's zm/dnrpc/passport-application, whose equivalent field prints "(Dr/Mr/Mrs/Miss)"), so modelled as free string rather than enum.
-
foreNamestring requiredFore name
classification: pii -
middleNamestring optionalPage 1's own note states "All fields on page 1 are mandatory", which literally would include this field, but it is modelled `required: false` here as a disclosed narrow exception since a substantial share of individual taxpayers have no middle name and the form gives no "N/A" convention to satisfy a hard requirement.
classification: pii -
lastNamestring requiredLast name
classification: pii -
postalPoBoxstring optionalSr No 3-6 (Postal Address, Physical Address, E-mail Address, Telephone/Cell Number) sit under the table's own sub-heading "Taxpayer Details (only fill in 3 to 6 if there has been any changes)", directly qualifying the page's blanket "All fields on page 1 are mandatory" note for these four items specifically — modelled `required: false` for Sr No 3-6, reflecting that sub-heading rather than the page-level note.
-
postalTownstring optionalPostal address — Town
-
postalProvincestring optionalPostal address — Province
-
postalCountrystring optionalPostal address — Country
-
physicalPlotHouseNostring optionalPhysical address — Plot / House No
-
physicalStreetstring optionalPhysical address — Street
-
physicalAreastring optionalPhysical address — Area
-
physicalTownstring optionalPhysical address — Town
-
physicalProvincestring optionalPhysical address — Province
-
physicalCountrystring optionalPhysical address — Country
-
emailAddressstring optionalE-mail address
classification: pii -
telephoneCountryCodestring optionalTelephone / Cell number — Country Code
-
telephoneAreaCodestring optionalTelephone / Cell number — Area Code
-
telephoneNumberstring optionalTelephone / Cell number — Number
classification: pii -
accountingPeriodstring requiredAccounting period
-
isAmendedReturnboolean requiredPrinted as two tick boxes, "Original" / "Amended (Tick as applicable)", modelled as a single boolean where true means "Amended" was ticked.
-
priorReturnAcknowledgementReceiptNumberstring optionalDisclosed finding: page 1 itself prints no explicit labelled box for this value — only "Original/Amended" tick boxes, "Reason for amendment", and "Attachments if any" appear. Page 18's own filing instructions state "If you had submitted an original return earlier please enter the acknowledgement receipt number issued to you in the space provided at item 2 on the first page of the return", directly establishing that such a value belongs on page 1 for an amended return even though no printed label accompanies it there. Modelled here as a disclosed interpretation choice rather than silently dropped.
-
amendmentReasonstring optionalReason for amendment
-
attachmentsIfAnystring optionalPrinted as "Attachments if any" followed by two blank numbered lines ("1." / "2."); modelled as a single free-text field for listing attached document names rather than two separate slots, since the form prints no distinct label differentiating line 1 from line 2.
Part 1: Rental Income
-
individualRentalIncomeAmountnumber optionalIndividual rental income — annual rental income
range: 0–∞ -
individualRentalIncomeWithholdingTaxnumber optionalWithholding Tax suffered on individual rental income
range: 0–∞ -
partnershipRentalIncomeShareAmountnumber optionalShare of rental income from partnership firm
range: 0–∞ -
partnershipRentalIncomeShareWithholdingTaxnumber optionalWithholding Tax from partnership firm suffered on rental income
range: 0–∞
Section B: Statement of Financial Position (Balance Sheet)
-
balanceSheetAsOfDatedate optionalStatement of Financial Position (Balance Sheet) as at
-
fixedAssetsLandAndBuildingnumber optionalFixed assets — Land and Building
range: 0–∞ -
fixedAssetsPlantAndMachinerynumber optionalFixed assets — Plant and Machinery
range: 0–∞ -
fixedAssetsMotorVehiclesnumber optionalFixed assets — Motor Vehicles
range: 0–∞ -
fixedAssetsFurnitureAndFixturesnumber optionalFixed assets — Furniture and Fixtures
range: 0–∞ -
fixedAssetsCapitalWorksInProgressnumber optionalFixed assets — Capital works in Progress
range: 0–∞ -
fixedAssetsOtherAssetsnumber optionalFixed assets — Other Assets
range: 0–∞ -
fixedAssetsIntangibleAssetsnumber optionalFixed assets — Intangible Assets
range: 0–∞ -
fixedAssetsAccumulatedDepreciationnumber optionalLine 1.h ("Total Fixed Assets", a+b+c+d+e+f+g) and line 1.j ("Net Book Value of Fixed Assets", h-i) are both formula totals of other lines on this schedule and are excluded from this schema per the registry's standing closed decision to defer calculated/derived fields (GSP-0013 §7 / GOV-302 founder ruling) — only this line's own directly-supplied accumulated-depreciation figure is modelled.
range: 0–∞ -
investmentsSharesnumber optionalInvestments — Shares
range: 0–∞ -
investmentsDebenturesnumber optionalInvestments — Debentures
range: 0–∞ -
investmentsFixedDepositsnumber optionalInvestments — Fixed Deposits
range: 0–∞ -
investmentsGovernmentSecuritiesnumber optionalInvestments — Government Securities
range: 0–∞ -
investmentsOthernumber optionalLine 2.f ("Total Investments", a+b+c+d+e) is a formula total, excluded per GSP-0013 §7.
range: 0–∞ -
inventoryStocksnumber optionalCurrent assets — Inventories — Stocks
range: 0–∞ -
inventoryOthersnumber optionalLine 3.a.i.c ("Total Inventory", a+b) is a formula total, excluded per GSP-0013 §7.
range: 0–∞ -
receivablesTradeReceivablesDebtorsLoansnumber optionalCurrent assets — Trade Receivables / Debtors / Loans
range: 0–∞ -
receivablesPrepaymentsnumber optionalCurrent assets — Prepayments
range: 0–∞ -
receivablesOtherReceivablesDebtorsLoansnumber optionalLine 3.a.ii.d ("Total Receivables/Debtors", a+b+c) is a formula total, excluded per GSP-0013 §7.
range: 0–∞ -
cashBankBalancesnumber optionalCurrent assets — Bank Balances
range: 0–∞ -
cashInHandAndEquivalentsnumber optionalLine 3.a.iii.c ("Total balances available", a+b) is a formula total, excluded per GSP-0013 §7.
range: 0–∞ -
otherCurrentAssetsnumber optionalLine 3.a.v ("Total Current Assets") is a formula total, excluded per GSP-0013 §7.
range: 0–∞ -
loansToRelatedPartiesnumber optionalLoans and Advances — Loans to related Parties
range: 0–∞ -
advancesToStaffnumber optionalLoans and Advances — Advances to Staff
range: 0–∞ -
loansAndAdvancesToOthersnumber optionalLine 3.b.iv ("Total of Loans and Advances") and line 3.c ("Total Current Assets, Loans and Advances") are both formula totals, excluded per GSP-0013 §7.
range: 0–∞ -
payablesTradePayablesCreditorsnumber optionalCurrent liabilities — Trade Payables / Creditors
range: 0–∞ -
payablesOtherCurrentLiabilitiesnumber optionalLine 4.d.i.c ("Total current liabilities", a+b) is a formula total, excluded per GSP-0013 §7.
range: 0–∞ -
provisionForBadDebtsnumber optionalProvisions — Provision for Bad Debts
range: 0–∞ -
employmentRelatedProvisionsnumber optionalProvisions — Employment Related Provisions
range: 0–∞ -
otherProvisionsnumber optionalLine 4.d.ii.d ("Total Provisions", a+b+c), line 4.d.iii ("Total Current Liabilities and Provisions"), line 5 ("Net Current Assets"), and line 6 ("Total Assets") are all formula totals, excluded per GSP-0013 §7.
range: 0–∞ -
proprietorsCapitalOpeningnumber optionalSources of Funds — Proprietor's capital (Opening)
range: 0–∞ -
revaluationReservesnumber optionalSources of Funds — Revaluation Reserves
range: 0–∞ -
translationReservesnumber optionalSources of Funds — Translation Reserves
range: 0–∞ -
generalReservesnumber optionalSources of Funds — General Reserves
range: 0–∞ -
otherReservesnumber optionalSources of Funds — Any other Reserves
range: 0–∞ -
profitLossForYearnumber optionalModelled without a `minimum` constraint, unlike the other balance-sheet lines, since this line is explicitly a profit-OR-loss figure and may be negative.
-
lessDrawingsnumber optionalLine 7.h ("Total Proprietor's Capital and Reserves", a+b+c+d+e+f-g) is a formula total, excluded per GSP-0013 §7.
range: 0–∞ -
loanFromFinancialInstitutionsnumber optionalLong Term Liabilities — Loan from Financial Institutions
range: 0–∞ -
otherLoansnumber optionalLong Term Liabilities — Other Loans
range: 0–∞ -
payablesCreditorsMoreThanOneYearnumber optionalLong Term Liabilities — Payables/Creditors for more than one year
range: 0–∞ -
dueToRelatedPartiesnumber optionalLine 8.a.v ("Total Secured Liabilities") and line 9 ("Proprietors Funds and Long Term Liabilities") are both formula totals, excluded per GSP-0013 §7.
range: 0–∞
Section F: Employment Income
-
employer1Tpinstring optionalEmployer 1 — TPIN of Employer
-
employer1Namestring optionalEmployer 1 — Name of Employer
-
employer1GrossPaynumber optionalEmployer 1 — Gross Pay (Salaries, Wages, Bonuses, Allowances etc.)
range: 0–∞ -
employer1CashBenefitsnumber optionalEmployer 1 — Cash Benefits from Employment
range: 0–∞ -
employer1Commissionsnumber optionalEmployer 1 — Commissions
range: 0–∞ -
employer1OtherIncomeDescriptionstring optionalEmployer 1 — Other income from employment (specify)
-
employer1OtherIncomeAmountnumber optionalEmployer 1 — Other income from employment — amount
range: 0–∞ -
employer1DeductAnnuityContributionsnumber optionalEmployer 1 — Deduct annuity contract contributions
range: 0–∞ -
employer1DeductProfessionalSubscriptionsnumber optionalEmployer 1 — Deduct subscriptions to professional and technical associations
range: 0–∞ -
employer1DeductApprovedDonationsnumber optionalLine 8 ("TOTAL TAXABLE INCOME FROM EMPLOYMENT", 1+2+3+4-5-6-7) and line 11 ("Net Tax from Employment", 9-10) are formula totals; line 9 ("Tax on employment income Before Tax Credit") is a rate-table computation. All three are excluded per GSP-0013 §7 — only this line's own directly-supplied donations figure is modelled.
range: 0–∞ -
employer1LessPayenumber optionalEmployer 1 — Less PAYE
range: 0–∞ -
employer2Tpinstring optionalEmployer 2 — TPIN of Employer
-
employer2Namestring optionalEmployer 2 — Name of Employer
-
employer2GrossPaynumber optionalEmployer 2 — Gross Pay (Salaries, Wages, Bonuses, Allowances etc.)
range: 0–∞ -
employer2CashBenefitsnumber optionalEmployer 2 — Cash Benefits from Employment
range: 0–∞ -
employer2Commissionsnumber optionalEmployer 2 — Commissions
range: 0–∞ -
employer2OtherIncomeDescriptionstring optionalEmployer 2 — Other income from employment (specify)
-
employer2OtherIncomeAmountnumber optionalEmployer 2 — Other income from employment — amount
range: 0–∞ -
employer2DeductAnnuityContributionsnumber optionalEmployer 2 — Deduct annuity contract contributions
range: 0–∞ -
employer2DeductProfessionalSubscriptionsnumber optionalEmployer 2 — Deduct subscriptions to professional and technical associations
range: 0–∞ -
employer2DeductApprovedDonationsnumber optionalEmployer 2 — Deduct donations to approved Public Benefit organizations
range: 0–∞ -
employer2LessPayenumber optionalEmployer 2 — Less PAYE
range: 0–∞
Section G: Interest in Companies
-
hasRelatedPartyTransactionsboolean requiredDid you have any transactions with related/associated parties in the tax year covered by this return?
-
relatedParty1BusinessNamestring optionalRelated party 1 — Name of Business
classification: pii -
relatedParty1Tpinstring optionalRelated party 1 — TPIN
-
relatedParty1SharesInterestControlledstring optionalRelated party 1 — Shares / Interest Controlled
-
relatedParty2BusinessNamestring optionalRelated party 2 — Name of Business
classification: pii -
relatedParty2Tpinstring optionalRelated party 2 — TPIN
-
relatedParty2SharesInterestControlledstring optionalRelated party 2 — Shares / Interest Controlled
Section H: Declaration
-
taxAgentFullNamestring optionalThe Tax Agent block ("Full Name of Tax Agent…. Signature…. Capacity….") carries no printed checkbox distinguishing a self-filed return from an agent-prepared one, so all three Tax Agent fields are modelled bare-optional, matching this registry's established no-printed-signal convention (e.g. et/ics/passport-application's own analogous ungated optional fields).
classification: pii -
taxAgentSignaturestring optionalTax Agent's signature
classification: pii -
taxAgentCapacitystring optionalTax Agent's capacity
-
taxpayerFullNamestring requiredFull names of person making the return (in Block Letters)
classification: pii -
taxpayerDeclarationSignaturestring requiredThe form's own disclaimer reads "THIS RETURN WILL NOT BE ACCEPTED UNLESS THE DECLARATION IS SIGNED", directly justifying this field's `required: true`.
classification: pii -
taxpayerDeclarationDatedate requiredDate of declaration
-
taxpayerDesignationstring optionalPrinted alongside the declaration signature/date with no separate mandatory signal beyond the declaration disclaimer, which names only the signature itself as a hard requirement — modelled bare-optional, disclosed here.
-
taxpayerPhonestring optionalPhone
Verification record
Candidate selection
GOV-4287 ("GovSchema Standard Research"). The GOV-4271 cycle (opening Zambia as the registry's 77th jurisdiction via zm/pacra/company-incorporation@1.0.0, Business Formation) pre-scouted and banked Zambia's Taxes candidate as disclosed, STRONG open backlog: a Zambia Revenue Authority (ZRA) PDF, Income-Tax-Return-for-Individuals.pdf (Form ITF 46_1 V001), left unauthored at the time in favor of the smaller-scope Passport candidate (subsequently authored in GOV-4278). This cycle authors that banked candidate, opening Zambia's Taxes vertical (3 of 6). The GOV-4271 cycle's own banked URL (.../2023/06/Income-Tax-Return-for-Individuals.pdf) now 404s; this cycle's issue corrected it to a currently-live .../2020/06/... path, confirmed directly (see below).
Reaching the live source
Fetched https://www.zra.org.zm/wp-content/uploads/2020/06/Income-Tax-Return-for-Individuals.pdf directly:
- HTTP 200,
Content-Type: application/pdf,Content-Length: 1078188bytes,Last-Modified: Sat, 02 Apr 2022 10:01:58 GMT. - No login, CAPTCHA, or WAF gate blocks reaching or reading this file — confirmed via a plain unauthenticated
curlrequest with no session/cookie state (only a TLS certificate-verification bypass was needed to reach the host from this session's network egress; the certificate itself is not otherwise implicated in this finding). - sha256
fc1bde9aec0cac29b892acedb252ba1321bbd82e6e403380b1a9cd1498c58484. - PDF header
%PDF-1.5at byte 0 — a genuine native (searchable-text) PDF, not a scanned image, confirmed by cleanpdfjs-disttext-layer extraction across all pages.
Extraction method
Extracted with pdfjs-dist (vendored from an existing session scratch install at /tmp/node_modules, CommonJS build at legacy/build/pdf.js since this vendored copy ships no ESM entry point), reading each text item's raw string and its transform x/y position across all 19 pages. Separately rendered pages 1-4, 15, 16, and 17 to PNGs at 2x scale via node-canvas (/tmp/node_modules/canvas) to visually confirm true table/column layout and, specifically, which cells the source document itself shades grey — every grey-shaded cell corresponds one-to-one with a formula/total line identified independently from the text-position extraction (e.g. Section B's "Total Fixed Assets", "Total Investments" rows), cross-corroborating the computed-vs-directly-supplied line classification this schema's scoping relies on. (Embedded-font glyph outlines did not fully rasterize in this environment — getPathGenerator "object that isn't resolved yet" warnings — so the rendered PNGs are only used to confirm ruled table/shading structure, not as a substitute for the clean text-layer extraction, which read every field label correctly.)
Document structure
The 19-page form (each page footer-stamped "ITF 46_1 V001") is a combined individual income tax return covering, in order: page 1, Taxpayer Details; page 2, Part 1 Rental Income and the start of Part 2 (Section A Summary Tax Payable, Section B Statement of Financial Position); pages 3-4, Section B continued; pages 5-11, Section C (Statement of Comprehensive Income) and Section D (Computation of Chargeable Income from Business, repeated for up to 3 income sources plus continuation sheets); pages 12-13, Schedule 1 (Capital Allowances, Parts I-IV); pages 13-14, Schedule 2 (income of other persons), Schedule 3 (current-year losses), Schedule 4 (prior-year losses); pages 14-15, Section E (Details of Share of Profit from Partnership Firms, a/b); pages 15-16, Section F (Employment Income, Employer 1 and Employer 2); page 16, Section G (Interest in Companies); page 17, Section H (Declaration); pages 17-18, filing-instructions notes (not applicant-supplied data); page 19, a disclaimer stating the PDF itself is "FOR GUIDANCE ONLY" and "SHOULD NOT BE SUBMITTED TO ZAMBIA REVENUE AUTHORITY" (i.e. the live, submittable return is filed through a separate system/process; this PDF is ZRA's own published reference copy of the form's field layout, the standard sourcing basis this registry uses for forms of this kind).
Scope
This schema models 4 of the form's own printed sections/schedules in full — Taxpayer Details, Part 1 Rental Income, Section B Balance Sheet, Section F Employment Income — plus Section G and Section H, and excludes the business/ self-employment income computation entirely (Section A, Section C, Section D, Schedules 1-4, Section E), per the issue's own scope guidance to follow this registry's narrow-scoping precedent (e.g. Latvia's own D3/D3¹/GD exclusions) rather than force-fit a 19-page, multi-schedule form into one v1.0.0 document. The excluded sections are a coherent, separable unit — a Zambian taxpayer with only rental and/or employment income (this schema's scope) never touches them — and are disclosed here as the natural follow-on companion-schema candidate for a future PATCH/minor, not silently dropped.
Within the sections this schema does cover, every printed formula/subtotal line (e.g. Section B's "Total Fixed Assets (a+b+c+d+e+f+g)", "Net Book Value ... (h-i)"; Section F's "TOTAL TAXABLE INCOME FROM EMPLOYMENT [1+2+3+4-5-6-7]", "Tax on employment income Before Tax Credit", "Net Tax from Employment [9-10]") is excluded from fields[], per this registry's standing closed decision to defer calculated/derived fields (GSP-0013 §7, "Calculated / derived fields — recommend deferring", founder-confirmed on GOV-302) — only the lines a taxpayer directly supplies are modelled. Each excluded line's own field description cites the formula it would have computed, so the gap is visible rather than silent.
Models 107 fields[] across 6 steps (Taxpayer Details; Part 1 Rental Income; Section B Statement of Financial Position; Section F Employment Income; Section G Interest in Companies; Section H Declaration). No edition axis is used (unlike, e.g., us/irs/individual-income-tax-return-1040's per-tax-year editions): this form's own "Charge Year" is a single blank the filer fills in on a single, undated generic template (matching this registry's existing kz/kgd/*/ua/dps/* tax-return precedent, which model the filing year as an ordinary data field rather than a schema edition).
Disclosed findings and interpretation choices
middleNameis modelledrequired: falsedespite page 1's own blanket note, "All fields on page 1 are mandatory," since a substantial share of individual taxpayers have no middle name and the form provides no "N/A" convention to otherwise satisfy a hard requirement.- Sr No 3-6 (Postal Address, Physical Address, E-mail Address, Telephone/Cell Number) are modelled
required: false, per that same table's own qualifying sub-heading, "Taxpayer Details (only fill in 3 to 6 if there has been any changes)" — a more specific, narrower rule than the page's blanket mandatory note, and the one this schema follows for these four items specifically. priorReturnAcknowledgementReceiptNumberis a disclosed addition with no printed label on page 1 itself. Page 1 prints only "Original/Amended" tick boxes, "Reason for amendment", and "Attachments if any" — no visible box for an acknowledgement receipt number. Page 18's own filing instructions state "If you had submitted an original return earlier please enter the acknowledgement receipt number issued to you in the space provided at item 2 on the first page of the return," establishing that such a value belongs somewhere on page 1 for an amended return even though no printed label accompanies it there. ModelledrequiredWhen isAmendedReturnrather than silently dropped.attachmentsIfAnycollapses the form's two blank numbered lines ("1." / "2.") into one free-text field, since neither line carries its own distinct label.- Employer 2's fields carry no eligibility gate (e.g. no fabricated
hasSecondEmployerboolean): the form prints Employer 1 and Employer 2 as two structurally identical, unconditional blocks with no printed count or yes/no signal distinguishing "one employer" from "two employers" — the same disclosed no-printed-signal treatment this registry'set/ics/passport-applicationand this schema's own Tax-Agent fields (finding 6) use for their own analogous ungated optional fields. Both employer blocks are therefore bare-optional at the field level. - The Tax Agent block (
taxAgentFullName/taxAgentSignature/taxAgentCapacity) is bare-optional, since the form prints no checkbox distinguishing a self-filed return from an agent-prepared one. - Section G's second related-party slot (
relatedParty2BusinessName/Tpin/SharesInterestControlled) is bare-optional even whenhasRelatedPartyTransactionsis true — the source prints exactly two blank table rows with no numbering or count field, so only the first slot isrequiredWhen hasRelatedPartyTransactionsequalstrue; a filer with only one related-party transaction leaves the second slot empty. profitLossForYear(Section B, line 7.f) is the only balance-sheet money field modelled without aminimum: 0constraint, since it is explicitly a profit-or-loss figure and may be negative; every other balance-sheet line is a plain asset/liability/reserve amount constrained tominimum: 0.- The Zambia Revenue Authority's own published copy of this form is watermarked "FOR GUIDANCE ONLY" and its final page states "THIS MANUAL RETURN IS MEANT FOR GUIDANCE ONLY AND THEREFORE IT SHOULD NOT BE SUBMITTED TO ZAMBIA REVENUE AUTHORITY." This is disclosed as a sourcing characteristic, not a defect: it is ZRA's own live, currently published reference copy of the return's field layout (the standard sourcing basis this registry uses), and the live submission channel (ZRA's e-filing portal or in-person office submission per page 18's own "Filing Requirements" note) is a separate process this schema does not model or claim to be.
- Excluded as official-use-only fields, not applicant-supplied data: page 1's "FOR OFFICIAL USE ONLY" block (Officer's Name/Signature/Date Received, Receiving Office Date Stamp).
Conformance
3 valid mock scenarios — valid-rental-income-only (an individual with only Part 1 rental income and a signed declaration, no balance sheet, employment, or related-party data populated); valid-employment-and-balance-sheet (an individual with a full Section B balance sheet and two Section F employers populated, exercising every balance-sheet and both employer field blocks); and valid-amended-return-with-related-party (an amended return exercising isAmendedReturn's two requiredWhen fields and hasRelatedPartyTransactions's first related-party slot) — plus 10 mutation-control fixtures (one missing statically-required field from each of tpin, foreName, lastName, accountingPeriod, isAmendedReturn, hasRelatedPartyTransactions, taxpayerFullName, taxpayerDeclarationSignature — 8 fixtures; one missing-required fixture for a requiredWhen-gated field — amendmentReason — correctly triggered in its own scenario; and an unknown-field-rejected fixture) are committed under conformance/zm/zra/individual-income-tax-return/1.0.0/.
An ephemeral, from-scratch conformance checker (deriving required/ requiredWhen rules directly from this schema's own fields[], discarded after use, not committed) ran all 13 fixtures: all 3 valid scenarios at 0 errors, all 10 mutation controls each raising exactly 1 error, and confirmed every requiredWhen field reference resolves to a real field name (0 dangling references). Validated clean with node tools/validate.mjs and node tools/validate-ajv.mjs, individually and as part of the full registry run.
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 Zambia Revenue Authority or any government. The authoritative source is always the live government form and its official instructions.