At least 30 people, including several children, were killed when a fire ripped through a home that doubled as a matchstick factory in Indonesia, authorities said.

Pictures from the scene showed blackened corpses lying on top of each other on the floor in the aftermath of the blaze that authorities said broke out early Friday afternoon.

TV footage showed plumes of black smoke billowing from the home in the town of Binjai in North Sumatra, about 70km west of provincial capital Medan.

"We don't know what caused the fire but it has been extinguished," the head of North Sumatra's disaster agency Riadil Lubis told AFP, adding that at least three children were among the victims.

"We've sent teams there," he added.

Binjai police chief Nugroho Tri Nuryanto said a gas canister explosion may have set off the blaze, but that the cause still needed to be confirmed. 

"We're still identifying the victims and scouring the scene," he said, adding that three people escaped the blaze.

It was not clear why there were children at the scene.

"Most likely they (employees) brought the kids to work," Irwan Syahri, head the local disaster mitigation agency, told Metro TV, adding that the victims "were all badly burned and hard to recognise".

Deadly fires are not uncommon in Indonesia due to poor safety standards that are routinely flouted, while homes doubling as illegal businesses is also widespread.

In 2017, at least 46 people were killed and dozens more injured in a blaze that tore through a fireworks factory outside Jakarta.

Seventeen people were killed when a fire ripped through a karaoke bar on Sulawesi island in 2015 and, in 2009, a fire killed 20 people at a karaoke bar in Medan, on Sumatra island.