The New York Post was first to report the deal, which is still pending a physical.
Wacha, 28, had spent his entire seven-year career with the St. Louis Cardinals. The right-hander went 6-7 with a 4.76 ERA in 29 games — 24 starts — last season, failing to post a win after July 19.
His 759 career strikeouts are tied for 19th in Cardinals history with Mort Cooper (1938-45).
Wacha had avoided arbitration in 2019, agreeing to a $6.35 million deal with St. Louis. He was limited to 15 starts during the 2018 season because of a strained muscle in his left side, however he still went 8-2 with a 3.20 ERA.
Overall, he has a 59-39 record with a 3.91 ERA and 759 strikeouts.