More than 70 others were injured as the blast hit the San Pablito fireworks market in Tultepec, about 20 miles (32km) outside the city.
Video from the scene showed a large number of fireworks rocketing into the air as they caught fire.
Read more: http://www.bbc.com/news/world-latin-america-38387239