Shinde Chavan Gandhi & Company
Chartered Accountants · FRN 129980W

HAM Annuity Calculator

Verification of Completion Cost & Annuity payable to Concessionaire — Article 23 of the Concession Agreement

1 Project Master

Base Price Indices (as on Reference Index Date preceding Bid Date)
Inflation Factor = ROUND( (CPI×wCPI + WPI×wWPI) ÷ (BaseCPI×wCPI + BaseWPI×wWPI), 2 ). CPI/WPI of the previous month of each IE report date is used.
Change of Scope (COS) & Length Revision
Per requirement: if COS exists, BPC is revised unless a positive COS is paid directly. If project length changes, First Year O&M is revised proportionately by the Length Factor.
Extension of Time (EOT) & CPI/WPI Freeze
If the project is delayed beyond 730 days, EOT is required. When freeze is enabled, the projected O&M inflation factor is frozen at the Second EOT date. Construction milestone CPI/WPI are entered as certified by the division.

2 Bank Rate History & Index Data

Effective FromBank Rate (%)Repo (%) refRemark
Article 23.6.4: Bank Rate + 3%
RBI/OEA seeded
Centrewise seeded

4 Construction Milestones — Completion Cost (Annexure 2)

MilestoneIE Report DateCPIWPI Cum. Progress %Const. Support %Amount Paid in Construction (Rs)
Milestone V date auto-links to PCOD, Milestone VI to COD. Amount Paid = actual certified BPC disbursement during construction (used to derive the outstanding balance annuitised over the operation period).

5 Annuity & O&M Schedule (Operation Period)

180th day of COD (+2 grace)
for future installments
Edit the Annuity % and O&M % per installment (they mirror the Article 23.6.3 schedule). For any installment where the actual IE-certified CPI/WPI is available, enter it to override the projection.
NoFiscal YearAnnuity %O&M %Actual CPI (opt.)Actual WPI (opt.)
Static single-page calculator · host at HAMAnnuityCalculator.sspca.in. To enable live "Fetch latest", deploy a small serverless proxy (e.g. Cloudflare Worker / Vercel function) that fetches RBI Bank Rate and OEA WPI and returns JSON with an Access-Control-Allow-Origin header, then set PROXY_URL in the script.