Keshav Maharaj took a career best six wickets to set up an eight wicket win for South Africa inside three days after New Zealand crumpled in Wellington on Saturday.
It gave South Africa an unbeatable 1-0 lead in the series with one Test to play.
Faced with the guile of Maharaj’s left-arm spin and the seam and bounce of Morne Morkel New Zealand struggled through their second innings to be all out for 171.
Maharaj finished with six for 40, the best figures and second five-wicket haul in his fledgling six-Test career while Morkel took the top off the New Zealand innings, including the key wicket of Kane Williamson, to have three for 50.
It left South Africa with an 81-run target which they knocked off for the loss of two wickets in 25 overs.
Five sessions earlier, New Zealand had control of the Test after a first innings 268 and having South Africa 94 for six in reply.
But from there it was all the Proteas who rallied to be all out for 359 to take a 91-run lead into the second innings.
On a flattening track and with nearly three days remaining, there was time for New Zealand to mount a strong comeback.
Instead their second innings was done in 63.2 overs with a career best 80 by Jeet Raval and a 65-run partnership between Raval and BJ Watling (29) the only sign of resistance.
Raval’s dismissal signalled the beginning of the end as the last five wickets fell for 16 runs.
New Zealand said before the Test they did not particularly want a green wicket given the high quality of the South African pace attack.
But it was the South African spinners who did serious damage, claiming six wickets in each innings with Maharaj having match figures of eight for 87.
When South Africa resumed day three at 349 for nine, Morkel and Vernon Philander added a further 10 runs in a 57-run last wicket partnership.
Morkel followed up by rapidly removing Tom Latham, Williamson and Neil Broom to have New Zealand at three for 64, still 27 behind and with only seven wickets left.
Once Williamson fell cheaply, New Zealand needed the remaining batsmen to step up but instead Neil Broom, Henry Nicholls and Jimmy Neesham could only add 31 in total before BJ Watling joined Raval to halt the flow of wickets.
Debutant Broom, after a duck in his first inning, reached 20 when he edged Morkel to wicketkeeper Quinton de Koch, and Maharaj had Nicholls playing on for seven and in the same over Neesham went for four and New Zealand were 90 for five.
Raval took two off Morkel at the start of the next over to put New Zealand in credit but once he reached his fourth half century cracks started to appear.
On 53 he was dropped by JP Duminy in the gully and on 67 he charged down the wicket to Duminy and missed the ball, but so too did de Kock when a stumping was on the cards.
De Kock made amends the next time Raval danced down the wicket and completed the stumping for Maharaj’s third wicket and the opener was gone for 80.
The third and final Test starts in Hamilton next Saturday.