One tactic I've heard is to increase the price by 5% and then give them a 5% discount if they pay within 30 days. I've never tried this myself, but I've heard that this greatly encourages prompt payment because everyone loves a discount.
I offer significantly higher discounts than that for quarterly or annual prepayment, in the case of recurring revenue. Cash is king. Even to the degree where taking a 12-25% haircut can be worth it.