South Africa’s High Court ordered on Friday that a decision seven years ago to drop 783 corruption charges against President Jacob Zuma should be reviewed, calling it “irrational”.
The decision taken in April 2009 to drop the charges allowed Zuma to run for president in elections the same month.
As Zuma faces calls for his resignation, the charges were another setback for the scandal-ridden leader.
The president has been surrounded by scandal during his incumbency. This year's local elections pose a major risk for Zuma's ruling African National Congress (ANC), facing a strong challenge from opponents seeking to capitalise on what they see as the president's missteps.
National prosecutor Mokotedi Mpshe’s decision at the time was based on phone intercepts presented by Zuma’s legal team that suggested the timing of the charges in late 2007 may have been part of a political plot against him.
In response, Judge Aubrey Ledwaba said that Mpshe’s decision and behaviour was irrational, especially his failure to disclose his decision to prosecutors until the moment he announced it to the nation at a news conference.
"If the decision had been rational and above board, why the secrecy?" Ledwaba said.
The ruling adds pressure on Zuma who struggles with calls to quit even from within the ANC since a damning constitutional court judgement against him last month.
The three-judge bench ruling does not automatically reinstate the charges against Zuma, a decision that can only come from the prosecuting authorities. It was unclear when such a decision would be taken.
The rand hit a five-month high against the dollar after the ruling and government bonds also firmed.
"Mr. Zuma should face the charges as applied in the indictment," Ledwaba said, summarising the unanimous ruling.
It was not immediately clear whether Zuma would appeal, but the presidency said he would weigh the judgement and its consequences, adding that Zuma faced no charges in court at present.
The ANC said the ruling would not harm the party's image or its chances at the local elections in August.
Shaun Abrahams, head of the National Prosecuting Authority, told Reuters he was studying the ruling.
Opposition Democratic Alliance leader Mmusi Maimane, whose party brought the court application, demanded the charges against Zuma be reinstated.
"Jacob Zuma is not fit to be the president of this country," Maimane told reporters.
"The decision that they took was irrational and we still maintain that Jacob Zuma is corrupt. Jacob Zuma must face the full might of the law. He has already violated the constitution. There is no debate about that," he added.