If you are supplying materials you MUST get a deposit. There is nothing wrong in that, it shows commitment from the customer and potentially stops them backing out of the work to be done.
If I have a job particularly when I'm supplying tiles I get them to forward a cheque/bank transfer and make sure it is cleared before I even order tiles. That way I will never be out of pocket. Materials such as addy etc can always be used. 20-30m of tiles sat in your garage are not something you can sell easily, obviously they are not to everybodys taste. If they back out before the job is done, unlikely, because I don't get them delivered until maybe a day into the job when I'm ripping out. They're not going to lose maybe £6-700 of tiles at that point.
If I have a job particularly when I'm supplying tiles I get them to forward a cheque/bank transfer and make sure it is cleared before I even order tiles. That way I will never be out of pocket. Materials such as addy etc can always be used. 20-30m of tiles sat in your garage are not something you can sell easily, obviously they are not to everybodys taste. If they back out before the job is done, unlikely, because I don't get them delivered until maybe a day into the job when I'm ripping out. They're not going to lose maybe £6-700 of tiles at that point.