Dembele had looked set to remain in Glasgow past the European transfer deadline, with Celtic having rejected Lyon's initial approach for the 22-year-old.
However, Celtic has now confirmed a deal has been agreed with Lyon for Dembele, who signed from Fulham in 2016 and has scored 51 goals during his time at the club.
The fee is reported to be worth in the region of €20 million ($31.8 million).
Celtic boss Brendan Rodgers earlier revealed Dembele would play no part in the first Old Firm derby of the season, and the Frenchman now seems set to seal his desired move to Ligue 1.
"It is vital to make clear that we have never promised any player that he can leave the club at a particular time," Rodgers said.
"In fact, we have said all along that we did not wish to sell Moussa, given the circumstances within the transfer window and that is why we rejected a significant offer yesterday.
"However, this particular decision to accept this offer has been taken in order to serve the best interests of the first-team squad, my coaching team and the culture and environment we have created in these last two seasons.
"The board and myself are united and they have been very supportive to me on this issue. Our real focus now turns to Sunday's match and beyond.
"Finally, I would like to thank Moussa for his contribution in our last two seasons and want to wish him well in his new adventure at Lyon."
Dembele will replace Mariano Diaz at Lyon, who finished third in Ligue 1 last term, with the forward having returned to Real Madrid on 30 August (AEST).