Cape Town - A debut century from Reeza Hendricks in the third one-day international (ODI) saw the Proteas set the Sri Lankans a massive total in their allocated 50 overs on Sunday.
LIVE: Sri Lanka v Proteas, 3rd ODI
The hosts need 364 runs to win in their must-win encounter after the Proteas finished on 363 for 7 - their highest total in Sri Lanka.
Making his ODI debut, Hendricks smashed 102 off 89 and became the third Proteas batsmen to make a century on debut (alongside Colin Ingram and Temba Bavuma).
Hendricks was involved with a vital 78-run partnership with JP Duminy before he fell shortly after reaching his maiden milestone.
Duminy fell eight runs short of a century as he departed for a quick-fire 92 off 70 balls - hitting 8 fours and 4 sixes.
Duminy continued his impressive form in the series and provided a 103-run fifth wicket partnership with David Miller.
Miller, also provided a gem of an innings, smashed 51 off 47 runs before he was dismissed.
At the start of the innings, Proteas opening batsman Hashim Amla provided the perfect foundation, hitting a run-a-ball 59 before being cleanly bowled by Thisara Perera.
Thisara was the pick of the Sri Lankan bowlers, ending with figures of 4 for 75 in his 10 overs.
Earlier in the day, Sri Lanka captain Angelo Mathews won the toss and elected to bowl at Pellekele in Kandy.
The Proteas, who currently lead the five-match series 2-0, need a win to seal the ODI series - after being whitewashed 2-0 in the Test series last month.