Witnesses say there were two explosions, one at around 10am local time and then another about three hours later, both of which could be heard miles away.
At least 47 people were killed and 46 injured in a blaze that tore through a fireworks factory outside the Indonesian capital, police spokesman Argo Yuwono told Metro Television on Thursday, triggering explosions and sending plumes of black smoke into the air.
The fire broke out at an industrial complex in Tangerang, a satellite city of Jakarta.
"There are 47 bodies," Yuwono said. "From the manifest we obtained, there were 103 workers." The injured were treated at three nearby hospitals, he added.
A doctor in the emergency unit at Tangerang General Hospital, told local media he was treating seven people, some of them with burns of more than 80 percent of their bodies. Three were in critical condition.
Witnesses said there were two explosions, one at around 10 am local time and then another about three hours later, both of which could be heard miles away, media reports said.
A firefighter on the scene said the victims had been burned beyond recognition.
"Those who died are completely unrecognisable, totally burnt," Oni Sahroni told Metro TV.
Parts of the building collapsed after being gutted by the blaze which scorched nearby cars. Witnesses reported hearing two major blasts erupt from the site.