South Africa were dismissed for 208 before the Kiwis recovered from 140-8 to seal victory in the 46th over.
New Zealand bounced back from a torrid Test series to win a battle of attrition in the first of three one-day internationals against South Africa in Paarl on Saturday.
South Africa struggled to a score of 208 in 46 overs, and despite losing wickets regularly, New Zealand were able to grind out a one-wicket victory with 26 balls to spare.
The tourists were aided in no small way by 31 extras, including 15 wides and three no-balls, conceded by the Proteas bowlers.
New Zealand did well to recover from a disastrous start, with Martin Guptill being run out off the second ball of the innings by a direct hit from AB de Villliers, now freed from the wicket-keeping gloves and fielding in the covers.
Two quick strikes by Lonwabo Tsotsobe left the Black Caps reeling at 21 for three, but skipper Brendon McCullum and BJ Watling steadied the ship to take the score to 73 at a decent run-rate of around 4.5 an over.
McCullum was then trapped lbw by Ryan McLaren in a passage of play marred by a power failure which prevented any referrals to the third umpire. McCullum was obviously not happy with the decision, but to counter that, the Proteas were unable to refer two run-out decisions.
James Franklin shared a stand of 36 off 37 balls with Nathan McCullum for the eighth wicket and put up a stand of 41 with Kyle Mills for the ninth wicket which gave the Black Caps the edge. Franklin ended on 47 off 61 balls with five fours.
Having elected to bowl on a low, slow wicket, New Zealand's debutant bowler, Mitchell McClenaghan, took four wickets and could have had another but was let down by sloppy ground fielding.
Off-spinner Kane Williamson gave him good support with a haul of four wickets of his own.
South Africa might have counted themselves lucky to get to 208, for Graeme Smith was dropped on two and Quinton de Kock on nine, both to regulation catches in the slips. It was left to Rory Kleinveldt, coming in at number nine, to add 26 off 20 balls, with three superb sixes, to push them above 200 runs.
The hosts were never able to establish the base from which to launch an attack in the later stages of the innings.
Only Faf Du Plessis stood firm with a score of 57 off 72 balls, which included just three fours. He shared a useful stand of 49 for the fourth wicket with Colin Ingram, who was looking confident for his 29 before he top-edged a delivery from Williamson which was superbly taken by Nathan McCullum.
The two sides meet again in the second of three ODIs in Kimberley on Tuesday. – Sapa.