Broncode-escrow betekent dat je bureau de broncode van software in bewaring geeft bij een onafhankelijke derde, de escrowagent. De klant krijgt die code alleen als er iets gebeurt wat jullie vooraf hebben afgesproken. Denk aan een faillissement van je bureau, het stoppen van onderhoud of het niet nakomen van de supportafspraken.
Het auteursrecht blijft bij je bureau. Escrow is daarmee de manier om een klant zekerheid te geven zonder je code over te dragen. Voor een bureau dat software in licentie geeft, is het vaak de voorwaarde waaronder een grotere klant tekent.
Waarom vraagt een klant om escrow?
Omdat de klant afhankelijk wordt van software die hij niet zelf bezit. Gaat je bureau failliet, dan kan het onderhoud zomaar stoppen.
In Nederland kan de curator weigeren een lopende wederkerige overeenkomst na te komen (artikel 37 Faillissementswet). Een supportcontract valt daaronder.
Zonder broncode zit de klant dan vast. Met escrow kan hij een ander bureau inschakelen om de software te onderhouden. Klanten die erom vragen, zijn meestal:
- organisaties waar de software bedrijfskritisch is;
- partijen die aanbesteden en het als eis in het programma van eisen zetten;
- klanten die een licentie nemen in plaats van het auteursrecht te kopen.
Hoe werkt een escrowregeling?
Er zijn drie partijen en één overeenkomst die ze alle drie tekenen.
| Partij | Rol |
|---|---|
| Je bureau (deponent) | Levert de broncode aan en houdt het depot actueel |
| De klant (begunstigde) | Krijgt de code bij een vrijgavegrond |
| De escrowagent | Bewaart het depot en beslist over vrijgave volgens de overeenkomst |
Het verloop:
- Jullie tekenen de escrowovereenkomst, naast de licentieovereenkomst.
- Je bureau stort de broncode in het depot.
- De agent controleert het depot, op het niveau dat jullie hebben afgesproken.
- Bij elke nieuwe release stort je een update.
- Doet zich een vrijgavegrond voor, dan meldt de klant dat bij de agent.
- Je bureau krijgt de kans om te reageren. Daarna geeft de agent de code vrij of niet.
Wat moet er in het depot zitten?
Meer dan de repo. Een klant die alleen broncode krijgt, kan daar vaak niets mee bouwen. Een bruikbaar depot bevat:
- de volledige broncode van de afgesproken versie, met commit-hash;
- buildscripts en instructies om de software te compileren en uit te rollen;
- een lijst van externe afhankelijkheden met versies en licenties;
- database-schema’s en migraties;
- technische documentatie: architectuur, configuratie, bekende beperkingen;
- een beschrijving van de infrastructuur, bij SaaS of gehoste software.
Wat er niet in hoort: productiewachtwoorden, API-sleutels en klantdata. Die regel je apart, bijvoorbeeld via een procedure bij vrijgave.
Wanneer komt de broncode vrij?
Alleen bij de gronden die in de overeenkomst staan. Gebruikelijke vrijgavegronden:
- faillissement of surseance van betaling van het bureau;
- het bureau stopt met de software of met de onderneming;
- het bureau komt de onderhouds- of supportverplichtingen ernstig niet na, ook na een ingebrekestelling;
- overname van het bureau door een partij die het onderhoud niet voortzet, als jullie dat afspreken.
Houd de gronden concreet. ‘Als de klant ontevreden is over de support’ leidt tot ruzie. ‘Als een kritieke storing na schriftelijke ingebrekestelling niet binnen tien werkdagen is opgelost’ is toetsbaar.
Wat mag de klant met vrijgegeven code?
Precies wat de licentie of de escrowovereenkomst zegt, en meer niet. Vrijgave draagt geen auteursrecht over. Daarvoor is een schriftelijke overeenkomst en een akte nodig (artikel 2 lid 3 Auteurswet), en die tekent niemand bij escrow.
Leg daarom vast welk gebruiksrecht de klant bij vrijgave krijgt. Gebruikelijk is:
| Wel | Niet |
|---|---|
| De software onderhouden en fouten herstellen | De code verkopen of in licentie geven aan anderen |
| Een derde inschakelen voor dat onderhoud | De code gebruiken voor een eigen product voor de markt |
| De software aanpassen voor eigen gebruik | De code openbaar maken |
Wat betekent escrow voor de waarde van je code?
Escrow maakt je code makkelijker in licentie te geven. Een klant die zekerheid wil zonder de broncode te kopen, krijgt die zekerheid terwijl jij eigenaar blijft. Dat is precies het model waarmee een bureau dezelfde code meerdere keren kan laten renderen.
Een goed depot dwingt je ook om de code op orde te brengen. Een koper of licentienemer kijkt naar dezelfde punten:
- de code is te bouwen zonder hulp van je team;
- de architectuur en configuratie zijn gedocumenteerd;
- er is een lijst van afhankelijkheden met versies en licenties.
Wat dat doet met de prijs, lees je op wat is code waard. Hoe je de licentie zelf opzet, staat op licentieovereenkomst software.