Contract Renewal & Expiry Alerter
Build an internal tool that scans your service agreements for end dates coming up, sorts them into 90/60/30-day renewal windows, drafts each renewal quote with your price-escalation built in, and queues a reminder to the account owner - then sends the renewal to the customer only after the account manager approves it. No more contracts lapsing silently because nobody was watching the calendar.
A login-protected renewal tool: import your service agreements, let the agent flag every contract approaching its end date into 90/60/30-day windows, draft a renewal quote per contract with your escalation applied, queue a reminder to the right account owner, review and approve each quote in one screen, send the renewal via Resend only after approval, track auto-renew vs manual, and export the whole renewal pipeline as CSV - with a duplicate guard on contract number so nothing ever gets quoted twice.
Before you start
- A free Vercel account
- A free Supabase account
- A free Resend account (and a sender address you can use)
- A contracts CSV (contract #, customer, end date, value, escalation terms, auto-renew flag, account owner)
- Your renewal rules (lead-time windows like 90/60/30 days; how you escalate price)
The problem this kills
Service agreements are the steadiest revenue you have - and the easiest to lose without anyone noticing. A contract has an end date buried in a spreadsheet, an old quoting system, or worse, somebody's memory. Renewals depend on a human remembering to look. So the maintenance plan that's billed every year for the last six years quietly lapses, and you only find out when the customer calls in for service they no longer have - or when a competitor calls them first.
It falls apart in the predictable ways. The account owner who manages that relationship was out the week the contract came due. The renewal got quoted at last year's price because nobody applied the escalation clause that's right there in the agreement. Two people both "owned" the same account and each assumed the other was handling it, so it got quoted twice with two different numbers. An auto-renew contract got a manual renewal quote sent anyway, confusing the customer. And the contracts that should have been chased at 90 days out get noticed at 5 days out, when there's no time to have a real conversation about scope or price.
This tool turns "hope someone remembers" into a standing, auditable routine - every contract approaching expiry surfaces in the right lead-time window, the renewal quote is drafted with your escalation already applied, the right account owner gets a reminder, and the quote goes to the customer only after that owner reviews and approves it.
What you'll build
A small internal web app, just for your team, that:
- Imports your service agreements from a CSV - contract number, customer, end date, current value, escalation terms, auto-renew flag, and the account owner.
- Scans the end dates every time it runs and sorts contracts into your lead-time windows - for example 90, 60, and 30 days out - so nothing is noticed too late.
- Drafts a renewal quote for each candidate, with your price escalation applied (a percentage bump, a CPI/index figure, a fixed step, or a per-line rule) and the new term spelled out.
- Tracks auto-renew vs manual contracts and handles them differently - auto-renews get a heads-up notice, manual ones get a renewal quote to approve and send.
- Queues a reminder to the right account owner for every contract entering a window, so the person who owns the relationship knows it's time.
- Assembles the renewals due into a single review screen for the account manager - who's renewing, at what new value, and when.
- Sends each approved renewal through Resend - and only after the account manager clicks approve.
- Dedupes on contract number so the same agreement can never be quoted or sent twice.
- Exports the whole renewal pipeline as a CSV in the columns your CRM or quoting system expects.
What's inside the Implementation Plan
The plan is a single markdown file you paste into Claude Code (a free AI coding agent). It walks the agent through building the whole tool, step by step, each step ending with a ready-to-paste prompt.
The most important part: the plan opens by interviewing you about your business. Before it writes a single line, the agent asks how you handle renewals today, where your contracts live (a CRM, a quoting tool, a spreadsheet), the exact column names in your export, how your contract numbers and customers are named, how your escalation clauses actually work, your lead-time windows, how you tell auto-renew from manual, and your messiest edge cases - multi-year terms, mid-term price changes, contracts with no escalation, customers with several agreements. It reads a short tailored spec back to you, you confirm it, and only then does it build - so you get a tool shaped to how your renewals actually work, not a generic template you have to wrestle into place.
Inside you'll find:
- The discovery interview and how the agent turns your answers into the data model, your lead-time windows, and your escalation rules.
- The full build: database, login, CSV import with duplicate guards, the end-date scan-and-window engine, the escalation-aware quote drafting, the account-owner reminders, the review-and-approve screen, the Resend send, and the pipeline export.
- The hard human approval gate, the auto-renew vs manual split, and the dedupe on contract number.
- Verification steps so you can prove it works, and the CSV-export fallback so the tool is fully usable today even before you connect it to your CRM or quoting system.
The governance it includes (this is the point)
This isn't a toy. The plan builds in the controls a service business actually needs:
- Login so only your team can see or touch anything.
- Row-level security so people only ever see the contracts, customers, and quotes that belong to your organization.
- A complete audit trail - every import, draft, escalation calc, reminder, approval, send, and export logged with who and when.
- A hard human-in-the-loop gate - the AI flags the contracts and drafts the renewal quotes, but a real account manager reviews and approves each one (and approves any escalation change); nothing is ever emailed to a customer automatically.
- Duplicate guards - dedupe on contract number so the same agreement can never be quoted or renewed twice, even on a re-import or a double-click.
Who it's for
Contract admins, account managers, and service managers at field-service and equipment-service shops - HVAC, fire & life-safety, elevators, IT/MSP, security/alarm, facilities, medical-equipment service - who manage recurring service agreements and maintenance plans and want a real, auditable renewal pipeline that catches every expiry in time, applies the right price, and keeps a human in control of what goes to the customer. You don't need to write code. You need your contracts CSV, your renewal rules, and an afternoon.
You've got this - paste the first prompt and let the agent interview you.