The Mexico striker, who spent last season on loan at Real Madrid, has signed a three-year contract after the clubs agreed a fee believed to be around £7.3million.
Hernandez was on the bench for United’s 2-1 Premier League defeat at Swansea on Sunday but last started for the team more than a year ago.
The Bundesliga high flyers unveiled Hernandez at a press conference on Tuesday and he said: “I want to go back to feeling important and happy. I want to find happiness.
“Bayer made me feel important and loved and coming here was not a difficult decision to make. They made me feel wanted.”
The 27-year-old returned to United after scoring nine goals during his spell with Real – including the winner in their Champions League quarter-final against city rivals Atletico – but manager Louis van Gaal has again allowed him to leave.
Hernandez continued: “I want to help and achieve important things. I have felt very loved.
“I hope to accomplish things in my head and in my heart.”
Leverkusen will play in Champions League Group E this season alongside Barcelona, Roma and BATE Borisov.