A quickfire 30 from captain AB de Villiers helped South Africa post a competitive score of 78 in their reduced-overs match against Sri Lanka in Hambantota this afternoon.
The start was delayed due to rain, but the clouds eventually cleared to allow a seven-overs-per-side match to determine who will top Group C of the ICC World Twenty20.
Big-hitting Richard Levi was dismissed by Nuwan Kulasekara in the first over, before the prolific Hashim Amla was stumped by Kumar Sangakkara off the bowling of Rangana Herath.
De Villiers came to the Proteas' rescue, crashing two sixes in a knock of 30 from just 13 balls.
After the wicketkeeper was caught on the boundary off Lasith Malinga, South Africa were staring at a below-par total, but JP Duminy hit 10 off the last two balls to push them up to a potentially winnable score.