In September 2003, Haddin replaced Simon Katich as captain of New South Wales, while Katich was on international duty, and he has since been acting-captain on numerous occasions. He has also captained Australia A. For most of his career Haddin was Australia A wicketkeeper but was drafted into the full squad as back-up wicketkeeper in case Adam Gilchrist was injured or rested. He made his international debut in a one-day international on 30 January 2001 against Zimbabwe in Hobart. He made one stumping and made 13 runs. He was demoted from second choice wicket keeper for Australia in 2001 by Wade Seccombe and later Ryan Campbell, but reclaimed this position in late 2004. He was called up as part of Australia's 2005 Ashes squad but was not used throughout the series.