Skip to content
Ritesh FirodiyaGet in touch

Work / Chitragupt / Wiki / Decisions

2026-07-12-debt-mf-treated-independently-of-equity-cg

Decisioncanonicalverified 2026-07-12

DECISION.2026-07-12.DEBT-MF-TREATED-INDEPENDENTLY-OF-EQUITY-CG

Decision

Debt mutual-fund gains flow through their own ledger entry types, their own capital-gains-engine buckets, and their own tax-computer rules — never through the equity §111A/§112A path.

Four sub-buckets per statute:

  • debt_mf_stcg → slab-rate
  • debt_mf_ltcg_indexed → 20% with indexation (pre-1-Apr-2023 units, transfers up to 22-Jul-2024)
  • debt_mf_ltcg_flat → 12.5% without indexation (pre-1-Apr-2023 units, transfers on/after 23-Jul-2024)
  • debt_mf_ltcg_slab → slab-rate (post-1-Apr-2023 units, since Finance Act 2023 removed the LTCG concept for these)

Why

Pre-Phase-2, mf-cas.ts emitted only mf_stcg_realised / mf_ltcg_realised, and the capital-gains engine funneled both into the §111A / §112A equity buckets — so debt-MF LTCG was being taxed at the equity 12.5% rate. This is wrong on two axes:

  1. Debt-MF LTCG after 1-Apr-2023 is TAXED AT SLAB, not 12.5% flat (Finance Act 2023 removed the LTCG concept for these units).
  2. Pre-1-Apr-2023 debt-MF LTCG is 20% with indexation up to 22-Jul-2024 and 12.5% without indexation after (Finance Act 2024).

Real users would see wrong tax numbers on any debt-MF portfolio — the computed liability could be off by 5–25% either way depending on acquisition date × transfer date.

Impact

Ledger:

  • 3 new entry types in user-identity-entry ledger enum: debt_mf_stcg_realised, debt_mf_ltcg_indexed_realised, debt_mf_ltcg_flat_realised, debt_mf_ltcg_slab_realised.

Mapper:

  • mf-cas.ts reads 4 new fields (debt_stcg_realised, debt_ltcg_indexed_realised, debt_ltcg_flat_realised, debt_ltcg_slab_realised) — parser split by scheme-type × acquisition-date × transfer-date must populate them; V1 parser emits zero for all four until scheme-type is added.

Schema:

  • CapitalGainsSchema extended with 4 new realised debt-MF fields.
  • IncomeSummarySchema gets 4 matching income-side buckets.
  • PortfolioReviewSchema denormalises the 4 realised + 4 tax fields for the headline pill.

Tax computer:

  • New input fields: debt_mf_stcg_paise, debt_mf_ltcg_indexed_paise, debt_mf_ltcg_flat_paise, debt_mf_ltcg_slab_paise.
  • Applied rates: 20% (indexed), 12.5% (flat), marginal slab (STCG + slab-bucket LTCG).

Status

Active. Ledger + mapper + engines wired in the Phase 2 + Phase 4 recompute-correctness sweeps. Parser scheme-type split is V2 (see follow-up ADR when it lands).

Sources

  • Phase 2 + Phase 4 recompute-correctness commits.
  • Finance Act 2023 §§48/50AA + Finance Act 2024 amendments.
  • Related entity: pillar-portfolio, pillar-tax.

Every project of mine is written down like this.

Read the résumé