The deal will be worth $25 million, according to the source.
The 31-year-old Soria is close to reuniting with the team with which he broke into the majors and spent his first five seasons. As Kansas City's closer, Soria saved 160 games and made the American League All-Star team in 2008 and 2010.
Soria split 2015 between the Detroit Tigers and Pittsburgh Pirates, after moving to Pittsburgh in a July 30 trade. Overall, he went 3-1 with a 2.53 ERA and 64 strikeouts in 67⅔ innings. He saved 24 games, 23 with the Tigers as the team's primary closer.
Soria's first stint with the Royals ended when he had Tommy John surgery, which caused him to miss the entire 2012 season. The Royals declined his 2013 option, and he signed with the Texas Rangers. He debuted with the team in July and finished the season with 23⅔ innings in 26 appearances.
ESPN.com's Jerry Crasnick contributed to this report.