A few thoughts.
1. Get half up front so they are taking the engagement seriously. Call it a retainer fee if you need to. Proves you’re in their accounting system and that the actual buyer is motivated enough to get you on-boarded and paid so that they can get going on the project. There is nothing wrong with half up front. You’ve got expenses while the project is ongoing. It’s a good way to improve you’re overall cash flow.
2. Accounting people and the people you’re actually working with are almost never the same humans. Make sure you know the exact submission process to get the invoice into your clients accounting system. The larger the company you’re contracting with, the more complex and exacting their processes are likely to be. Very large companies tend to use systems like Coupa, and there’s a learning curve to interacting with them.
3. Make sure you have a PO, and then reference that PO on the invoice. Most accounting folks will ignore requests for payment that feel “blind”. It’s part of their anti-fraud and due diligence. Lots of automated, AI-driven fraud out there. We see fake invoices all the time. Don’t do business on a handshake. Document that buying process, including a signature on a scope of work, quote, or similar document that can serve as a contract.
4. As a small company or indie contractor, you can put terms of service as Net 15, payable upon receipt, or whatever you want. Yes, you need to put something on there…but generally speaking, it doesn’t matter what terms you set, especially to larger companies. They’ll pay you when they pay you according to their own byzantine policies, and their payment terms will override yours. We’ve noticed that the biggest companies tend to pay 90 days + day of the month the invoice was submitted, but have never experienced anything longer than that unless the buyer is going through their own hardships or other shenanigans are afoot.
5. We generally engage with accounting contacts to track down late payments, but will go back to the actual buyer that contracted us and ask for help if a payment gets stuck or the accounting folks are ghosting us. In our experience, the actual buyer is usually embarrassed that an invoice is unpaid and can shake the money loose.
6. Finally…getting paid is a PITA. 100%. But if you can put up with the nonsense of having to track it down, you’re almost certain to get paid…eventually. In over a decade of small business work, we’ve never not gotten paid for an invoice, because we were persistent. But yeah, late payments suck especially if you’re going through tight cash flow.
Hang in there and good luck. I feel your frustration.