Companies that collect money on behalf of charities will now have to be transparent about how much gets to the charity.
The Fair Trading (Soliciting on Behalf of Charities) Amendment Bill was passed in Parliament on Wednesday with unanimous support.
It was drafted following reports that some professional telemarketing and street-collecting firms keep up to 75% of what they collect, and in some cases up to 90%.
The bill was shepherded through the House by National list MP Michael Woodhouse.
He says data from the Charities Commission shows that the more than 25,000 registered charities in the country received more than $1 billion in donations.
Mr Woodhouse says it's important the public have confidence that the proportion of their donations going to charities is appropriate.