1. Make Personal Contact: Pick up the phone and start calling everyone past 90. For each account, do not stop calling until you get ahold of someone who has the authority to authorize payment ("customer"). When you do, let her know you need to be paid immediately and get a commitment on when payment will be made. Write her an email confirming the agreement to pay and ask her to reply to your email with acknowledgement of the terms. If there is a reason payment is being withheld, find out what it is and exactly what you have to do to rectify the situation and be paid. Take meticulous notes. (Note: making personal contact on the telephone may seem obvious, but time and time again I find company employees trying to do everything through email).
2. Fix the Problem: Get the authority you need to put resources towards fixing the problem immediately, or get the authority behind you. E.g. you might have a late payment issue on a project because a mid level manager is bickering with the customer over minutiae or a problem he caused. If you can get his boss, the VP, to tell him to just get it done the way the customer wants or else, that is often all it takes. In such a case, the problem may be the manager doesn't want to provide enough labor to the problem project because he is stretched too thin throughout all his projects. He hasn't had the courage to ask for more resources, but when confronted by you or his boss, the internal source of the late payment problem comes to light. Unpaid invoices often become a great internal audit tool. Tracing their nonpayment to their origins can help you clean up internal bottlenecks, as well as get paid. Also, sometimes one way to fix the problem is to issue a credit, but be sure to talk to your CFO or Controller before doing so in order to avoid creating a revenue recognition or accounting problem. It may just be your project manager was too aggressive with his billing and you haven't completed the work required to justify payment. In either case, once you've figured out a resolution, return to step 1 above and get a commitment from the customer on when you will be paid.
3. Follow up Demands: If you are not paid per the customer's agreement in step 1 above, immediately send her a registered letter and email detailing her failure to pay as agreed, and give her 5 business days to either reply or make payment, else you will have no option but to turn the collections matter over to an attorney. Of course, in my case I either threaten a small claims action or a civil action will be filed, as long as I have the buy in of the company I am representing.
I know I've probably not told you anything that wasn't obvious, but collecting debts is not rocket science. In short the secret is, for each past due account, to find someone authorized to make payment, then get their written commitment to pay. If they have a complaint you haven't performed, then figure out how to finish the work or issue a credit to get the delinquent account off the books until you finish the work and have the right to invoice. Then, follow up and be tough if you must. Sometimes just a threat of legal action in a registered letter will achieve your objectives.