Herat Police spokesman Abdul Ahad Wali said the blast took place in Jebraeel area in Herat City at around 5.30pm.
He said the explosives were hidden in a three-wheel motorbike and were detonated in a crowded place in front of a shop.
Mohammad Rafiq Shirzai, spokesman for Herat Zonal Hospital, said three dead and six wounded were taken to the hospital following the explosion.
No group has so far claimed responsibly for the attack.