Dinesh Karthik and Shikhar Dhawan struck half-centuries as India defeated New Zealand by six wickets to set up a decider in their one-day international series.

A rare defeat in Sunday's opener had India under a degree of pressure coming into this meeting in Pune, but they showed their champion quality to level the three-match rubber at 1-1 ahead of the weekend's finale in Kanpur.

Bhuvneshwar Kumar (3-45) was the pick of the India bowlers as New Zealand were reduced to 58-4 before recovering to 230-9 thanks largely to Henry Nicholls' patient 42 and Colin de Grandhomme's more aggressive 41-ball 40.

It never looked likely to be enough, though, and the target was swiftly put into perspective by Dhawan (68 from 84) and Karthik (64 not out) as India cruised home with four overs to spare.

The Black Caps were always behind the eight-ball after losing four wickets inside 16 overs.

Bhuvneshwar accounted for openers Martin Guptill (11) and Colin Munro (10), while Jasprit Bumrah (2-38) claimed the scalp of Black Caps skipper Kane Williamson lbw for just three, and Hardik Pandya enticed Ross Taylor (21) to glove behind.

Centurion and match-winner in the first ODI, Tom Latham steadied the ship somewhat with 38 from 62 before the middle and lower order boosted New Zealand to some semblance of respectability.

Nicholls' resistance ended when he became Bhuvneshwar's third victim, and De Grandhomme struck five fours and a six before he and Adam Milne fell to successive deliveries from Yuzvendra Chahal (2-36).

Mitchell Santner (29) and Tim Southee (25 not out) carried the tourists beyond 200 and the latter made the breakthrough early in the reply as Rohit Sharma chipped tamely to midwicket for seven.

The same bowler saw a review for caught behind denied when Dhawan was 25, and the Pune crowd was silenced when captain Virat Kohli edged De Grandhomme to wicketkeeper Latham to fall for 29.

Dhawan and Karthik were unruffled, however, the left-hander successfully overturning the on-field decision after being given out caught behind, but their 66-run stand was ended when the opener lofted Milne to cover.

Pandya struck 30 from 31 balls to ensure India kept well ahead of the rate, and it was left to Karthik and MS Dhoni (18 not out) to get their side over the line and keep the series alive ahead of Sunday's showdown.