L’escrow del codice sorgente è una pratica contrattuale poco conosciuta in Italia ma rilevante per le PMI che hanno fatto investimenti significativi in software custom business-critical: il codice sorgente del software viene depositato presso una terza parte neutrale (tipicamente un notaio o un servizio di escrow dedicato), che lo conserva e lo rilascia al cliente solo al verificarsi di condizioni contrattuali predefinite.
In pratica è una polizza di tutela: se al partner di sviluppo succede qualcosa (cessazione attività, fallimento, rottura contrattuale, vendita a terzi sgraditi), il cliente non si trova bloccato senza accesso al codice. Può prenderlo dal depositario e continuare con un altro fornitore, senza dover citare in giudizio nessuno.
Questa guida copre come funziona tecnicamente, quando ha davvero senso (e quando è over-engineering), scelta del depositario, clausole contrattuali tipiche, costi. Per la decisione build vs buy vedi Software su misura vs SaaS verticale. Per le altre clausole contrattuali da negoziare con il partner vedi Scegliere un partner di sviluppo: 15 domande pre-vendita.
Come funziona l’escrow del codice
Il meccanismo è semplice nel principio. Tre parti coinvolte:
- Beneficiario (il cliente): l’azienda che ha commissionato il software custom.
- Depositante (il partner di sviluppo): l’azienda che ha sviluppato il software e ne mantiene il codice in repository.
- Depositario (la terza parte): notaio, servizio di escrow specializzato o piattaforma di escrow tecnologica.
Il depositante carica periodicamente il codice sorgente aggiornato presso il depositario (mensilmente o trimestralmente, secondo contratto). Il depositario verifica che il deposito sia completo, conserva il codice in modo sicuro, e lo rilascia al beneficiario solo al verificarsi delle condizioni di attivazione (release event) definite nel contratto.
Cosa viene depositato (non solo il codice):
- Codice sorgente completo del software in tutte le versioni di release
- Documentazione tecnica (architettura, schema database, deployment guide)
- Build script e Infrastructure-as-Code (Bicep, Terraform, CloudFormation)
- Credenziali per l’accesso a risorse cloud esclusive (in forma cifrata)
- Eventuali certificati, chiavi di firma, licenze terze parti utilizzate
Senza questi accessori, il codice sorgente da solo è spesso insufficiente per ricostruire il software in caso di emergenza. Per il dettaglio dei deliverable vedi il glossario sviluppo software custom.
Quando ha davvero senso (e quando è over-engineering)
Tre criteri per decidere se l’escrow è giustificato per il tuo caso.
Sì all’escrow quando…
1. Il software è business-critical: la sua interruzione blocca operazioni aziendali importanti. Esempi tipici: gestionale produzione, portale clienti B2B con ordini, software di logistica integrato con magazzino, applicativo che gestisce documenti legali o fiscali.
2. Il partner di sviluppo è piccolo o ha vita finanziaria fragile: studio professionale, freelance, agenzia di sviluppo con 3-10 persone, partner senza track record decennale. Sotto questa soglia il rischio “partner cessa attività” è realistico e va mitigato.
3. L’investimento nel software è significativo: oltre i 40-50 k€ di investimento iniziale, il costo dell’escrow diventa trascurabile rispetto al valore tutelato. Sopra i 100 k€ è praticamente obbligatorio.
4. Il software ha dipendenze custom non standard: integrazioni proprietarie, algoritmi sviluppati ad hoc, componenti software che solo il partner sa come funzionano nel dettaglio. La perdita della “knowledge tribale” del partner è un rischio specifico.
No all’escrow quando…
1. Il software è no-critical o sostituibile rapidamente: tool interno usato da pochi utenti, software che può essere rimpiazzato con un SaaS standard senza grandi traumi.
2. Il partner è un’azienda grande e strutturata: gruppi con 200+ dipendenti, multinazionali, partner di lunga data con bilanci pubblici sani. Il rischio “cessazione attività” diventa trascurabile.
3. Il software è semplice e ben documentato: codice mainstream (.NET, Node.js, Python con framework standard), documentazione tecnica completa, repository Git accessibile al cliente sin dall’inizio. In questi casi il codice è praticamente già “in escrow informale” — qualsiasi altro fornitore può raccoglierlo se necessario.
4. L’investimento è limitato (< 20 k€): il costo annuale dell’escrow (500-1.500 €/anno) sarebbe sproporzionato rispetto al valore tutelato.
Criterio sintetico
Regola pratica: se il software vale >50 k€ di investimento iniziale e il partner è sotto i 50 dipendenti, valuta seriamente l’escrow. Se il software vale >100 k€, fallo sempre.
Le 5 condizioni tipiche di attivazione (release event)
Il contratto di escrow definisce in modo molto specifico quando il depositario rilascia il codice al beneficiario. Le 5 condizioni standard:
- Cessazione dell’attività del depositante: fallimento, liquidazione, scioglimento per qualsiasi causa.
- Insolvenza grave: stato di insolvenza dichiarato, procedure concorsuali, sequestro dei beni.
- Rottura contrattuale grave: inadempimento sostanziale del partner sui contratti di sviluppo o manutenzione (es. mancato adempimento dello SLA per > 60 giorni dopo diffida formale).
- Cessione dell’attività a terzi non graditi: vendita del partner a un’azienda concorrente del cliente o a un soggetto che il cliente ha esplicito interesse a non avere come fornitore.
- Inadempienza sull’obbligo di deposito: il depositante non aggiorna il codice depositato per più di X mesi (segno di mancata manutenzione o disinteresse).
Le condizioni vanno negoziate caso per caso e formalizzate nel contratto di escrow. Vaghezza è il rischio principale: “rottura contrattuale” senza criteri oggettivi misurabili apre a contenziosi che vanificano lo scopo dell’escrow.
Scelta del depositario: 3 opzioni
Tre tipologie di depositario, con trade-off diversi.
Opzione 1 — Notaio italiano
Pattern tradizionale, ben conosciuto in Italia. Il notaio conserva il codice (oggi tipicamente su supporto digitale firmato) e ne rilascia copia al verificarsi delle condizioni.
Pro: presenza territoriale capillare, conoscenza ben strutturata dal diritto italiano, percezione di affidabilità massima.
Contro: non è specializzato in tecnologia, non verifica che il codice depositato sia effettivamente funzionante, costo medio-alto (1.000-2.500 €/anno).
Quando sceglierlo: progetti dove l’affidabilità formale e la conformità procedurale italiana sono prioritarie (es. fornitori della PA, settori regolamentati).
Opzione 2 — Servizio di escrow specializzato
Aziende dedicate al tech escrow (Iron Mountain, NCC Group, EscrowTech, ecc.). Servizio business-as-usual con processi standardizzati e verifica tecnica della completezza del deposito.
Pro: specializzazione tecnica (verificano che il codice compili, che la documentazione sia completa), processi automatizzati di deposito periodico, costi accessibili (500-1.500 €/anno per progetto medio).
Contro: spesso fornitori esteri (UK, USA), modello contrattuale meno familiare al diritto italiano (anche se compatibile via clausole arbitrali).
Quando sceglierlo: progetti dove la verifica tecnica del deposito è importante e dove l’azienda accetta un contratto internazionale.
Opzione 3 — Piattaforma tecnologica di escrow
Servizi cloud-native più recenti (Codekeeper, EscrowTech online, ecc.) che permettono deposito automatizzato continuo via API integrate con Git. Il codice viene depositato a ogni commit/release in modo automatico.
Pro: deposito sempre aggiornato (no rischio di codice depositato 6 mesi prima della release event), costi competitivi (300-1.000 €/anno).
Contro: maturità contrattuale ancora in evoluzione, applicabilità giuridica italiana variabile, dipendenza dalla disponibilità di una piattaforma online.
Quando sceglierlo: PMI tech-mature con codice gestito in modo strutturato in Git, dove il costo basso e l’automazione bilanciano la giovinezza del provider.
Raccomandazione SynSphere: per la maggior parte delle PMI italiane il servizio di escrow specializzato (opzione 2) è il sweet spot fra costo, affidabilità e specializzazione tecnica. Il notaio resta una scelta valida per progetti con vincoli formali rigorosi.
Costi tipici e modello commerciale
Costo annuale tipico:
- Notaio: 1.000-2.500 €/anno + costi di rilascio (variabili in caso di attivazione)
- Servizio specializzato: 500-1.500 €/anno (forfait standard) + setup iniziale 500-1.000 € una tantum
- Piattaforma online: 300-1.000 €/anno
Chi paga: dipende dalla negoziazione. Pattern frequenti:
- Cliente paga integralmente (la tutela è a suo vantaggio principale)
- 50/50 cliente e partner di sviluppo (riconoscimento che l’escrow è anche una garanzia commerciale per il partner verso il mercato)
- Partner paga integralmente (servizio premium del partner serio, raro)
Costo nel TCO del software: a fronte di un’investimento di 50 k€ in software custom, un escrow da 800 €/anno è meno del 2% del costo annuale di manutenzione totale. Trascurabile rispetto al valore tutelato.
Clausole contrattuali tipo
Sintesi delle clausole standard di un contratto di escrow ben fatto.
- Identificazione del software depositato: nome, versione, scope (incluso modulo X, escluso modulo Y), repository di riferimento.
- Periodicità del deposito: mensile, trimestrale, o ad ogni release. Mensile è il default raccomandato.
- Cosa viene depositato: codice sorgente, documentazione tecnica, build script, certificati, credenziali in forma cifrata. Lista esplicita.
- Verifica del deposito: il depositario verifica completezza (file presenti) e — se è un servizio specializzato — anche funzionalità (il codice compila). Risultato della verifica notificato al cliente.
- Condizioni di rilascio: lista esplicita delle 5 condizioni descritte sopra, con criteri oggettivi e procedure di verifica.
- Procedura di rilascio: chi richiede, quale documentazione fornisce, come il depositario verifica le condizioni, tempi.
- Diritti di utilizzo post-rilascio: il cliente può modificare il codice, far evolvere il software con altro fornitore, ma non può rivenderlo o ridistribuirlo (salvo diversa clausola).
- Confidenzialità: il depositario non può divulgare il codice prima del rilascio, neanche ad autorità (salvo ordine giudiziario).
- Risoluzione delle controversie: arbitrato di norma, foro competente specificato.
- Durata e rinnovo: tipicamente annuale con rinnovo tacito, recesso con preavviso di 90 giorni.
Cosa succede se viene attivato
Caso concreto. Mettiamo che il partner di sviluppo fallisca dopo 3 anni di operatività.
Step 1: il cliente notifica al depositario la condizione di attivazione (cessazione attività), fornendo documentazione (visura camerale aggiornata, certificato fallimentare). Tempi: 1-3 settimane per ottenere i documenti formali.
Step 2: il depositario verifica le condizioni. Se confermate, comunica al partner (o al curatore fallimentare) l’avvio della procedura di rilascio. Il partner ha tipicamente 14-30 giorni per contestare formalmente. In caso di fallimento, il curatore raramente contesta.
Step 3: il depositario rilascia il codice + accessori al cliente. Tempi: 1-2 settimane dopo la verifica completata.
Step 4 (a carico del cliente): trovare un nuovo partner di sviluppo, on-boardarlo sul codice ricevuto, riprendere manutenzione/evolutiva. Tempi tipici: 1-3 mesi per essere operativi al ritmo precedente. È qui che la qualità della documentazione tecnica depositata fa la differenza.
Tempo totale tipico: 2-4 mesi dall’evento di attivazione al ritorno alla piena operatività. Senza escrow, lo stesso scenario potrebbe richiedere 12-24 mesi (con citazione in giudizio per accesso al codice) o essere impossibile.
CTA
L’escrow è una di quelle tutele che costa poco quando va tutto bene e fa la differenza quando va tutto male. Per valutare se ha senso nel tuo caso:
- Calcola il valore del software: usa il framework ROI software su misura: TCO a 3 anni per quantificare cosa perderesti se il software smettesse di funzionare.
- Valuta il partner: applica la checklist 15 domande pre-vendita — la domanda 5 (escrow) è una delle più rivelatrici sulla maturità del partner.
- Negozia la clausola in contratto: pattern raccomandato è inserire la clausola fin dal contratto iniziale di sviluppo, non aggiungerla dopo. Costa meno e segnala serietà sul lungo termine.
Per discutere clausole contrattuali specifiche o per inserire l’escrow in un progetto in corso, scrivici. Sui progetti SynSphere business-critical proponiamo l’escrow come pattern raccomandato dal contratto iniziale.