Temba Bavuma will replace Zubayr Hamza in the South Africa side for the final Test against England at the Wanderers, which starts on Friday.
Bavuma has not played for the Proteas since a crushing defeat in the third Test against India in Ranchi last October.
The diminutive batsman was dropped from the squad after being omitted for the first Test against England, and he was challenged to go away and make first-class runs for the Lions.
Bavuma responded by making a career-best 180 against the Dolphins last week and will feature in Johannesburg at the expense of Hamza as South Africa strive to salvage a 2-2 series draw.
Rassie van der Dussen will move up the order to number three in the absence of Hamza, who has made only 39 across five innings since scoring 39 in the first innings of the first Test at Centurion.
South Africa captain Faf du Plessis told reporters on Thursday: "I can tell you that Temba is back in the side.
"The rest, we are still waiting to see what the weather does tomorrow. We don't have 100 per cent clarity on that yet, but that is the one thing that is definite."
A player who will definitely not feature in the fourth Test is Kagiso Rabada. The paceman serves a one-match ban for the excessive celebration of Joe Root's wicket in the third Test that earned him a fourth demerit point.