Potchefstroom - Aiden Markram was run out three runs short of a century on Test debut after he and Dean Elgar put on 196 for South Africa's first wicket on the first day of the first Test against Bangladesh at Senwes Park on Thursday.
LIVE: Proteas v Bangladesh, Day 1
South Africa were 198 for one at tea after being sent in to bat, with Elgar unbeaten on 101.
Markram, 22, was largely untroubled as he made 97 off 152 balls before a mix-up when both players were approaching their centuries in what proved to be the last over before tea.
Elgar, on 99, played a ball from Mehidy Hasan towards backward point. Markram set off for a run but was sent back and stranded well short of his ground as Mominul Haque's throw reach Hasan. Markram hit 13 boundaries.
Two balls later Elgar reached his ninth Test century off 176 balls with seven fours and two sixes.
South African captain Faf du Plessis said he was "very surprised" when Bangladesh's Mushfiqur Rahim won the toss and decided to bowl.
Du Plessis said conditions looked ideal for batting, with a dry pitch likely to help spin bowlers later in the match.
The left-handed Elgar and right-handed Markram both looked comfortable against a bowling attack which included three seam bowlers and a lone specialist spin bowler in off-spinner Hasan, who came on to bowl after only five overs.
Markram, who captained South Africa to the 2014 Under-19 World Cup title, was Elgar's fourth opening partner of the year and together they posted South Africa's first half-century start in 16 innings before converting it into three figures shortly after lunch.
South Africa fielded a second new cap in all-rounder Andile Phehlukwayo, who together with fast bowler Kagiso Rabada, was a team-mate of Markram in the Under-19 side.