India has signed a formal agreement with France to buy 36 Rafale fighter jets for $8.7bn (7.8bn euros; £6.7bn), in a major defence deal.
Indian Defence Minister Manohar Parrikar and his French counterpart Jean-Yves Le Drian signed the agreement in Delhi on Friday.
PM Narendra Modi had announced the purchase in January.
India is looking to modernise its Soviet-era military and the deal is the result of years of negotiation.
"You can only ever be completely sure once [the deal] has been signed and that's what happened today," Mr Le Drian told AFP news agency after Friday's signing ceremony.
The first Rafales are expected to be delivered by 2019 and India is set to have all 36 jets within six years.
Friday's deal is a substantial reduction from the 126 planes that India originally planned to buy, but is still the biggest-ever foreign order of Rafale fighters, AFP says.
French President Francois Hollande has hailed it as "a mark of the recognition by a major military power of the operational performance, the technical quality and the competitiveness of the French aviation industry".
The deal was first mooted in 2012 but faced major delays and obstacles over terms and conditions.