European Union leaders have agreed on a plan to block more than two-thirds of Russian oil imports.
The ban will only affect oil that arrives by sea but not pipeline oil, following opposition from Hungary.
European Council chief Charles Michel said the deal cut off “a huge source of financing” for the Russian war machine.
It is part of a sixth package of sanctions approved at a summit in Brussels, which all 27 member states have had to agree on.
Russia currently supplies 27% of the EU’s imported oil and 40% of its gas. The EU pays Russia around €400bn ($430bn, £341bn) a year in return.
So far, no sanctions on Russian gas exports to the EU have been put in place, although plans to open a new gas pipeline from Russia to Germany have been frozen.
EU members spent hours struggling to resolve their differences over the ban on Russian oil imports, with Hungary its main opponent.
The compromise followed weeks of wrangling until it was agreed there would be “a temporary exemption for oil that comes through pipelines to the EU”, Mr Michel told reporters.
Because of this, the immediate sanctions will affect only Russian oil being transported into the EU over sea – two-thirds of the total imported from Russia.
But in practice, European Commission President Ursula von der Leyen said the scope of the ban would be wider, because Germany and Poland have volunteered to wind down their own pipeline imports by the end of this year.
“Left over is around 10-11% that is covered by the southern Druzhba,” Ms Von der Leyen said, referring to the Russian pipeline supplying oil to Hungary, Slovakia and the Czech Republic.
The European Council will revisit this exemption “as soon as possible”, she added.
The ban on Russian oil imports was initially proposed by the European Commission – which develops laws for member states – a month ago.
But resistance, notably from Hungary, which imports 65% of its oil from Russia through pipelines, held up the EU’s troubled latest round of sanctions.
Other landlocked countries, such as Slovakia and the Czech Republic, also asked for more time due to their dependence on Russian oil. Bulgaria, already cut off from Russian gas by Gazprom, had likewise sought opt-outs.
The cost of living crisis being felt across Europe has not helped either. Sky-rocketing energy prices – among other things – have curtailed some EU countries’ appetite for sanctions which could also hurt their own economies.
Hungarian Prime Minister Viktor Orban maintained a tough stance during the talks, blaming the European Commission for failing to properly negotiate the ban with member countries.
He said that energy was a “serious issue” and that “we need solutions and then the sanctions”.
Ukraine’s President Volodymyr Zelensky, who dialled into the summit, urged EU countries to stop their internal “quarrels,” stating that they only helped Moscow.
“All quarrels in Europe must end, internal disputes that only encourage Russia to put more and more pressure on you,” Mr Zelensky said via video-link.
“It is time for you to be not separate, not fragments, but one whole,” he said.
Latvia’s Prime Minister Krisjanis Karins said member countries should not get “bogged down” in their own personal interests.
“It’s going to cost us more. But it’s only money. The Ukrainians are paying with their lives,” he said.