Belgian political leaders have reached a consensus in support of the Ceta trade deal between the EU and Canada, Prime Minister Charles Michel has said.
He said they had agreed on an addendum to the deal which addressed regional concerns over the rights of farmers and governments.
The changes will still have to be approved by the other 27 EU members.
A signing ceremony on Thursday was cancelled after the French-speaking region of Wallonia vetoed the deal.
- What is Ceta?
- What the Ceta debacle with Canada means for EU politics
- Is Ceta a good model for Brexit?
Wallonia, a staunchly socialist region of 3.6 million people, had been leading objections, demanding stronger safeguards on labour, environmental and consumer standards. It also wanted more protection for Walloon farmers, who would face new competition from Canadian imports.
But after the latest round of marathon talks, Mr Michel tweeted: “All parliaments are now able to approve by tomorrow at midnight. Important step for EU and Canada.”
He did not give further details, but the premier of the Flemish region, Geert Bourgeois, said the original text of the trade deal remained the same.
“This is a clarification. The actual treaty does not change,” he said.
Canada’s Foreign Minister Stephane Dion welcomed the announcement.
“If it materialises, it’s excellent news,” he said during a visit to Paris, adding he was “cautiously optimistic”.
European Council President Donald Tusk tweeted, “Only once all procedures are finalised for EU signing CETA, will I contact PM @JustinTrudeau”.
The deal was welcomed by the head of the Walloon government, Paul Magnette.
“Wallonia is extremely happy that our demands were heard,” he said.
“If we took a bit of time, what we achieved here is important, not only for Wallonia but for all Europeans,” he added.
It took seven years to negotiate Ceta, the EU’s most ambitious trade deal yet.
The Ceta wrangling has raised new concerns about future UK negotiations with the EU on a Brexit trade deal.
EU-Canada trade deal: Belgians break Ceta deadlock