Skip to content
Ritesh FirodiyaGet in touch

Work / Chitragupt / Wiki / Decisions

2026-07-25-self-file-reintroduced-itr1-4

Decisionsupersededverified 2026-07-26

DECISION.2026-07-25.SELF-FILE-REINTRODUCED-ITR1-4

Self-file reintroduced for individuals — ITR-1, ITR-2, ITR-3, ITR-4

Decision

Reintroduce self-file for individual taxpayers, scoped to ITR-1, ITR-2, ITR-3, and ITR-4. Self-file means the platform emits a CBDT portal-valid ITR JSON that the user downloads and uploads to incometax.gov.in themselves. No direct e-file API integration in this scope.

Rolls out post-V1, behind per-form feature flags: self_file_itr1_enabled, self_file_itr2_enabled, self_file_itr3_enabled, self_file_itr4_enabled. Flip ITR-1 and ITR-2 on first, then ITR-4, then ITR-3.

Hard gates:

  • Every emitted JSON validates against the vendored CBDT JSON Schema for the AY before the download button enables.
  • Each form ships only after ≥25 real-world returns are reviewed and signed off by an external CA.
  • Round-trip through the CBDT Offline Utility for the AY is part of the acceptance test.

Out of scope of this decision: ITR-5 / ITR-6 / ITR-7 (firms, HUFs, LLPs, companies, trusts) — they remain a sibling-product candidate per audience-salaried-filer. GST returns, TDS return filing, Form 15CA/CB, direct e-file API integration.

Why

The 2026-05-31 decision removed self-file to cut legal exposure and engineering surface ahead of V1. V1 is now nearly shipped (Shared Bank Accounts is the last gap), the CA-handoff path is proven, and the parsed-facts spine is stable. The blockers that motivated removal are addressable:

  • Legal exposure — mitigated by portal-schema validation as a hard gate, the CA sign-off requirement per form, per-form feature flag rollout, and keeping the user in the loop (they upload the JSON to the portal; the platform does not file on their behalf).
  • Engineering surface — reduced by scoping to individual filers (existing tax-computer, identity model, family workspace all stay intact) and adding one income head (PGBP) rather than a new filer entity.

The 2026-05-31 decision also said "self-file modules deleted (no quarantine)." That deletion stands — the emitter is rebuilt fresh against the current schema and parsing pipeline, not restored from history.

Impact

  • Tax pillar UI adds a "Download ITR JSON" surface at /tax/emit alongside the existing CA-handoff PDF path. The CA-handoff flow is not removed — users can still hire a CA instead.
  • tax_reviews/{ay}.filing_state widens beyond not_filed | itr_v_acknowledged. New states TBD in the Phase 2 implementation ADR (candidates: json_emitted, json_downloaded).
  • .context/wiki/concepts/what-we-sell.md — the 2026-05-31-self-filing-removed related link is now a supersede pointer to this ADR.
  • .context/wiki/concepts/audience-salaried-filer.md — ITR-3/4 move from "expansion path (not built)" into current scope; ITR-5/6/7 stay as sibling-product candidates.
  • Affects pillar-tax, marketplace-economics, ca-category-itr-filing, pgbp-income, self-file-json-emit.
  • The CA marketplace continues to exist and to price ITR-1/2/3/4 filings — self-file is an added forward action, not a replacement for the CA handoff.
  • Companion ADR 2026-07-25-itr-form-union-widened widens the persisted itr_form union.

Status

Active.

Sources

Every project of mine is written down like this.

Read the résumé