Ukrainian Deputy Prime Minister Iryna Vereshchuk said a convoy of 45 Ukrainian buses was on its way to the besieged southern city.
She said the International Committee of the Red Cross had confirmed that Russia had agreed to open a humanitarian corridor to Mariupol.
Tens of thousands of civilians remain there after weeks of bombardment.
Earlier, the Russian defence ministry said the United Nations refugee agency and the Red Cross would assist in the evacuation of civilians, which would begin at 10:00 local time (08:00 BST).
It said a ceasefire would allow people to travel westwards to Zaporizhzhia via the Russian-controlled port of Berdyansk.
Although some residents have escaped, all previous attempts to establish a ceasefire in Mariupol have collapsed amid accusations of bad faith from both sides.
Russia has also been accused of forcibly relocating thousands of civilians to Russia or Russian-controlled areas.
Capturing the city would give Russia control of the Azov Sea coastline between Russia and Crimea.
The announcement of a truce follows a telephone call on Tuesday between Russian President Vladimir Putin and his French counterpart, Emmanuel Macron.
During the conversation, Mr Putin said that shelling of Mariupol would not end until Ukrainian troops surrendered.