I built a Drip emailer for a client. I delivered it and he demanded a bunch of changes - which was weird because they were actually all in the version I delivered. I tried telling him this but he insisted on version 2.
Me: Here's the second version.
Client: Not bad, but it's missing this feature.
Me: That feature was on the first version, and I confirmed with you that you wanted it removed.
Client: I didn't agree to that!
Seeing the writing on the wall, I asked for full payment before making final changes.
Client: What? Are you some kind of scammer? I will call the cops if you try to rip me off.
After a whole lot of arguing, he wound up paying me half of my fee and I delivered the second version with minor revisions. The frustrating thing is that the first version was actually what he wanted. Basically I did twice as much work to make half as much because he couldn't be bothered to test.