Canadian opposition parties have toppled Prime Minister Stephen Harper's government in a no confidence vote, triggering the country's fourth election in seven years.

The opposition parties held the Conservative government in contempt of Parliament in a 156-145 vote for failing to disclose the full financial details of his tougher crime legislation, corporate tax cuts and plans to purchase stealth fighter jets.

Opinion polls expect Mr Harper's Conservative Party to win re-election but not a majority, meaning he is likely to continue to govern with a minority in Parliament, dependent on opposition votes to stay afloat.

But in the latest twist, there is a chance the left-of-centre parties might join forces in a coalition. The election is expected to take place on May 2.

The opposition tried this once before, after Mr Harper won minority re-election in 2008. But before he could be defeated in a no confidence vote, Mr Harper shut down Parliament for three months and successfully whipped up public opposition against the coalition.

The Conservatives accused the Liberals of treason for uniting with the Bloc Quebecois, a party that seeks independence for Canada's French-speaking province of Quebec.

Mr Harper's government is now once again trying to marshal public sentiment against a possible coalition government.