PARIS — Paris Saint-Germain left it late to make two signings before the French league's transfer window shut on Friday — and also released a batch of players.

The French champion bought Spain defender Juan Bernat from Bayern Munich, thus resolving a problem at left back. PSG was without a recognized left back with Layvin Kurzawa injured and Yuri Berchiche sold in July to Spanish side Athletic Bilbao.

The 25-year-old Bernat, who has seven appearances for Spain, joins on a three-year contract. PSG gave no financial details.

"I'm impatient to train under (coach) Thomas Tuchel, whose work in Germany was of a remarkable quality," said Bernat, who won four German titles with Bayern.

Moments before the midnight deadline, PSG announced the signing of Cameroon striker Eric Maxim Choupo-Moting on a two-year contract from second-tier English team Stoke. He played under Tuchel for three seasons at German club Mainz from 2011-14.

The night's other significant business saw Lyon finally seal the transfer of French striker Moussa Dembele from Scottish champion Celtic for a reported 22 million euros ($25.5 million). Dembele, a quick 21-year-old forward, netted 51 times in 94 games for the Glasgow-based side.

"We fought for two days and nights (to sign him)," Lyon president Jean-Michel Aulas said on Canal Plus television. "He's a young player determined to come to Lyon. The discussions with Celtic were blocked. We had to keep talking, to be forceful, to keep raising the offer."

PSG was otherwise quiet, with the clear priority offloading players to generate income and lower its wage bill. PSG remains under investigation by UEFA for breach of Financial Fair Play rules after buying forwards Neymar and Kylian Mbappe for a combined 402 million euros last season.

Tuchel, even though he is only on a two-year contract, is clearly building for the future.

This month, PSG signed 21-year-old defender Thilo Kehrer from German club Schalke to a five-year contract.

Others have made way to balance the books.

Third-choice goalkeeper Kevin Trapp was loaned on Friday to his German club Eintracht Frankfurt — which sold him to PSG in 2015 — the day after exciting winger Goncalo Guedes joined Spanish side Valencia for a reported 40 million euros with bonuses potentially increasing that to 57 million euros.

PSG also sold forward Jean-Christophe Bahebeck to Utrecht — having loaned him to the Dutch club last season — and shifted unwanted Spanish forward Jese on loan to Nantes. PSG trimmed its squad and wage bill further by sending Argentina midfielder Giovani Lo Celso on loan to Real Betis.

PSG had already sold midfielder Javier Pastore to Roma for 24.5 million euros early in the summer window.

Elsewhere, powerful striker M'Baye Niang joined Rennes on a season's loan from Serie A side Torino with an option to buy the Senegal international.

The 23-year-old Niang, who scored one goal at the World Cup, scored his first top-flight goal at 16 in the French league for Caen.

Winger Hatem Ben Arfa, a free agent after running down his PSG contract, was expected to complete a two-year deal with Rennes after passing a medical.

Spanish striker Cristian Lopez joined Angers from second division Lens.

But perhaps the biggest coup was made by unheralded Amiens, which managed to acquire attacking midfielder Paulo Henrique Ganso on a season loan from Spanish club Sevilla, with an option to buy. He has played eight times for Brazil and used to be PSG star Neymar's teammate at Brazilian club Santos.

Bordeaux got Denmark striker Andreas Cornelius on loan from Italian side Atalanta until the end of the season, with the option to buy.

Here's a recap at what other French clubs did during the transfer window.

MARSEILLE

Marseille missed out on striker Mario Balotelli , after he stayed at Nice. But Marseille strengthened its midfield this week by signing Netherlands international Kevin Strootman from Roma for 25 million euros. Serbia winger Nemanja Radonjic joined from Red Star Belgrade.

MONACO

Monaco signed Belgium midfielder Nacer Chadli from West Bromwich Albion on a three-year deal for reportedly 12 million euros.

Coach Leonardo Jardim added much-needed strength in defense, with right back Benjamin Henrich joining from Bayer Leverkusen for 20 million euros.

But Monaco did not sign midfielder Bruno Xadas from Portuguese club Braga, because he needs a foot operation and thus failed a medical.