The Senate overwhelmingly backed legislation Thursday that would let Congress review and possibly reject any final deal with Tehran.
The vote was 98-1 for the bipartisan bill that would give Congress a say on what could be a historic accord that the United States and five other nations are trying to finalize with Iran, which would get relief from crippling economy penalties.
The lone "no" vote came from freshman Sen. Tom Cotton, R-Ark., who wants the administration to submit any agreement to the Senate as a treaty. Under the Constitution, that would require approval of two-thirds of the Senate.
The House is expected to vote next week on the measure.
2016 candidate, Sen. Sen. Marco Rubio, R-Fla., said the bill puts Congress in a better position than having no say.
"At a minimum, at least it creates a process whereby the American people through their representatives can debate an issue of extraordinary importance," Rubio said.
"You talk about a region of the world that could have a nuclear arms race, one of the most unstable regions on the planet," he added in a statement to the press. "And so I hope we’re going to get a good deal. I’m not hopeful that we will, but I think we’re better off if we have this process in place. And so I hope this bill passes here today so at least we’ll have a chance to weigh in on an issue of critical importance."
House Speaker John Boehner, R-Ohio, said in a statement moments after the vote that the "goal is to stop a bad agreement that could pave the way to a nuclear-armed Iran, set off a regional nuclear arms race, and strengthen and legitimize the government of Iran."
The U.S. and other nations negotiating with Tehran have long suspected that Iran's nuclear program is secretly aimed at atomic weapons capability. Tehran insists the program is entirely devoted to civilian purposes.
The talks resume next week in Vienna, with a target date of June 30 for a final agreement.
Senate Majority Leader Mitch McConnell, R-Ky., said the bill "offers the best chance for our constituents through the Congress they elect to weigh in on the White House negotiations with Iran."
Added Sen. Bob Corker, R-Tenn., chairman of the Foreign Relations Committee: "No bill. No review."
The legislation would bar Obama from waiving congressional sanctions for at least 30 days while lawmakers examine any final deal. The bill would stipulate that if senators disapprove of the deal, Obama would lose his current power to waive certain economic penalties Congress has imposed on Iran.
The bill would require Congress to pass a resolution of disapproval to reject the deal, an action that Obama almost certainly would veto. Congress then would have to muster votes from two-thirds of each chamber to override the veto.
In the House, about 150 Democrats — enough to sustain a veto — wrote the president to express their strong support for the nuclear negotiations with Iran.
"We urge you to stay the course," the letter said. "We must allow our negotiating team the space and time necessary to build on the progress made in the political framework and turn it into a long-term, verifiable agreement."
The bill took a roller coaster ride to passage.
Obama first threatened to veto it. Then he said he would sign it if the measure was free of amendments the White House believed would make continued negotiations with Tehran virtually impossible.
It survived a blow from Israeli Prime Minister Benjamin Netanyahu, who stood before Congress in March and warned the U.S. that an emerging nuclear agreement would pave Iran's path to atomic weapons.
"It is a very bad deal. We are better off without it," he said in a speech arranged by Republicans. His address aggravated strained relations with Obama and gambled with the long-standing bipartisan congressional support for Israel.
A few days later, Cotton and 46 of his GOP colleagues wrote a letter warning Iranian leaders that any deal with Obama could expire when he leaves office in January 2017.
Senate Democratic leader Harry Reid of Nevada accused the GOP of trying to undermine the commander in chief while empowering the ayatollahs who lead Iran.
In April, the Senate Foreign Relations Committee passed a compromise bill on a 19-0 vote. Obama withdrew his veto threat.
But Republicans were not done trying to change the bill, drawing up more than 60 amendments.
One, from Cotton, would have made any deal contingent on Iran's halting its support of terrorist activities that threaten Americans. Cotton used an unusual Senate procedural move to get his amendment heard.
McConnell did not want to see the bill end in tatters, so he acted to end the amendment process and have votes on the legislation.
"It is a virtual certainty that no matter how terrible this deal is, it will go into effect and this legislation is unlikely to stop it," said Republican Sen. Ted Cruz of Texas, who is running for president.
The Associated Press contributed to this report.