TL;DR — 6 must-haves in your contract
- Source code in your GitHub from day one
- IP assignment — written, not implied
- All credentials in your accounts (AWS, domain, gateway, email)
- No vendor lock-in — no proprietary platforms, frameworks you can't replace
- Documentation handover in writing
- 30-day post-launch transition if you part ways
The 6 must-haves
1. Source code in YOUR GitHub from day one
Wrong: "We'll give you the code on launch."
Right: "You'll have read+write access to a GitHub repo we create in YOUR organisation. Every commit goes there from day one."
If they refuse, walk. Reason for refusal is always the same: they want leverage to renegotiate later.
2. IP assignment in writing
Indian copyright law: code's first owner is the developer who wrote it, NOT the client paying for it (unlike work-for-hire in some jurisdictions). To transfer IP, you need explicit written assignment.
The clause: "All Intellectual Property rights in deliverables, including but not limited to source code, designs, and documentation, shall vest in [Client Name] upon payment of the applicable milestone, and Developer hereby irrevocably assigns all such rights."
3. All credentials in YOUR accounts
- AWS / DO / Vercel — your account, your billing
- Domain registrar — your account
- Razorpay / Stripe — your account
- Email (transactional) — your account
- Database — accessible to you (DB credentials in your hands, not just dev's laptop)
Common scam: agency holds AWS account, charges you 15% markup, locks you in. Your AWS, always.
4. No vendor lock-in via proprietary tech
- Avoid agency "frameworks" you've never heard of (only they can maintain)
- Stick to open-source mainstream stacks (Next.js, React, Postgres, etc.)
- No SaaS dependencies you can't switch (their proprietary CMS, their proprietary payment layer)
5. Documentation handover
Required at end of project:
- README explaining how to run locally
- Deployment guide
- Database schema doc
- Third-party integrations list with credentials notes
- Known issues / tech debt list
Without this, even good code is hard to take to a new dev. Demand it.
6. 30-day post-launch transition
If you decide to switch agencies post-launch, the original agency commits to 30 days of: bug fixes (paid hourly, capped), knowledge transfer to new dev, no withholding of access. Bake this into the contract.
Red flags
- "Our standard contract" with no IP assignment
- "We host your code on our infrastructure"
- "You'll get the code on launch" (not from day one)
- "This is built on our platform" (proprietary CMS / framework)
- Any pushback on you owning AWS/domain/gateway accounts
Big Helpers contract: code in client GitHub day 1, IP fully assigned, all infra in client accounts, no proprietary lock-in, full documentation, 30-day transition clause. Standard, not special. See engagement model →
Last reviewed: 1 April 2026.
Want this built for you?
Talk to Kashvi — 30-min call, honest assessment, no pitch deck.