How Much the Project Will Cost
What a client expects to pay for a project seems like an easy expectation to manage. You quote a price; the client agrees; what could be misunderstood? Reality check! Few projects end up exactly as conceived in the beginning. You must educate the client about how the process will unfold. Let the client know that he may change his mind about things as you go along. Let the client know this is normal and you expect it, but he needs to realize that changes may impact his cost. For example, if you have a complete product catalog designed, and the client decides at the last minute he wants to list the products in categories instead of alphabetical order, this is a change that is going to cost extra.
Additionally, you should establish a concrete routine for a client to okay your work as it progresses. You might want to create a form that the client can sign at critical points in the project. For example, when creating a website, you might want the client to sign off on the design of the site, the items in the navigation menu, and the fields needed for a contact form. You also should have some kind of routine in place that allows a client to request changes. For this, I like the idea of a "change order form." This form would require the client to list the original item that was agreed upon (if applicable) and the change or addition that the client wants. The client would send the form to you, and you would list the additional cost (if any) and return it to the client for his final okay. This process helps the client remember that he is asking for something that was not agreed upon when you quoted the original price for the project.
The more experience you have with clients the more knowledge you will have about the kinds of changes they make. You'll be able to advise them when they should stop making changes so they can avoid additional charges. For example, changes made to the navigation bar after the site is designed can be quite time-consuming and should incur additional costs. Obviously, you can do some global find-and-replace changes in the source code, but this is sometimes fraught with problems if the changes are complicated. You could end up going through every page and making edits individually. If you make the client understand this up front, you can save the client money and possible frustration.
Lastly, you need to make the payment requirements clear to the client as well as the consequences of not adhering to the payment requirements. Explain how often you will invoice the client and how soon the invoices must be paid. Make it clear to the client that work will stop and deadlines will not be met if you do not receive payments on time.