Hungary has blocked €50bn ($55bn; £43bn) in EU aid for Ukraine - just hours after an agreement was reached on starting membership talks.
"Summary of the nightshift: veto for the extra money to Ukraine," Hungarian Prime Minister Viktor Orban said after Thursday's talks in Brussels.
EU leaders said the aid negotiations would resume early next year.
Ukraine is critically dependent on EU and US funding as it continues to fight occupying Russian forces.
The aid blocking was announced by Mr Orban shortly after the EU leaders decided to open membership talks with Ukraine and Moldova and to grant candidate status to Georgia.
Hungary - which maintains close ties with Russia - has long opposed membership for Ukraine but did not veto that move.
Mr Orban left the negotiating room momentarily in what officials described as a pre-agreed and constructive manner, while the other 26 leaders went ahead with the vote.
He told Hungarian state radio on Friday that he had fought for eight hours to stop his EU partners but could not convince them. Ukraine's path to EU membership would be a long process anyway, he added, adding that parliament in Budapest could still stop it happening if it wanted to.
Commenting on Mr Orban's opposition to the aid, Dutch Prime Minister Mark Rutte said: "We still have some time, Ukraine is not out of money in the next few weeks."
"We agreed with the 26 countries," he added. "Viktor Orban, Hungary, were not yet able to do that. I am fairly confident we can get a deal early next year. We are thinking of late January."
At a news briefing in the early hours of Friday, Mr Michel confirmed that all but one EU leaders had agreed on the aid package and wider budget proposals for the bloc - although Sweden still needed to consult its parliament.
"We will revert to this matter early next year and we'll try to get unanimity," he said.
The loans and grants were to keep the country ticking over - helping fund public services, wages and pensions.
Ukraine is also desperately seeking the approval of a $61bn US defence aid package - but that decision is also being delayed because of major disagreements between Democrat and Republican lawmakers. .
Ukraine's counter-offensive against Russia's occupying forces ground to a halt at the start of winter, and there are fears that the Russians could simply outgun Ukraine.
Last week, President Zelensky's wife, Olena, warned in a BBC interview that Ukrainians were in "mortal danger" of being left to die if Western countries did not continue their financial support.
Mr Zelensky was delighted by the EU's announcement on the membership. "This is a victory for Ukraine. A victory for all of Europe. A victory that motivates, inspires and strengthens," he wrote in a post on X.
Ukrainian politician Kira Rudik added that "we were really elated" following the news about EU membership talks, saying it showed "Ukraine has a future right now".
But she said the feeling was now "bittersweet" because of the funding being blocked, which she called a "huge frustration". "It is impossible to have a European future without winning the war," she told the BBC.
Earlier this week a senior Ukrainian official told the BBC that for now, EU membership talks are more important that the €50bn because of the message it sends to both the Ukrainian people and Vladimir Putin.
And there's some confidence in Kyiv that Brussels will be able to find a way to channel fresh economic funds, by hook or by crook.
Ukraine and neighbouring Moldova applied to join the EU after Russia launched its full-scale invasion of Ukraine in February 2022. They were both given candidate status last June, while Georgia was passed over at the time.
Moldovan President Maia Sandu said it was an honour to share the path to EU accession with Ukraine. "We wouldn't be here today without Ukraine's brave resistance against Russia's brutal invasion," she wrote.
Earlier this year, Moldova alleged that Russia was seeking to seize power in Chisinau.
White House National Security Adviser Jake Sullivan welcomed the EU's "historic" move to open accession talks with Ukraine and Moldova, calling it a "crucial step toward fulfilling their Euro-Atlantic aspirations".
German Chancellor Olaf Scholz praised his fellow leaders for showing a "strong sign of support", adding that it was clear that both Ukraine and Moldova belonged to "the European family". A diplomat at the summit said it was Mr Scholz's idea for Mr Orban to leave the room to enable the vote to go through.
The Hungarian leader later distanced himself from his colleagues with a video message on Facebook: "EU membership of Ukraine is a bad decision. Hungary does not want to participate in this bad decision."
Mr Orban has also argued that Ukraine should not get large funds from the EU as it is not part of the bloc.
Earlier on Thursday, President Putin mocked Ukraine and claimed Western support was running out: "Excuse my vulgarity, but everything is being brought in as a freebie. But those freebies could run out at some point."
Talks on joining the EU can take years, so Thursday's decision will not guarantee Ukraine membership.
EU candidate countries have to pass a series of reforms to adhere to standards ranging from the rule of law to the economy, although the EU's executive has already praised Ukraine for completing more than 90% of the steps taken so far on justice and tackling corruption.
There are also other countries, aside from Hungary, who are sceptical about expanding the EU beyond the current 27.
And talk of expansion often comes alongside airy proposals for root-and-branch reform of a bloc that's often unwieldy on far less fundamental issues.
But it's still a boost for morale and comes just in time as Ukraine heads into a second winter following Russia's full-scale invasion, and as the world's attention is drawn elsewhere by war in the Middle East.