They either can't afford it right away so they stall, or they CAN afford it, it's just that everything else in their life takes priority over sitting down to pay the bill. Pure negligence.
Any experienced contractor should have a clause that charges interest after some point. You can be "nice" about it by reducing the interest rate or extending the deadline on the next job after the client has made clear they can pay on time.
I used to work with a guy who was very well off. I was not. I suggested something for a fee, he immediately tried to bargain with me. It was little money and I needed it; it was nothing to him. To him it was a game. He was no sociopath, he just didn't understand hardship. I saw him do that quite a bit. I'm sure if he ever felt a hard pinch himself he'd realise it wasn't a game, be much more sympathetic, but... that wasn't going to happen. Genuinely nice guy too.