Glad it worked out in the end
Glad to hear you were able to get it worked out.
I would probably use this opportunity to ask your client for feedback on your code and why it wasn't what he expected. I always ask my clients for feedback (even when everything goes well) just so I know what I can do better next time. If your client is honest, he may give you some insight into what to improve upon and perhaps avoid delays like this in the future (in case other clients have the same problem and thus delay sending payment).
There's always room for improvement, who better to give you feedback than your clients!
My mindset might not work for everyone, but I learned young when working with other young people who lacked maturity and the ability to follow-through, that if a client will not take the time and effort to establish a legal contract, the project probably isn't worth it. You're looking at, in my experience, a 50%+ chance that some other problem will arise. I've seen many different things, some legit and some not, but as a developer I don't want to deal with those clients any more than I have to, so I use the contract as a tool to weed them out. I think of the contract's legal protection as an added bonus.
In order for a client to get me working without a contract, I'd require an absolute minimum of 50% up-front, which is my usual contract payment terms, so probably more. I also wouldn't deal with the trouble if it was small amounts of profit.
Just my attitude most of the time, even though it could be looked at in a bad light...
Edit: p.s. A good theory might to be to calculate the odds of a problem arising, like I did. Since mine was 50%, I think 50% up front would be suitable. Adjustable according to the risk.
PSD to HTML / CSS - starting at $99