Initial reports said three civilians were among those killed in the blast, while around 26 people were injured.
"It's very typical of the attacks that we've seen the Pakistani Taliban claim responsibility for," our correspondent said.
The bomb site is close to a church, where Pakistan's Christian minority were preparing to celebrate Christmas.
Pakistan has stepped up security during the holy Muslim month of Muharram, in the run-up to the Shia mourning period of Ashura, and one of Peshawar's largest Shia mosques is also located nearby.
"There were several targets," Sahibzada Mohammad Anis, the highest-level Peshawar administration official, said.
"It could have been a Pakistan International Airlines building or a Shia mosque. There are also several shopping malls in this area."
Hukam Dad Khan, a bomb-disposal expert, said the attacker was wearing a vest packed with explosives, nails and steel pellets.
"The suicide bomber was trying to cross the checkpoint," Mohammad Karim Khan, a police officer, told AFP.
"He was on foot. Police stopped him and he blew himself up."
The attack comes two days after a teenage suicide bomber attacked a journalists' club in the city, killing three people.
A suicide bomber struck outside a court in Peshawar, killing 11 people, on December 7.
On October 28, a huge car bombing destroyed a market killing 125 people.
Eighteen bomb blasts have struck the city in the last three months, most of them blamed on Taliban fighters.
A wave of attacks have occurred in Pakistan since October, as fighters apparently retaliate for an army offensive against the Taliban.
The attacks have killed more than 500 people.