The Black Caps looked set for an easy day when they reduced Scotland to 12-4 but had to work for their victory after being set a victory target of 143.
Matt Machan (56 off 79 balls) and Richie Berrington (50 off 80 balls) led the recovery after Trent Boult (2-21) trapped Calum Macleod and Hamish Gardiner for golden ducks at the start of the second over.
Tim Southee (2-35) then deepened the in-roads, as Kyle Coetzer (one) was caught at midwicket and Scotland captain Preston Mommesen fell lbw first ball.
Machan, who brought up his fifty off 71 balls, put on 97 for the fifth-wicket with Berrington before top-edging an attempted pull off ??Corey Anderson to mid-on and from there the innings fell away, Scotland being bowled out in just 36.2 overs after the last four wickets fell for 25 runs.
New Zealand, who named an unchanged side from their opening 98-run win over Sri Lanka, successfully knocked off the runs at the University Oval with 151 balls to spare.
But they did not have matters all their own way as Martin Guptill (17) edged Iain Wardlaw (3-57) behind in the third over as he attempted to hit down the ground.
Captain Brendon McCullum (15) also nicked Wardlaw through to Matthew Cross as he failed to build on a solid start and when Ross Taylor (nine) was caught in the deep off Majid Haq, New Zealand were 66-3.
Top-scorer Kane Williamson (38 off 45) put on 40 with Grant Elliott (29) to steady the innings but neither could see the chase through.
Josh Davey found Williamson???s edge in the 18th over and Cross collected his fourth catch of the innings when Elliott nicked Wardlaw behind to make it 117-5.
Davey then removed Anderson (seven) and Luke Ronchi (12) in the space of three balls to raise the tension in the home dressing room before Daniel Vettori saw the Black Caps to victory, the winning runs coming courtesy of a top edge through the slips.
Reflectingon the late wickets, Boult said: “It got a little bit scarier that we would have wanted it to.
“When I’m rushing around the changing room trying to chuck the pads on it means we might be in a little bit of trouble. But we got there in the end and got the points and got the job done.”