If you take a deposit, a bond means that even if you don't finish the job, there's money there to cover another contractor to finish the job. Without a bond the homeowner/ customer has no recourse if you walk. If you don't accept money till the job is done, you don't have any of their money, so...