1) Prospect gets in touch with us via email or phone.
2) We send them a "Project Planner". This is a questionnaire with key questions (i.e. "What's the goal of your project?") that we've put together.
3) We quickly review the project and send the prospect an estimate of how much it will cost to develop and an estimated timeline. We make sure to make the prospect know the quote and timeline is based on the ideal that it doesn't includes revisions. Something like: Each revision will extend the delivery date by XX days.
5) If the prospect accepts we send them a contract and ask for a 50% payment before we do any work. If they are not comfortable with that, or the project is too big, we ask for 25% and then setup several payment deadlines as the project moves forward.
6) After the retainer has been paid, we send the (now) client a new questionnaire, called "Client Worksheet". Here we get specific to get to know the client better.
6) Once we receive payment, we make some research on the project and provide some wireframes along with simple explanations on how we think the goal can be achieved.
7) After the client is happy with the final wireframe and signs it off, we proceed to design the mockups. We already know what he likes so usually a couple of revisions is good enough to get final approval.
8) Once the design has been approved we start coding. Most of the "how will it work" has been already discussed through the wireframes, so it's pretty easy at this point.
9) Testing, final payment and launch :-)
Hope this helps!