Virat Kohli's century was in vain as India lost the first one-day international against New Zealand by 24 runs in Napier.
Corey Anderson's powerful late hitting led New Zealand to 292-7, the all-rounder's 40-ball unbeaten 68 adding to Kane Williamson's 71 and Ross Taylor's 55.
Kohli made a sparkling 123 off 110 balls but Mitchell McClenaghan took 4-68, including the key scalps of Kohli and Mahendra Singh Dhoni, to set up victory.
New Zealand were put in to bat but Jesse Ryder wasted no time in taking the attack to India's bowlers, thumping the fifth ball he faced for six and hitting three fours off Mohammed Shami, who had the last laugh when he bowled the left-hander for 18.
Ryder's opening partner Martin Guptill cut Shami to Ravichandran Ashwin at first slip but Williamson and Taylor slowly set about repairing the damage.
Williamson was the more attacking of the two and brought up his 50 off 66 balls with a single to long-on in the 26th over.
Taylor followed suit in the 33rd and needed just 70 deliveries to reach his half-century, despite hitting just one four in his innings.
Williamson cut Ravindra Jadeja for four but perished in the same over to end a third-wicket partnership of 121 as he carelessly lifted the slow left-armer to Ajinkya Rahane at silly mid-off.
Taylor wafted at Shami to be caught behind but Brendon McCullum and Anderson quickly hit their stride.
The 40th over from Ishant Sharma saw Anderson's six over square leg followed by back-to-back fours from McCullum but the New Zealand captain edged Bhuvneshwar Kumar to opposite number Dhoni to depart for 30.
Anderson and Luke Ronchi found the boundary with regularity as India conceded 39 runs in the 44th and 45th overs.
Anderson became the third home player to go past his half-century in the 47th over before launching Ishant over mid-wicket for his fourth six, and Ronchi made a rapid 30 as New Zealand set India a tricky target of 293.
Shikhar Dhawan made 32 but opening partner Rohit Sharma fell for three and Rahane fluffed his audition for the number four spot, making only seven.
Suresh Raina scored 18 but spooned a short ball from Adam Milne to fine leg where Tim Southee took a good tumbling catch to leave India 129-4.
Back on track
Kohli and captain Dhoni looked to be getting their side back on track, though, as they put on 95 in 14.1 overs.
Kohli, whose first 12 runs had come in fours, took 58 balls to reach 50 having hit Nathan McCullum for six shortly beforehand.
He brought up his hundred with a boundary off Southee - but not without alarm, having skied the first ball of the seamer's spell straight to cover where Ryder hopelessly misjudged a swirling catch.
Dhoni made 40 from 45 balls and was starting to build momentum when he was late on a short ball from McClenaghan, gloving the ball onto his neck and down the leg side where keeper Ronchi took a good catch.
McClenaghan removed Jadeja later in the same over and his next brought him the key wicket of Kohli, who had struck a six and a four but then drove straight to Ryder who redeemed himself with a simpler take.
Kumar was run out by Williamson and Ashwin, having launched McClenaghan for six, escaped after a mix-up between Brendon McCullum and Southee but holed out to the latter next ball.
Last pair Ishant and Shami gamely tried to play some shots but the former was cleaned up by a Southee yorker, via an inside edge, to end the innings.