Donald's last chance to qualify was set to be this weekend's Scottish Open.
The Englishman, 38, had been first reserve for The Open - but he will now play with Van Zyl choosing to rest before competing in the Rio Olympics.
Former winner Stewart Cink has also withdrawn, allowing fellow American Daniel Summerhays into the field.
The 43-year-old, who beat Tom Watson in a play-off at Turnberry in 2009, took a break from the game earlier this season after his wife Lisa was diagnosed with breast cancer.
Donald finished 12th at St Andrews last year, but missed the cut the last time The Open was staged at Troon in 2004.
We've launched a new BBC Sport newsletter, bringing all the best stories, features and video right to your inbox. You can sign up here.
Former world number one Luke Donald will play at this month's Open Championship at Royal Troon after South African Jaco van Zyl's withdrawal.