They will send the bill to President Donald Trump to sign into law nearly 18 months years after the late Senator Lindsey Graham introduced it.
The bill, now called the "Lindsey O. Graham Sanctioning Russia and Iran Act of 2026" to honour the South Carolina Republican, passed the Senate in August.
The House on Wednesday passed it by 262 to 159, as dozens of Democrats broke with party leaders to join most Republicans in favour.
The legislation targets Russia's energy and defence industries, as well as its "shadow fleet" of tankers that evade existing sanctions.
It faced pushback because it also authorises Trump to impose stiff tariffs on China, India and other countries to reduce their dependence on Russian oil and gas, as well as to extend sanctions on Iran.
The legislation had faced considerable opposition since Graham and dozens of other senators introduced it in April 2025. It took Trump until July 2026 — days before Graham's sudden death on July 11 — to allow Congress' Republican leaders to schedule a vote.
Russia launched its full-scale invasion of Ukraine in February 2022, and the two sides have since waged the deadliest war in Europe since World War II.
Since starting his second term in January 2025, Trump has generally favoured keeping control over tariffs and sanctions, a central tool of his foreign policy, rather than working with Congress on legislation.
The Graham act passed the Senate in August by 86-11 with strong bipartisan support, after Ukrainian President Volodymyr Zelenskiy met with lawmakers to urge its passage and took the unusual step of watching an early procedural vote from a seat in the chamber.
The bill faced opposition from House Democrats who said it gives Trump too many new tariff powers that he could use against US allies. They said the president already has the authority he needs to impose sanctions on Russia, but has chosen not to do so.