WOW,
Every commercial job I've been involved with has worked exactly the same way. Subs get paid when gc gets paid, sub's suppliers get paid when sub gets paid, etc. Whether this is fair or not is probably debatable, but there really isn't anything we can do about it.
Doing business this way is bad business practice. I understand there is no way of knowing this will become the situation at the end of the job and there is not much of a choice you have but to wait and pray you will get paid. Would you do the work if you told, you will only get paid after your builder gets paid? I doubt that, unless you know he is a stand up guy and he will do the right thing if something should happen.
I am a GC and when I was starting out, my brother and me, we did lots of sub work for big builders and other GC's doing decks, kitchen installs, trim work and this was one of the reasons why we stopped doing work for them because of this BS business mentality " I didn't get paid from the HO yet, you have to wait". That is BS and that is illegal business practice. It most cases this BS excuse is used to knock the bill down. I'm sure many of you when waiting to get paid heard this magic sentence "I got stiffed and I don't have money, but I can pay you only so much" By that time you are happy you got anything at all and take what ever you can get, unless you are willing to waste more time and go to court. Most cases we just took what it was and never work for this GC again. Same as if a HO hires you and after job is done they tell you "You have to wait untill I get my tax refund" WTF is that...
My buddy just lost 200k doing trim fork for Kara Homes, now they out of bankruptcy and be operating under the different name.
As a GC if I hire a sub to do the work, I already have his money. My agreement with him does not say he will get paid when I get paid.
I know things are tough in this economy, and I know sometimes it takes a little extra time to come up with the money, but there is no excuses, you hired me, my end should be covered, I did the work, I want my money after I am done... Period.
If anyone doing work for anyone, the most important thing is to have payment schedule spelled out in your contract.
Final payment is due after job completion and final inspection. Because if unfortunate situation happens, and you end up in court, forget about it how hard you worked, the 20 hours a day you worked, or how you gold-plated your customers job, the only thing it will matter is what you have in your contract. If you have scribbles on the toilet paper, that is exactly what you will end up with.
Good luck