So, have you finally learned your first lesson (i.e., ALWAYS use contracts)?
I said sure a few changes here or there, no problem.
And being vague is almost as bad as having no contract. When you write your contract, use specific language like "Maintenance plans include up to x hours of work/month."
With your problem clients (no- make that ALL your clients), make a contract NOW specifying the limits to your work. Explain that going forward, the contract will apply to any work performed (or not performed). And make sure that ALL requests/approvals go through e-mail or fax so that you have a paper trail.
After that point, anything outside the contract should result in a message from you stating that it is outside the contract, but you would be happy to perform it at $X price. Problem solved.
If they don't like it, they can go elsewhere. And your problem is still solved!
In regards to refunding any money, look at it on a case by case basis. In some cases, it may just be worth it to refund some (or even all) of the money just to be done with them.
Itís 2 ladies running this small business and apparently they donít read the emails they each send to me.
Your contract should stipulate *one* point of contact at the company who will authorize all approvals/changes. If Betty is the POC (point of contact) and Mary says, "Oh, but Betty said this design is okay," then you respond, "I'm glad she likes it. Please have Betty e-mail or fax me the approval and I will get started right away."