To Refund or Not to Refund…That is the Question
April 19th, 2007 by Stephen K. Knight
You are a software developer. You have a client that hires you to develop a database system for their company. You work several months on the project and as you work through the development stages with your client, you are given nothing but green flags. Your client accepts your solution, and begins using it on a daily basis in their office. A month later, you receive a phone call, the client no longer wants the solution, it just isn’t what they had expected. You ask what the problem is and they reel off a list of problems that they see with the program.
The client then asks for a full refund. What do you do? What could you have done to prevent this?
Results and Goals
Let’s backtrack to the beginning of this process. You should never go into a custom programming project without clearly defined results and goals. You should develop a project proposal that gives an overview of the project - and then a clearly defined breakdown of each step of the project. I will not proceed with a project until I have a signed agreement from my client confirming that we both have a clear understanding as to what is to be accomplished. You need to have a complete understanding as to what the application is supposed to do, and how it is to perform.
Your proposal should also have well defined milestones. As each development milestone is reached, the client checks this off as completed. This confirms that client agrees that the solution is complete up to that point. Confirmation of completed milestones should be in the form of an email, a fax or a letter. Do not rely on a telephone conversation as proof that a milestone has been completed.
Provide access to a demo of the software or website as it is being developed. If you are developing a FileMaker database solution, run it on a hosted server so your clients can access and test, or send them a locked down version that allows limited access or limited record creation. If you are building a website, allow access to the website as you are doing development. This gives your clients an opportunity to see their project as it progresses, and it gives them the ability to alert you to potential miscommunications.
Your clients should know from day one how long they have to evaluate the project once it is completed. This is extremely important especially if you will be offering a maintenance agreement. Once their evaluation period is over, your documentation needs to let them know that all further maintenance will be billed at an hourly rate.
Following these procedures should help both you and your client to produce the best results!
Payments for Work Completed
Payment amounts and time-tables depend on the size of the project. An initial deposit should be made before beginning the project. Once the project has begun, payments should be made as certain goals (specified in your documentation) are reached and signed off on by your client. It is extremely important to make it clear to your client that money paid at each milestone is not refundable. This means that the only things paid for are those milestones everyone agrees to be complete. Your client “must” be made aware of this at the beginning of the project.
Once the project is complete and the expiration period is over, your clients should not receive a refund for your work. It may help to look at the solution you are providing as a list of deliverables. The client is actually paying you for a list of deliverables.
To summarize
- Provide a clearly defined project proposal, including project details, milestones, payment arrangements and timelines
- Have your customer sign off on this proposal
- As each stage of the proposal is completed, have them confirm the completion of that stage of the project by email, fax or letter.
- Provide access to the solution you are creating
- Clearly define an evaluation period
- Once the evaluation period is over, either create a change order or bill hourly for new features etc.
So when would I refund a Client?
This is a sticky question and one that will most likely never need to be addressed if you follow the above guidelines. Most of the time a partial refund can be expected if:
The best way to avoid conflict with your client is to prepare an extremely detailed proposal. I encourage readers of this blog to give some insights as to what they include in their proposals and what techniques they use to maintain a close working relationship with their clients.
If you are a consultant and you are interested in marketing and psychology check out the FileMaker Consultant Blog

