The 25-year-old Swiss international, who played in Leverkusen from 2009-12 before joining Hoffenheim, had legally challenged his relegation to the second team but the transfer now ends any dispute with Hoffenheim.
"By signing Eren Derdiyok we have brought in a strong striker with international experience," said Leverkusen sports director Rudi Voeller.
"Eren knows the conditions here and has played outstanding games for us in his time, though he did not always reach his huge full potential. We want to give him this chance now."
Derdiyok said he was happy to get a chance to start over.
"Leverkusen is the right club for me to start again. I always felt well here, I know most of the team and we will be playing in the Champions League. That is a great challenge."
Leverkusen have been drawn in Champions League Group A, along with Manchester United, Ukraine's Shakhtar Donetsk and Spanish side Real Sociedad