New Zealand claimed four wickets during the morning session to head to the penultimate day of the swing competition at Green Park Stadium in Kanpur.
Iyer followed his first 100 innings with a crucial 65, forging more than 50 stands with Ravichandran Ashwin and Wriddhiman Saha to revive India who declared their second inning 234-7.
Chasing a dreaded 284 victory goal on a worn out track, the tourists were four to one when bad light brought play to a halt.
New Zealand opener Will Young was given lbw to Ashwin, which could have been called off, but the batsman was late to review the decision.
Tom Latham will resume Monday at two with the night watchman Will Somerville, who has not yet opened his account, for company.
Earlier, New Zealander Tim Southee (3-75) hit twice with three balls in the morning session as he detonated India’s First Order after the home side took over on 14-1.
Kyle Jamieson (3-40) conceded some limits before dismissing Cheteshwar Pujara, who scored 22, to open the floodgates.
Left arm spinner Ajaz Patel secured India yet again when he trapped substitute captain Ajinkya Rahane’s leg before the wicket for four with one arm that stayed low.
Southee then twisted the knife as he took out the opener Mayank Agarwal, caught in the slip, and Ravindra Jadeja, trapped lbw, in a two-wicket maiden to reduce India to 51-5.
Iyer and Ashwin, who made 32, not only stabilized the innings but also scored sharply to put the pressure on New Zealand.
Iyer took off on tea, but Saha persevered despite a stiff neck that kept him off the pitch on Saturday.
Saha did not stay on 61, having featured in a second over 50-year partnership with Axar Patel who did not make 28 prior to India’s declaration.
It was a memorable test start for Iyer who was only selected after several front row hitters, including regular skipper Virat Kohli, had a rest.
Iyer’s fairytale debut presents team management with a selection puzzle as Kohli is set to return for the second and final test in Mumbai starting on Friday.