The opener, 32, was struck by a ball from India pace bowler Umesh Yadav during the tourists' second innings.
A physio was called for and the umpires announced an early tea in Ranchi.
South Africa was 26 for 4 at the time and are set to suffer an innings defeat and a series whitewash as they slipped to 132 for 8 by stumps, still 203 runs adrift.