At least 20 dead in mudslides and flooding in northeastern province.
With many roads flooded, several towns were cut off during the storm and authorities struggled to move hundreds of residents to safety.
Electricity in the area was cut but later restored.
In central Iloilo province, a passenger ferry ran aground amid strong winds and rough seas but the coast guard rescued all 80 people aboard, local radio reported.
Another 1,000 passengers and 71 vessels were stranded in ports because of the storm.
Cha-hom is the second cyclone to hit the Philippines in the space of a week.
Last weekend at least 27 people died and 55,000 had to be evacuated from their homes as tropical storm Kujira lashed the same region of the country.
About 20 typhoons and storms hit the Philippines each year, but forecasters said they usually do not appear this early and that the extreme weather may have been caused by global warming.