Custom enterprise software is vital to the operations of many companies. Often, this software costs millions to develop and implement, which means that companies need assurances that the software works and will continue to work. With regular maintenance, most of these vital software packages perform as expected.
Sometimes, however, maintenance from the licensor of the custom software ceases, which means that companies need access to the source code to do it themselves. This source code is a vital trade secret of software developers, and they are rarely willing to turn it over. In order to balance the needs of both parties, many turn to source code escrow (sometimes known as software escrow). If you are considering using source code escrow as a safeguard in a software-for-hire contract, Priori can connect you with an experienced technology attorney who can walk you through negotiating the agreement.
What Are Source Code Escrows?
When a company licenses software, they only get the final working product, not the source code. Source code is important, because it contains all the logical statements and operations that control the processing of data and the functionality of software. Changing this source code is the only way to make major changes to the actual software used by the licensee.
Source code escrows are a mechanism through which purchasers of custom software are ensured continued access to the source code of the software in the event that the original company that coded the software is no longer able to maintain it, whether due to bankruptcy, company dissolution, acquisition, or another similar event. Essentially, a third-party software escrow company takes possession of the IP of the original source code (and any updates and maintenance provided by the creator of the code) and keeps it secret until a predetermined release event or both the licensor and the licensee agree to its release. These source code escrows are a middle ground that allows licensors to keep IP secret, while licensees are assured continued access to the source code in the even of an unforeseen event.
Why Is Source Code Escrow Needed?
Custom enterprise software companies depend on source code as vital IP for their business. These are their trade secrets vital to operations, so no software company is willing to provide that source code to their customers. When companies are delivered custom software, they only receive the executable code. Unfortunately, the source code is vital if any adjustments to the software need to be made from basic fixes of bugs and problems to major adjustments to operations. Even simple maintenance and updating of the software requires the source code.
In an ideal situation, the licensor will simply take care of any updates and maintenance of the software, but sometimes they cannot or will not live up to obligations. That’s why licensees of custom software insist on having access to the source code. Putting the source code in escrow balances the needs of both parties.
Source Code Escrow Agreement
Most software-for-hire contracts will include provisions dictating the requirement to sign a separate source code escrow agreement if the parties agree to put the source code in escrow.
About Source Code Escrow Agreements
To put software-related IP in escrow, the licensor and the licensee enter into a three-party contract called a source code escrow agreement with the escrow agent. The agreement gives the escrow agent custody of the source code, binds the agent to confidentiality, and sets the conditions under which the code can be released.
Key Terms and Provisions
The following are some key terms and provisions contained within source code escrow agreements:
- Escrow Subject and Scope. This establishes exactly what will be held in escrow, including what will be needed to independently maintain the software, such as documentation, software tools, and/or hardware.
- Responsibility to Update. This sets the terms and requirements under which the licensor will be obligated to update the code in escrow, including procedures for such updates.
- Conditions of Release. This details exactly which scenarios entitle the licensee to have the source code released, such as bankruptcy, a failure of the licensor to fulfill contractual maintenance obligations or a discontinuation of the development project.
- Authorization to Release. This establishes how a release event will be considered to have occurred and whose authorizations, if any, the escrow agent will need to release the source code.
- Rights Obtained by Licensee in the Event of a Release. This establishes which IP rights are transferred after a release. Usually, this is limited to those rights needed to maintain or continue developing the software and excludes the right to sell the IP to a third party.
- Services. Sometimes escrow agents perform services to verify that the source code is what it claims to be or is maintained properly. This provision establishes exactly which ones will be required by the other parties.
- Fees. This establishes payment, including which party is responsible for the fees.
What are some potential problems with source code escrows?
Source code escrows can be valuable, but there are tradeoffs. Maintenance for these escrows can be expensive, as the software is held for a long period of time and rarely released at all. Also, sometimes the code once released can be defective or difficult for a third party to interpret and use.