Trump had said after a phone call with Putin on April 29 that a temporary ceasefire was in the works. Putin announced a similar truce last year that lasted three days but was not agreed with Kyiv.
Trump said in a Truth Social post that the pause will include a suspension of all kinetic activity, and also a prison swap of 1000 prisoners from each country.
"Hopefully, it is the beginning of the end of a very long, deadly, and hard fought War," he said, adding that there was constant progress in talks to end the conflict.
Ukraine President Volodymyr Zelenskiy, writing on Telegram, confirmed the prisoner exchange, and said humanitarian issues remaining a key Ukrainian priority.
"That is why today, within the framework of the negotiation process mediated by the American side, we received Russia's agreement to conduct a prisoner of war exchange in the format of 1000 for 1000," Zelenskiy wrote.
"A ceasefire is also to be established on May 9, 10, 11."
Russia announced a ceasefire for May 8 to 9 to coincide with commemorations of the Soviet Union's victory over Nazi Germany in World War Two and a military parade in Moscow's Red Square.
Ukraine announced its own proposal for an open-ended ceasefire that started at midnight on Tuesday local time, urging Russia to reciprocate.
Officials said on Thursday that Ukraine's top negotiator, Rustem Umerov, had arrived in Miami for a series of meetings with US representatives as peace talks on ending Russia's war in Ukraine have stalled in recent months.
The US-brokered talks are deadlocked over Ukraine's eastern Donetsk region. Moscow demands Kyiv pull troops back from parts of the region it has failed to capture in its four-year full-scale invasion. Ukraine says it will not cede land that it controls.
Moscow and Kyiv have both accused each other of violating ceasefires that each has separately declared.