A century to Black Caps returnee Neil Broom and middle-order Bangladeshi collapse have given the Kiwis a 67-run ODI victory in Nelson.
Broom, who made his first international appearance in six years on Boxing Day, notched a clinical 109 not out from 107 balls as batting partners fell around him.
Given a target of 252, the Tigers looked ready to cruise to victory at 2-105 until losing their last eight wickets for just 79 runs.
The win wraps up the three-match ODI series for the Black Caps, who will remain in Nelson for the third dead-rubber game on Saturday.
Yet beyond Broom's century and some handy bowling from skipper Kane Williamson, the Kiwis will have little to cheer about, having struggled to dominate the contest.
"There were a few learning curves for both teams today," Williamson said.
Losing the toss and batting first, both Williamson and opener Martin Guptill were removed cheaply for 14 and a duck, while Tom Latham could only earn 22.
Broom and partner Jimmy Neesham pulled the side back into the contest with a 51-run stand, before Neesham was stumped for 28 and Colin Munro bowled for three.
Veteran wicketkeeper Luke Ronchi then provided a steady foil for the imperious Broom, dovetailing nicely with a 64-run partnership before his departure.
Having barely hit 100 runs by the 25th over, the Blacks Caps had done well to arrive at the 200 mark with seven overs remaining.
And after short-lived partnerships with a number of Kiwi lower-order batsmen, the 33-year-old Broom brought up his maiden ton in the 48th over.
With the scent of victory in their nostrils, Bangladesh got off to a decent start in their five-an-over run rate quest before Tamim Iqball fell to Tim Southee.
But the loss of Tamim for 16 didn't deter the side, whose second-wicket partnership between Imrul Kayes and Sabbir Rahman racked up 75 runs.
On the precipice of defeat, the Kiwis were handed a lifeline at 105-2 when the two batsmen crossed wires and ran towards the same end, eliminating Sabbir for 38.
From there, the collapse was on, and every Bangladeshi batsman from No.4 to No.7 fell for less than 10 runs, including talisman Shakib Al Hasan.
A brief rally from keeper Nurul Hasan and skipper Mashrafe Mortaza gave the Tigers the smallest glimpse of victory, before Trent Boult snared them both.