
The former opening batsman will formally take over in August ahead of the two home series against Australia and Sri Lanka, Cricket South Africa said at a news conference on Monday.
Kirsten's successful three-year stint as India coach ended in April when he turned down a lucrative contract extension.
The 43-year-old will be taking over from Corrie van Zyl at South Africa.
Kirsten played 101 tests and 185 one-day internationals for his country.