Five attackers were shot dead by troops and 11 suspects were in custody, he said in a TV address to the nation.
Kenya has “shamed and defeated our attackers” but the “losses are immense”, he said, confirming that 61 civilians and six soldiers had died.
Three days of national mourning have been declared, starting on Wednesday.
President Kenyatta said that several bodies lying under rubble from collapsed parts of the building had still to be recovered.
Some 175 people were injured in the attack; 62 people remain in hospital and many others are being treated for shock and are undergoing counselling.
“I promise that we shall have a full accountability for the mindless destruction, deaths, pain, loss and suffering we have all undergone as a national family.
“These cowards will meet justice, as will their accomplices and patrons, wherever they are,” he said.
At least 18 foreigners are among the dead, including six Britons, as well as citizens from France, Canada, the Netherlands, Australia, Peru, India, Ghana, South Africa and China.
The militants stormed the Westgate centre on Saturday, throwing grenades and firing on shoppers and staff.
Somali Islamist group al-Shabab said it had carried out the attack in retaliation for Kenyan army operations in Somalia.
The president said he could not confirm reports that a British national and two or three US citizens were involved in the attacks, but he said forensic experts were carrying out tests to ascertain their nationalities.
In an interview with the US TV programme PBS Newshour, Kenya’s Foreign Minister Amina Mohamed said the Americans were 18 or 19 years old, of Somali or Arab origin.