Saha, the first choice Test wicketkeeper since Mahendra Singh Dhoni retired in 2014, missed the second Test due a hamstring injury.
Karthik, 32, last played for his country in 2010. He will join the team ahead of the final Test starting in Johannesburg on January 24, the Board of Control for Cricket in India (BCCI) said.
Karthik has played 23 Tests with 51 catches and five stumpings to his name.
The BCCI said Saha, who claimed 10 catches in the first Test in Cape Town, “suffered an upper left hamstring tendon injury” during training last Thursday. He was replaced by Parthiv Patel for the second game against South Africa.
South Africa lead the three-match series 1-0 after winning the first Test in Cape Town by 72 runs.