Beasley can't actually sign until July 11, when a leaguewide moratorium on new business is lifted.
Beasley chose the Suns from a group of five suitors after visiting with club officials on Wednesday, while Phoenix also was agreeing to send Steve Nash to the Los Angeles Lakers in a sign-and-trade deal.
Beasley flew to Phoenix to meet with the Suns on Wednesday, the second time the two parties met. The Suns flew to Los Angeles to meet Beasley earlier this week.
The deal was followed later on Wednesday by the Suns reaching agreement on a four-year, $30 million contract with free agent guard Goran Dragic, according to ESPN.com sources.
While Beasley has been dogged by bouts of immaturity throughout his four-year career, the Suns are not scared off by his reputation and instead are fond of him as a player and a person, sources told ESPN The Magazine's Chris Broussard.
Suns general manager Lance Blanks has a history of working with troubled players dating back to his time as an executive with the Cleveland Cavaliers. Blanks was instrumental in bringing volatile guard Delonte West to the Cavs and continues to have a strong relationship with him.
In addition to adding Beasley and working out a sign-and-trade deal with the Lakers for Nash, the Suns offered New Orleans shooting guard Eric Gordon a maximum $58 million over four years.
While some sources say New Orleans will match the offer for Gordon, others say Gordon's public statements about preferring Phoenix to the Hornets potentially could lead to discussions on a sign-and-trade deal between the clubs.
Information from ESPN The Magazine's Chris Broussard was used in this report.