The victory gave India six points from two matches and also made them the only unbeaten team in their pool following England's surprise 4-1 win over Olympic champions Germany earlier in the day.
Goals from Akashdeep Singh (10th min), Gurwinder Singh Chandi (14th), V R Raghunath (25th) and Danish Mujtaba (65th) gave India their second win in successive days.
Yesterday India had defeated England 3-1 in their opening game.
New Zealand took the initial lead in the third minute when India conceded a self-goal, which has been introduced into world level hockey after the Olympic Games.
The second goal for New Zealand was scored in the 37th minute by Nicholas Wilson.
India will next take on Germany on Tuesday after a rest day tomorrow.