Sources: Vancouver Whitecaps set to sign Lucas Cavallini for $6 million

The Vancouver Whitecaps have agreed terms with Puebla to secure the transfer of Canada international forward Lucas Cavallini, multiple sources have told ESPN.

A source close to the situation said that Cavallini has agreed to a four-year contract, with Puebla receiving a $6 million transfer fee, a record amount for the Whitecaps.

Another source told ESPN that Liga MX side Atlas were also in the mix for Cavallini, but that Puebla didn't want to sell the Canadian to a potential relegation rival. Cavallini is expected to officially sign the contract later on Friday.

The forward arrives at a Vancouver side that is in the midst of a rebuild. The Whitecaps finished last in the 12-team Western Conference and, league-wide, only expansion FC Cincinnati secured fewer points. The Caps also recently hired former FSV Mainz 05 and Schalke 04 executive Axel Shuster to be its sporting director.

Cavallini, 26, will play professionally at club level in Canada for the first time in his career. He came through the youth system of Uruguayan side Nacional, signing a professional contract in 2012. The forward was subsequently loaned out to Uruguayan sides Juventud and Fenix. After scoring 14 goals in 27 league appearances for Fenix in the 2014-15 season, the move was made permanent.

Cavallini later moved to Penarol, but only spent eight months with the club. He scored six goals in 18 league and cup appearances before being loaned to Puebla. After scoring 13 in 26 appearances across all competitions, the move was made permanent ahead of the 2018 Apertura. All told, Cavallini scored 30 goals in 81 league and cup appearances for the Mexican club.

At international level, Cavallini has scored 11 goals in 17 international appearances for Canada, including the clincher in Les Rouges 2-0 win over the U.S. back in October.

Information from ESPN Mexico's Jose Maria Garrido was used in this report.