South Africa earned a whitewash-sealing four-wicket victory over Zimbabwe in the third ODI in skipper Faf du Plessis' comeback game.
Du Plessis, playing his first fixture since August following shoulder surgery, hit 26, with Reeza Hendricks top-scoring with 66 and Heinrich Klaasen stroking an ODI-best 59 as the Proteas reached their target of 229 with 25 balls to spare in Paarl, Dale Steyn thumping the winning boundary.
Zimbabwe comfortably put in their best batting performance of the series, having been blitzed for 117 and 78 in the first two matches, but were still restricted by a talent-packed South Africa attack.
Steyn (3-29) and Kagiso Rabada (3-32) shared six wickets, while Imran Tahir - whose 6-24 in the second ODI in Bloemfontein on Wednesday included a hat-trick - and Andile Phehlukwayo snaffled two each as Zimbabwe were dismissed for 228 three balls shy of their 50 overs.
Tabraiz Shamsi (0-72), though, recorded the worst ODI figures for a South African against Zimbabwe in his first appearance of the series, with Sean Williams (69 off 79) hitting five of his 10 fours off the spinner.
Williams put on 73 with Brendan Taylor (40) for the fourth wicket, during which time Taylor became the third Zimbabwean, after the Flower brothers, Andy and Grant, to pass 6,000 ODI runs.
Hendricks and Aiden Markram (42) shared a 75-run stand for South Africa's opening wicket before the latter was unfortunate to be given out lbw to Williams, with replays showing an inside edge.
Hamilton Masakadza's side also had Du Plessis and JP Duminy (1) caught at midwicket and deep extra-cover respectively and sniffed a real chance when Donald Tiripano (2-35) trapped Hendricks lbw with the score on 156.
However, Klaasen, who picked out midwicket with seven runs required, and Khaya Zondo (25no) then shared a stand of 66 as the Proteas wrapped up a 3-0 series scoreline and a 38th victory in 40 completed matches against Zimbabwe, whose losing streak in ODIs has now stretched to 10 matches.
Watch the first T20I between South Africa and Zimbabwe, at Buffalo Park in East London, live on Sky Sports Cricket from 4.55pm on Tuesday.