"It is time now to give a new leader the best possible opportunity to prepare for and win the next World Cup. I thank all of those who have helped and supported my journey to this point."
Finch has scored 5401 runs at 39.13 and smacked 17 centuries in ODI cricket since 2013, winning a World Cup title on home soil in 2015.
He has captained Australia on 54 occasions in the 50-over format, winning 30 ODI matches as skipper.
"On behalf of Australian Cricket, I would like to congratulate Aaron on his vast contribution as captain of the Australian Men's ODI team and as a wonderful exponent of the 50-over format," Cricket Australia chief executive Nick Hockley said in a statement.
"Aaron is an enormously gifted and determined player whose outstanding deeds with the bat have been matched by his strong and inspiring leadership. His decision to step aside from the ODI captaincy now is typical of his selfless approach to the game.
"I'm delighted Aaron will lead the Australian team into the forthcoming ICC Men's T20 World Cup where his leadership, experience and tactical nous will be integral to the defence of our T20 World Cup title on home soil."
Finch is stepping down after a horror run of form with the bat – he has averaged 3.71 in his last seven ODI innings, breaking the all-time Australian record for most ducks in a calendar year with five scores of zero.
The powerful right-hander has averaged 13.00 this year, with his most recent scores in ODIs being 23, 0, 0, 44, 14, 62, 0, 0, 15, 1, 5, 5, 0.
The third and final ODI between Australia and New Zealand gets underway at Cazalys Stadium on Sunday afternoon, with the first ball scheduled for 4.20pm NZT.
Australia has already retained the coveted Chappell-Hadlee Trophy after taking an unassailable 2-0 lead on Thursday.
Most men's ODI centuries for Australia
29 – Ricky Ponting
18 – Mark Waugh
18 – David Warner
17 – Aaron Finch