The 27-year-old Ukrainian signed a contract with Borussia until June 30, 2021, and will wear a No. 9 shirt vacated by Emre Mor.
"I am very grateful that Dynamo Kyiv has fulfilled my dream of being able to switch to a big European club! I will work hard at training sessions to help BVB achieve its highest goals - that's what I always do," the club quoted Yarmolenko as saying.
According to media reports, the player was signed for 30 million euros.