Decide what you're willing to put with.
If you've got a policy in place, you need to stick to that until it's up and you can change it.
Six months postdated cheques? What's that? You have them write out a check that's postdated six months in the future?
Have them pay in advance. Don't start lessons unless until they've paid. They're the ones on the losing end if they skip lessons this way.
Legal action's not worth it. Too much time and money. Decide how much you can let slide. If necessary, bit the bullet and cancel lessons and hope they pay. Better to lose a little money than a lot.
Ah, and don't start lesson until they return that policy sheet (along with paying in advance).
All the policy and 'pay in advance' is great, but in reality if you're struggling to make ends meet, you have to put up with some garbage. If you don't need the money, then it's less of a worry whether you ever get paid or you can turn away students who are a pain. If you really want to feel guilty, it's good for the child -- it's not their fault if the parents mess things up. You should put up with all the garbage for the good of the child right? Guilt, guilt, guilt... lol... Some people will be scared away by the formality of the lesson policy sheets too. Simple is good for that and hopefully they actually read it.
Here's a little trick -- Create a general memo that appears to go out to all students and parents. You could probably really hand it out to everyone -- Even if they don't miss payments, a reminder never hurts. In a general memo, say you appreciate those who pay on time and that several parents are late in paying. Not just one, several -- you don't single anyone out and it's not like your pointing a finger at someone demanding they pay. Several people aren't paying on time, please respect the lesson policy agreement, it's simply not possible for you to teach lessons for free for an extended period of time.... something like that. Then make sure the family's that need to get the memo get it and if the rest get it too reminders don't hurt.
If a certain family is being a problem, just talk with them. Tell them specifically how many payments they missed ("You've been late paying me five times.") Give them a special agreement to pay you back -- with a deadline. If they can't make that, then really consider cutting them off -- they're probably too unorganized. If they don't return the signed policy sheet, ask if they have any questions or if they want to discuss anything in it. Sometimes, it's just a matter of a tactful reminder.
Another idea is to have a deadline for that payment. If they miss that and want to pay later, the cost is more. "Payment due by January 1st, 200X. The lesson fee is $X.XX (X% marked up) after that date." In other words, they pay on time, or pay more. That marked up pay can ease the stress of dealing with people that do this type of thing. You can justify it by saying you need to prepare for the upcoming semester and people who register at the last minute take extra last minute preparation. Or keep it simple -- It's $50 extra if you pay late.
I like having the policy in place and then I can relax it. If they don't pay on time I can stand there, act like I'm thinking and agonizing a little, and then give them extra time -- and be specific with an extended deadline -- "Ok, I guess I can give you an extra week, but I reeeeeally need to get paid for this date, otherwise bad things will happen for me." This way it appears you give them something and you're working with them (and you really are, you just don't expect them all to pay by the first deadline). When this happens a few times, you can tell them you let them pay late x-number of times, but you can't do they anymore -- they must pay on time or you can't teach them.
It really depends on what you want and how much you want to play games and put up with things. There is a point where the effort outweighs and the money you receive and even the student's education -- because you could be teaching another deserving kid instead of the one that wastes your time messing with money issues.
When parents don't pay on time or the student forgets things, I take it as a sign that they aren't as serious about lessons. If it happens too much, I start looking for ways the situation will benefit me -- what can I learn about this type of student, how can I use this student to become a better teacher and help my other students (guniea pig idea). If I'm not getting paid monetarily, I am getting paid with hands-on, useful experience. I don't think doing this, but it does benefit my teaching and my other students. I figure the money they don't pay I will make up for in the future by being a better teacher. I also figure that if they haven't met their end of the bargain (what's written in the policy statement) then I have a little wiggle room to experiment with teaching ideas. Have them buy that new book you want to learn more about just so you can see how it works with a student, that type of thing. I see it as a way of balancing things out when parents do this type of thing. (although it's still distasteful)