Basafa spent at his developmental years at four different Iranian clubs and represented Iran at U-17, U-20 and U-23 levels. He started playing in the top-tier Persian Gulf Pro League in the 2013-14 season with Esteghlal FC. A year later, he was sent out on loan to another top flight club – Esteghlal Khuzestan FC.
Starting from 2015, Iman played in the second-tier Azadegan League for the next four years. He returned to the top flight in 2019-20 with Pars Jonoubi Jam and spent last season with Machine Sazi who also compete in the Persian Gulf Pro League.
Overall in the Iranian leagues, Iman has made 168 appearances in which he has scored 19 goals and assisted three.