Morne Morkel tightened South Africa's grip on the second Test in Wellington today as New Zealand fell apart in their second innings on day three at the Basin Reserve.
At tea, New Zealand were 139 for five with a lead of 48 runs and only five wickets remaining.
Opener Jeet Raval, battling to extend the New Zealand innings, was on 72 in a 49-run partnership with BJ Watling who was not out 14.
It is Raval's highest Test score, surpassing the 55 he posted twice against Pakistan last November.
He then destroyed the New Zealand top order, although he proved expensive with figures of three for 50 off 11 overs.
After removing the out-of-form Tom Latham for six, Morkel captured the key New Zealand wicket of Kane Williamson for one and followed up with Neil Broom for 20. All three were caught behind the stumps.
Williamson's match total of three is his worst performance in any of his 60 Tests where he has batted in both innings.
The 1.96 metre (6ft 5in) Morkel, getting bounce and seam movement, found the faintest of edges from Williamson which eluded umpire Kumar Dharmasena but was detected by the "hotspot" technology.
Broom was on 20 at lunch but failed to advance after play resumed before an edge off Morkel was taken by a diving Quinton de Kock who grasped the ball in front of Hashim Amla at first slip.
Keshav Maharaj accounted for first innings centurion Henry Nicholls for seven and followed with the wicket of Jimmy Neesham (four) to have two for 26 off 14 overs.
Neesham had attempted to clout a loose ball to the boundary only to be caught by a leaping Faf du Plessis at mid-wicket.
Raval was dropped by Duminy in the gully on 53 and on 67 he charged down the wicket to Duminy and missed the ball, as did wicketkeeper de Kock when a stumping was on the cards.