Termination of a contract
The law recognises 6 broad categories where a contract may be terminated. Termination simply means comes to an end - the 1980s Arnold Schwarzenegger film gave it something of a pejorative connotation but there's nothing inherently negative about termination.
- Termination by performance: You do what you're obliged to do and they do what they're obliged to do. Somewhat strangely, if the contract has a clause that allows early termination, that is still termination by performance because the contract was terminated by doing what the contract required.
- Termination by agreement: You and the other party form a new contract (which must have all the required elements) to end this contract. This can be on any terms which you can agree.
- Termination for breach: If one party breaches the contract, the innocent party may:
- repudiate the contract and sue for damages for breach of a condition;
- repudiate the contract and sue for damages for breach of an intermediate term if the breach is serious;
- sue for damages for breach of an intermediate term if the breach is minor;
- sue for damages for breach of a warranty.
- Termination by Lapse of Time: if both parties sit on their hands until they lose the right to sue, the contract ends by being unenforcable.
- Termination by operation of law: Something like death or insolvency ends most contracts.
- Termination by frustration: it becomes impossible (not merely difficult or more expensive) to perform the contract, such as, for example, your country going to war with their country.
Your situation
We're going to ignore reasons 4-6 because they aren't applicable.
First, there is nothing special about a deposit: they can be made explicitly refundable or non-refundable but if the contract is silent (as here) they are the same as any other payment on account.
Your obligations under the contract are to provide the completed software (not 50-70% of it) by around the estimated completion date. Their obligations are to respond to your enquiries in a timely manner and to pay you the agreed amount 30% in advance and the remainder on completion.
Were you both to do this, the contract would be terminated by performance and everybody is happy. This now seems to be an unlikely outcome but it still may be possible with sufficient goodwill.
It appears that they are attempting to terminate by agreement - you return the deposit and everything is done. These terms don't appear to be acceptable to you. What terms would you accept? Work that out and begin negotiation.
This brings us to termination by breach.
You say "The timeline has been exceeded, due in large part to Company A not responding to communication." Is that a breach? If so, by whom?
The project timeline is described as an "estimate" so the date for completion is not exactly the date at the end of the timeline but some reasonable period around that date. What is reasonable depends on the circumstances: if the timeline is in months then weeks around the end would be reasonable; if it's in years, then months; days, hours and so on.
Failure by you to achieve that date (whatever it is ultimately determined to be) would be a breach to the extent that the delay was not attributable to the acts or omissions of the principal. Time is (ono) an intermediate term so whether this gives the principal a right to repudiate depends on how late you are. The principal could serve a notice to complete which would fix the completion date and, if that date was reasonable, failure to achieve it would make failing to achieve it a breach of a condition.
Based on the information given, it is impossible to say who, if anyone has breached the contract, and if there has been a breach if it is sufficiently grave to allow the innocent party to terminate it. It is entirely possible that there has been a breach by both parties which means that both parties owe damages to the other.
Arguments over who breached the contract are likely to be a significant issue in any dispute resolution.
How much are the damages?
The general rule with contract damages is that the innocent party is to be placed in the position they would have been in if the contract had been completed.
So, if you breached the contract, the principal is entitled to get the benefit of having the software. If they get it from somebody else and that costs them more money, you owe them the difference. If they get it later and that causes them economic harm, you have to pay for that. If they don't get it at all then a) you are not entitled to keep the money you have and b) pay them whatever benefit the software would have given them.
If they are in breach, you are entitled to recover your costs and the profit you expected to make on the contract. So, for example, if the contract was for $1,000 and you expected to spend $800 ($200 profit) and, to this point, you have spent $300, you would be entitled to $300 + $200 = $500, of which you have already been paid $300. If your costs to date and profit are low enough, you might owe them money.
Obviously, these are easier to state than to calculate but that's what lawyers, accountants and other experts are for.