The 38-year-old signed a five-month deal at Paris St-Germain in January and donated all of his salary to charity.
Beckham made 115 appearances for England and over 398 for Manchester United, winning six Premier League titles and the Champions League.
“I’m thankful to PSG for giving me the opportunity to continue but I feel now is the right time to finish my career, playing at the highest level,” he said.
“”It’s unbelievable he’s been a fantastic ambassador for football and sport, what he has achieved has been remarkable. Whatever he goes on to do I’m sure he will achieve a lot.”” – Lee Sharpe Ex-Man Utd midfielder and former teammate.
Including PSG’s recent Ligue 1 title win, Beckham has won 19 trophies – 10 of them league titles – in a playing career spanning 20 years, and is the only English player to win championships in four countries.
“If you had told me as a young boy I would have played for and won trophies with my boyhood club Manchester United, proudly captained and played for my country over 100 times and lined up for some of the biggest clubs in the world, I would have told you it was a fantasy,” he said.
“I’m fortunate to have realised those dreams.”
Beckham moved to Real Madrid in 2003, winning La Liga with them in 2007 before a switch to the United States with LA Galaxy.
The midfielder made his England debut against Moldova in 1996 and captained the side from 2000 to 2006, making his 115th and final England appearance in a 3-0 win over Belarus in 2009.
He added: “Nothing will ever completely replace playing the game I love. However, I feel like I’m starting a new adventure and I’m genuinely excited about what lies ahead.
“I’m fortunate to have been given many opportunities throughout my career and now I feel it’s my time to give back.”
He has two more games to go before the end of the season, concluding on 26 May at home to Lorient.
Story: BBC News