Depends on the province. In Alberta, you can charge NSF fees and/or late fees that reflect your actual costs. You may not charge a fee as penalty.
So if the NSF fee is high and is challenged in court, it will be denied.
An alternative here is to charge higher rent but to have an automatic discount for tenants who pay on time and do not bounce cheques. If the market rent is $1000, then the rent on our lease is $1100 and the "prompt-pay discount" is $100. If the tenant bounces a cheque or pays late, he loses the discount for that month. If he does it again, he loses his discount permanently.
As an added bonus, banks use the full lease amount for mortgage qualification, plus the courts use the full lease amount when determining judgements.
I believe you may find a "prompt-pay" form in the Critical forms section as I got the idea from Don R. Campbell (Thanks again, Don!)