Track everything and follow up relentlessly before it becomes a problem. Most payment delays happen because nobody's paying attention to the calendar until day 45 rolls around and suddenly it's awkward to chase.
Set up a system where you flag your invoice the day before it's due. Send a friendly check-in email a few days after the net-30 date passes - not aggressive, just "wanted to confirm you received invoice #whatever on date X, so we're looking at payment by [specific date]." A lot of the time a mid-size company just has your invoice buried in someone's inbox. A gentle nudge early costs you nothing and often gets results. If they genuinely can't pay on time, you'd rather know that on day 32 than day 60 when you're already stressed about cash flow.
If they do push back or consistently miss dates, that's when you escalate - ask for a revised payment schedule in writing, or adjust your terms for future work. A penalty clause might feel aggressive if they're a new client, but honestly, late-pay fees are totally standard in B2B contracts and any company worth working with won't blink at it. The key is having that conversation early and building it into your contract from the start, not springing it on them after the fact.