Free Software Engineer
Service Agreement
Stop letting late-paying clients turn your high-value development time into a low-wage collection side-quest that drains your professional energy.
Pro Contractor Tip
Include a 'Suspension of Services' clause in your MSA stating that technical support and code deployments will be paused automatically if an invoice remains unpaid for more than 30 days.
Why use a written agreement?
Handshake deals are risky. As a Software Engineer, "scope creep" is your biggest enemy. A clear agreement ensures everyone agrees on the deliverables before money changes hands.
🛡️ What this template covers:
- ✓Deliverables List
- ✓Payment Terms
- ✓IP Rights
- ✓Revision Limits
- ✓Cancellation Policy
Ready to send?
Our AI will fill in the client's name, dates, and specific project details for you.
Start building now →Statement of Work
REF: 2026-0011. Project Background
This Agreement is entered into by and between the Client and the Contractor. The Client wishes to engage the Contractor for professional Software Engineer services.
2. Scope of Services
The Contractor shall provide the following deliverables:
- Subject: Follow-up: Invoice #[Invoice Number] for [Project Name] Hi [Client Name], I hope your week is going well. I'm reaching out to provide a quick reminder that Invoice #[Invoice Number], which was sent on [Date], is now a few days past due. I understand things can get busy, so I wanted to bring this to the top of your inbox. Could you please confirm the status of the payment or let me know if there are any issues on your end that I can help resolve? Best regards, [Your Name]
- Subject: Overdue Notice: Invoice #[Invoice Number] - 15 Days Past Due Hi [Client Name], My records indicate that Invoice #[Invoice Number] for the [Project Name] development work is now 15 days past due. As per our signed agreement, timely payments are essential for maintaining our current development velocity and resource allocation. Please settle the outstanding balance of [Amount] by [Date] to ensure our project timeline remains on track. If you have already initiated the transfer, please let me know so I can update my ledger. Regards, [Your Name]
- Subject: URGENT: Stop-Work Notice for [Project Name] - Final Demand Hi [Client Name], Despite multiple reminders, Invoice #[Invoice Number] is now 30 days past due. This email serves as formal notice that, per the terms of our contract, I am implementing a mandatory stop-work order on all active development, maintenance, and deployments for [Project Name] effective immediately. Development will resume once the full balance, including any applicable late fees, has been cleared. Please provide an immediate update on the status of this payment to avoid further service disruptions. Best, [Your Name]
3. Performance Standards
The Contractor agrees to perform the Software Engineer services in a professional manner, using the degree of skill and care that is required by current industry standards.
TERMS & CONDITIONS (Summary):
1. Payment: 50% Deposit required.
2. Copyright: Rights transfer to Client upon full payment.
Disclaimer: This template is for educational purposes only and does not constitute legal advice.
Frequently Asked Questions
How do I stop feeling like the 'bad guy' when I have to ask for payment?
The awkwardness stems from the manual nature of the request. By using an automated dunning engine, you shift the 'enforcer' role to a robot. This makes the payment process feel like a standard, system-generated business workflow rather than a personal confrontation, allowing you to maintain a positive creative relationship with the client.
When is the right time to actually stop work on a codebase for non-payment?
Day 30 is the industry standard for escalation. Setting up a digital dunning system allows you to pre-program these triggers so the client receives warnings well in advance. This ensures that when the stop-work order hits, it is a predictable result of their inaction rather than a surprise disruption, protecting your leverage without burning the bridge.
What if the client promises to pay 'next week' but never does?
Verbal or manual promises are hard to track. An automated dunning engine solves this by maintaining a strict, persistent cadence of reminders that ignore 'empty promises' until the actual funds are reconciled in your account. This systematic persistence is far more effective at getting a response than sporadic manual emails.