e-commerce Development and Hosting Agreements
By Eric Goldman
General Counsel, Epinions, Inc.
1. THE COMPLEXITY OF WEB DEVELOPMENT.
Customer Developed |
Third Party Developed |
Developer Developed |
Content |
Content (customer procured) |
Content |
Software |
Content (developer procured) |
Software (custom developed) |
Software (customer procured) |
Software (recycled) |
|
Software (developer procured) |
Development utilities |
|
Development utilities (developer procured) |
System utilities |
|
System utilities (developer procured) |
||
User content (if hosting involved) |
2. BECAUSE OF THE COMPLEXITY…
- The agreement needs an explicit statement of work that delineates what the developer will be developing versus getting from the customer or a third party
- The agreement needs an explicit description of what software is being delivered by the developer to the customer and in what form (source code v. object code)
- The agreement needs an explicit description of what components are owned by the customer. For those components owned by developer, what license rights are being given to the customer? Any exclusivities? Modification rights? Rights to have third parties develop changes for the customer?
3. MILESTONES AND ACCEPTANCE.
- The parties typically establish a statement of work with specifications and milestones for performance. Specifications should include the server platform being used and the browsers/plug-ins the website will be compatible with
- Customer gets the opportunity to accept or reject the milestone deliveries based on an acceptance plan or conformance to the specifications
- Remedies for developer failing to provide acceptable milestone deliveries
- Remedies for developer’s late performance. What happens in the case of a force majeure? What happens if the customer or a third party fails to perform on time?
- Systems integration: developer wants to develop only to a static version of software and does not want acceptance/performance warranty affected by non-developer components, while the customer wants a “turnkey” solution (i.e., developer makes the package work). One possible solution is establishing a spec for data inputs/outputs
4. MAINTENANCE/MODIFICATIONS.
- The developer does not want specification changes to affect its efforts unless payment is T&M
- Following the initial acceptance, does the developer have any further support obligations? Performance warranty as a back-handed support provision
- Does the customer get any development utilities? Does the customer get the source code (and of what)? Does the customer think it can support the code itself?
5. OTHER DEVELOPMENT ISSUES.
- Early termination: what does the developer give, and what does the customer pay?
- Warranties: performance; security; title?; Y2K?; Euro compliance; harmful code (including back doors/trap doors)
- Indemnity (especially for patent infringement)
- Developer credit
6. WHAT IS HOSTING?
- Collocation (bandwidth + possibly server oversight)
- Hosting (bandwidth + server operation + other services)
- Co-Branding (extending the boundaries of the website to third party pages)
- Service Outsourcing (third party providing functionality under branding)
7. TERMINATION BY HOST.
- Termination for breach of acceptable use policy/anti-spam policy
- Termination for user actions
- Suspension as an alternative remedy (pay but get no service)
- Post-termination assistance to move to new host. What will it take to get up and running on a new host?
8. SERVICE LEVELS.
- Server/router uptime
- Bandwidth throughput
- Server speed/response time
- Security
- Customer support
- Software errors
- System redundancy/service restoration
9. WEBSITE DATA.
- Maintaining data confidentiality. Standard confidentiality clause doesn’t cut it
- Is the web host an “operator” under COPPA?
About the Speaker: Eric Goldman is General Counsel of Epinions, Inc. and an adjunct professor of Cyberspace Law at Santa Clara University School of Law. Eric’s personal home page is located at http://members.theglobe.com/ericgoldman/. Eric can be reached at eric@epinions-inc.com.