"Ivan will give us a more variable attacking game," the club's sporting director Klaus Allofs told the club's website.
Perisic, who has 17 caps for his country and played in all three of their matches at Euro 2012, joined Dortmund in 2011 from Belgium's Club Bruges.
However, he found himself behind players such as Marco Reus, Mario Goetze and Kevin Grosskreutz in the pecking order for a place in the team and has started only three league matches this season.
The 23-year-old's transfer fee was reported by German media as 8 million euros, making his the most expensive move of the transfer window so far in the Bundesliga.
- Sports & Recreation
- Klaus Allofs
- Marco Reus