On one occasion I had a client not pay, but thanks to the Upwork protection I got paid quickly and then they resolved it with the client.
If I was doing a similar service as UpWork and wanted to offer a kind of payment protection I'm not sure how I would go about that. I'm thinking maybe something like a code diff week-after-week sent to the client but at the same time not everything can be diffed (especially countless meetings with clients). Would you have some ideas?