The striker will play there on loan for the remainder of the season with a view to a permanent move in the summer, Superdeporte reports.
The Italian international belongs to Juventus but had been loaned out to the Hammers last summer.
Zaza however failed to convince West Ham manager Slaven Bilic and featured only sporadically in the Premier League.
Valencia will pay Juventus two million euros to get the player on loan until the end of the season.
The deal includes a clause for an obligatory sale in the summer for 16 million euros, provided he features in at least 10 games and Valencia avoid relegation to the second division.