Well I'm glad you got most of the money; at least it didn't go too bad.
For future jobs, you need to get something in writing, even if you only jot it down on a notepad that you keep with you. Get yourself a set of terms and conditions typed out that you can add to the quicl writte quote, and make sure clients know that you'll play straight, but don't intend to be messed around. Tell them bluntly that you ask for the cost of materials up front, simply because you've been stitched up before, but you'll accept the balance of the job when it's completed. But if they're not happy to give you the money for meterials, then they can either go with you to get them, or you give them a list, and they get them themselves.