Neither the length nor financial terms of the contract were immediately available.
"I'm happy that I finally have this [free-agency] process behind me, and I'm looking forward to coming to New York and being a Buffalo Bill," said Reyes, who visited with team officials and coaches on April 11. "I feel great."
Reyes, 28, was a starter for the Panthers each of the last two seasons. He started all 16 games in 2005 and split his 12 starts in 2004 between the two guard spots. He is expected to compete for the starting left guard spot with the Bills, who have less urgency now to choose an interior lineman in the draft. Buffalo had been expected to consider choosing a guard or center in the second round.
A former University of Mississippi standout, Reyes has also logged some time at tackle in the past, and there is a chance he could be moved to that position if the Bills' needs there continue. At 6-foot-3 and 310 pounds, Reyes has the size and good enough feet to line up at tackle, if necessary.
Despite playing well for the Panthers the past two seasons, Carolina showed little interest in re-signing Reyes this spring, in part because they want to move younger players into the lineup. A native of Queens, New York, Reyes considered the Bills in part because of the relative proximity to his family.
Reyes began his career with the New Orleans Saints, who chose him in the fifth round of the 2000 draft. He played in just one game in his first four seasons in the NFL and was mostly relegated to the inactive list on Sundays. But in 2004, Reyes finally emerged as a solid in-line blocker and earned a spot in the Panthers' starting lineup.
He has appeared in 31 games in his career.
Len Pasquarelli is a senior NFL writer for ESPN.com.