You'd have to look to the law of Contracts in Canada to figure that out. Generally though it is the contract between agreeable parties that decides whether work can be invoiced/paid in advance of it being carried out.
Accounting for it is a different matter as the revenue/expense in the respective parties accounts isn't recognised in the P&L until it has been classed as carried out, which brings in the added complication of work in progress for long term contracts.
To my knowledge, it is not illegal to invoice in advance, nor to pay in advance, so long as it is in agreement with both parties. As Fidget mentioned, the revenue/expense side of things must comply with GAAP under the percentage of completion method.
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.