German magazine Kicker reported PSG had paid 32 million euros ($35.9 million) plus a further two million euros in bonuses for the 23-year-old centre-back.
Diallo, who would have played for France at last month’s under-21 European Championship but for an injury, has spent the last two seasons in Germany, joining Dortmund after a year at Mainz.
Prior to that he started his career at Monaco and played five times in the principality club’s run to the Ligue 1 title in 2017.
Diallo is PSG’s fifth summer signing, with Spanish duo Pablo Sarabia and Ander Herrera having joined from Sevilla and Manchester United respectively.
They have also signed 19-year-old Polish goalkeeper Marcin Bulka on a free from Chelsea and Dutch defender Mitchel Bakker, also 19, from Ajax.
Dortmund were happy to move Diallo on having last month brought German international stopper Mats Hummels back to the club from Bayern Munich for 38 million euros.
For more news your way, download The Citizen’s app for iOS and Android.
Download our app and read this and other great stories on the move. Available for Android and iOS.