The vehicle drove into crowds on Drottninggatan (Queen Street) – one of the city's major pedestrian streets, just before 3pm local time, before crashing into Åhlens Mall.
Armed police remain at the scene and the incident is being treated as a suspected terror attack, according to local media.
At least 15 people have been injured – of which 9 are in a serious condition.
Among the injured are two children – one with serious injuries.
The lorry had been hijacked earlier in the day. It was later searched with police confirming no explosives were found.
A witness reported seeing the driver of the truck wearing a mask.
The public has been warned to stay away from the city centre and a police cordon remains around the area.
Following the incident, Swedish Prime Minister Stefan Lofven said all signs pointed to "a terror attack".
He added: “The Government is naturally being updated continuously and receiving the latest information.
“The Government is assisting the authorities in its work and now we are encouraging the public to be alert and listen to the police’s information.”
Stockholm attack – the truck drove into crowd and then a building
At least two people have been pictured being detained by police – the first at Olof Palmes gata and the other at Klara North Church Street.
In a press conference held earlier, national Police Chief Dan Eliasson said the driver of the vehicle had not been located.
Get Quotes on Home Insurance
Since then, the Aftonbladet newspaper reported that a man arrested in northern Stockholm has admitted responsibility for the attack.
The arrest came hours after a manhunt was launched by police, with a picture of a 'person of interest' circulated by officials.
Crisis teams have been deployed across Stockholm following the truck attack.
The country's police teams and security services say they are working together using all available resources to deal with the incident.
Mats Löfving, chief of the national operations department said: "We want to speak this person, it's important that we got hold of him.
"We would like him, or anyone who can identify him, to contact the police. It is believed that he has an immediate connection with the incident."
Police release image of 'person of interest' following the Stockholm attack
Martin Svenningsen, a reporter with P4 Extra, says he saw a truck driving into the crowd.
He said: “I saw at least three dead, but there are probably more. It's a complete mess here.”
Several people are lying lifeless in the street according to witnesses, Expressen.se reported.
Towe Hägg of Stockholm police said: “We have have had the reports and have initial information about person injuries.”
Video has emerged showing the heavy vehicle ramming through the crowded streets before crashing into the Åhlens Mall.
Witnesses say the Mall of Scandinavia had also been evacuated, as a precaution.
The first of two suspects is detained by police
A second suspect was detained by Stockholm police
Police were reported as confirming a shooter at a second incident in Fridhemsplan – around a 20 minute drive from the first incident.
However, later officers denied there was an incident there but the streets remained on lockdown.
Shops on the street were closed down and people were being locked inside, according to reports.
One woman wrote on Twitter: “Friend are trapped at the dentist at fridhemsplan. Police say it is anxiously outside.”
Armed police remain at the main railway station in Stockholm, according to reports from Aftonbladet.
Stockholm’s Parliament has been evacuated and the area cordoned off.
The city's bus and public subway system will remain suspended for the rest of the day, and the Central Train station in Stockholm remains closed following an earlier evacuation.
Trains were held on platforms, with the doors remaining locked.
Five centres have been opened across the city to provide shelter to those stranded and unable to get home following the closure of the metro system.
These are located at: Kammakargatan 30, Observatorielundens skola på Norrtullsgatan, Hantverkargatan 3, Göta Ark på Medborgarplatsen 25 and Bo Bergmans gata 4.
Map of area
Police have reported multiple casualties after the Stockholm truck attack
— Boris Johnson (@BorisJohnson) April 7, 2017
“I saw hundreds of people run, they ran for their lives,” Anna, who witness the incident said. “I turned and ran as well.”
Jan Granroth was inside a shoe store on Drottninggatan when he heard people starting to scream.
Government sources confirmed Swedish Prime Minister Stefan Lofven is currently in Gotherberg and is returning to Stockholm immediately to after the horrifying attack.
King Carl XVI Gustaf of Sweden said in a statement: “I and the entire royal family are dismayed at the information about this afternoon's attack in Stockholm.”
Paramedics attend to the injured in Central Stockholm
Veronica Durango, 42, was a fraction from being hit by the suspect during the attack in Drottninggatan, she told Expressen.
She claimed the man was masked and she would’ve been run over if she hadn’t jumped out of the way.
“I’m all shaky. I could have died. Police stood outside with automatic weapons."
Also speaking to Expressen, Paula Lobos, 43, said she heard loud noises outside.
“I didn’t see the incident, but I heard it. It sounded like someone shot or drove into things. Folk were screaming, terrified.”
She added: “Two people had been run over directly below. People around tried to take care of them. One was bleeding heavily. I was terrified. It’s chaos and scared people everywhere.”
The Stockholm Terror attack – in pictures Fri, April 7, 2017
The vehicle drove into crowds on Drottninggatan (Queen Street) – one of the city's major pedestrian streets, just before 3pm local time, before crashing into Åhlens Mall
Play slideshow Twitter 1 of 33
Truck rams into crowds in central Stockholm
The attack took place at the Ahlens department store at Drottninggatan
Other witnesses described scenes of panic when the truck started driving through the crowd.
Dimitris said: “I was on the main street when a big truck came out of nowhere.
“It got out of control, I was at least two people being run over.”
Stockholm: Armed police are on the scene with gas masks
The truck is owned by Swedish brewery Spendrups.
The company's Communications director Mårten Lyth said they managed to contact their own driver, who confirmed the vehicle had been stolen moments before the attack.
According to Spendrups, someone jumped into the driver's seat and stole the vehicle as the driver made a delivery.
The company confirmed their driver is unharmed and is with the police.
Stockholm-based journalist Peter Wolodarski said: “It’s a pedestrian area in the main shopping district in central Stockholm so a lot of people would be there on Friday afternoon. There are no vehicles driving at that place normally.
“It’s the same area where we had a terror attack seven years ago where no-one was killed but the suicide bomber died."
In December 2010, Taimour Abdulwahab – a Swedish citizen living in Luton – blew himself up in the Bryggargatan area after the suicide vest he was wearing malfunctioned in a side street.
President of the European Council Donald Tusk Tweeted his sympathies this afternoon.
He said: "My heart is in #Stockholm this afternoon. My thoughts are with the victims and their families and friends of today's terrible attack."
European Commission Jean-Claude Juncker added: “We stand in solidarity with the people of #Sweden.
“An attack on any of our Member States is an attack on us all.”
This is a breaking news story. Refresh for updates