All 27 European leaders have agreed to a $55bln aid package for Ukraine, European Council President Charles Michel said.
"We have a deal," Mr Michel wrote on X, formerly Twitter.
News of the agreement was announced less than two hours after the summit started.
Expressing gratefulness to EU leaders, Ukrainian President Volodymyr Zelensky said that the package would "strengthen the long-term economic and financial stability" of Ukraine.
The new deal includes a yearly discussion of the package and the option to review it in two years, "if need be", diplomatic have sources said.
This funding was important for Ukraine financially, and it needs Europe to stay united in its support.