Haddin, 37, has made the decision as he prepares for Test tours of the West Indies and England this summer, for which the team departs on Monday.
The wicketkeeper-batsman has played in 126 ODIs since his one-day debut against Zimbabwe in 2001, scoring 3,122 runs at an average of 31.53, with a top score of 110.
As wicketkeeper Haddin claimed 170 catches and 11 stumpings, leaving him with the third most dismissals for a wicketkeeper in Australia behind Adam Gilchrist and Ian Healy.
And it means Haddin???s last one-day match was the Cricket World Cup final triumph over New Zealand in March.
In a statement released through Cricket Australia, Haddin said: ???I have had a privileged one-day career and I have been fortunate enough to be involved in three World Cups.
???But now is the right time to walk away. Not many players get to write a script like mine at the end of their careers and I have been lucky enough to do just that after winning a World Cup on home soil.
“I leave the team with Australia ranked No 1 in the world and I am proud of everything we have achieved.”
Cricket Australia chief executive James Sutherland said: “Australian cricket congratulates Brad on a fine one-day international career.
“Throughout the years he well and truly maintained Australia’s proud tradition of outstanding wicketkeeper-batsmen in limited overs cricket. He leaves big shoes to fill as a talented player and important senior figure within the team.
“We thank him for his wonderful contribution to one-day cricket and look forward to his continued performances at Test level as the team works hard to retain the Frank Worrell Trophy and the Ashes.”