The 38-year-old Kallis struck a century in his final Test against India at Kingsmead on Sunday and when on 115 he overtook Dravid in the list of highest run scorers in the five-day game.
The list is headed by India's Sachin Tendulkar with 15,921 runs in 200 Tests. Australia's Ricky Ponting is second with 13,378 runs from 168 games.
Kallis is now third with 13,289 with today's innings of 115. Dravid ended his 164-match career with 13,288 runs.
Soon after overtaking Dravid, Kallis was caught by MS Dhoni off Ravindra Jadeja. He attempted a sweep shot and a top-edge was safely collected by Dhoni. The right-hander was given a standing ovation by a small crowd and his teammates.
Most runs in Tests (Top 5)
Sachin Tendulkar - 15,921 (200 matches)
Ricky Ponting - 13,378 (168)
Jacques Kallis - 13,289 (166)
Rahul Dravid - 13,288 (164)
Brian Lara 11,953 (131)