The blast ripped through a bazaar in the village of Aziz Abad in the Shindand district on Sunday after a welding accident, government officials said.
Provincial governor spokesman Ghulam Muhammad Masoan said: "A gas truck had some problem and the driver tried to weld it. That set off an explosion that triggered another explosion."
He said the truck was parked outside a mechanics shop, and sparks prompted another explosion in a nearby fuel truck.
The blast was so powerful, according to officials, that several buildings were destroyed.
The tanker is reported to have been carrying thousands of litres of fuel when it exploded around 09:30 GMT.
The security commander for Herat confirmed that investigation was underway and that most of the casualties had been taken to Herat for treatment.