The letter signed by Zelensky and Macron while visiting the Villacoublay air base near Paris sets out possible future contracts for Ukraine to acquire Rafale fighter jets "with their associated weapons".
The letter, which is not a purchase and sales contract, also sets out deals for SAMP-T air defence systems, radar systems and drones.
On an visit to Sweden last month, Zelensky signed a letter of intent to buy between 100 and 150 Gripen fighter jets.
In France, Zelensky also went to Mont Valerien, to the west of Paris, to visit the nascent headquarters of a planned multinational force.
The force, which was proposed by the UK and France, may one day help oversee a Ukraine-Russia ceasefire.
Tens of thousands of people, most of them soldiers, have been killed or injured, and millions of civilians have fled their homes, since Russian President Vladimir Putin launched his full-scale invasion of Ukraine in February 2022.
Russia currently controls about 20% of Ukraine's territory and has been making slow advances along the front line as the Ukrainian military grapples with manpower shortages.
Fighting has centred on the town of Pokrovsk, a logistical hub in Donetsk region, where hundreds of Russian troops recently broke through.
Ukraine's ongoing refugee crisis took another turn this month when German Chancellor Friedrich Merz urged Zelensky to take action after a surge in the number of young Ukrainian men arriving in Germany and other EU states as refugees.
EU states recorded 79,205 new Ukrainian refugees in September, the highest monthly number in nearly two years.
In its report, the EU's statistical agency pointed to Ukraine's decision in August to allow men aged 18 to 22 the right to cross the border freely.
At the time of the invasion, martial law dictated that men aged between 18 and 60 – even those not eligible for conscription, which is currently in place for those aged between 25 and 60 – were not permitted to leave the country.
Germany, the EU's biggest country, now hosts the most Ukrainian refugees - currently 1.2 million people or 28.3% of the bloc's total.