Développement logiciel client : qui possède le code et comment facturer les droits cédés ?

Une entreprise commande une application métier à un développeur indépendant. Elle finance plusieurs mois de travail, valide les fonctionnalités et règle l’intégralité des factures. Au terme du projet, elle considère naturellement que le logiciel lui appartient.
Le développeur n’a pourtant signé aucune clause de cession de droits. Il a livré l’application, les accès techniques et peut-être même le code source, mais le contrat ne précise ni l’étendue des droits accordés ni la possibilité de modifier, revendre ou réutiliser le logiciel.
Cette situation est beaucoup plus fréquente qu’on ne l’imagine.
Le paiement d’une prestation de développement ne transfère pas automatiquement la propriété intellectuelle du logiciel. En l’absence de clause suffisamment précise, le client peut disposer du droit d’utiliser l’outil pour les besoins prévus au contrat sans pour autant devenir titulaire de tous les droits d’exploitation sur le code.
La différence est structurante. Elle détermine si le client peut confier la maintenance à un autre prestataire, adapter le logiciel à de nouveaux usages, le commercialiser, le déployer auprès de filiales ou empêcher le développeur de réutiliser certaines briques techniques.
Elle influence également la facturation. Le prix du développement rémunère le travail réalisé. Une cession complète de droits peut justifier une rémunération complémentaire, car le développeur abandonne alors une partie de la valeur économique attachée à sa création.
Le logiciel est protégé par le droit d’auteur
Un logiciel original est protégé par le droit d’auteur dès sa création, sans dépôt obligatoire.
La protection concerne notamment le code source, le code objet, certains éléments de conception et les travaux préparatoires lorsqu’ils reflètent des choix propres à l’auteur. Les idées générales, les fonctionnalités abstraites ou les méthodes de fonctionnement ne sont pas protégées de la même manière.
Le titulaire initial des droits est en principe la personne qui a créé le logiciel.
Lorsqu’un développeur indépendant réalise une application pour un client, il reste donc normalement titulaire des droits d’auteur tant qu’il ne les a pas cédés par contrat.
Le fait que le client ait fourni le cahier des charges, décrit les fonctionnalités ou financé le projet ne suffit pas à transférer ces droits.
Il existe une exception importante pour les logiciels créés par un salarié dans l’exercice de ses fonctions ou selon les instructions de son employeur. Les droits patrimoniaux sur ces logiciels sont alors dévolus à l’employeur, sauf disposition contractuelle contraire.
Cette règle ne s’étend pas automatiquement aux freelances, sous-traitants ou dirigeants non salariés. Une société qui fait développer un logiciel par plusieurs indépendants doit donc sécuriser les droits de chacun.
Livrer le code source ne signifie pas céder les droits
La remise du code source et la cession de propriété intellectuelle sont deux opérations différentes.
Le client peut recevoir une copie complète du code afin d’héberger le logiciel, d’en assurer la maintenance ou de garantir la continuité du projet. Cela ne lui donne pas nécessairement le droit de le revendre, de le distribuer librement ou d’autoriser des tiers à l’exploiter pour d’autres finalités.
À l’inverse, un contrat peut céder des droits d’exploitation importants tout en prévoyant que le code source ne sera remis qu’à la livraison finale ou placé sous séquestre.
Le contrat doit donc traiter séparément la propriété intellectuelle et les modalités techniques de remise.
Il peut préciser quels dépôts sont transmis, à quelle date, dans quel état de documentation, avec quels accès et sous réserve du règlement de quelles factures.
Pour le client, disposer des droits sans accès exploitable au code peut être insuffisant. Pour le développeur, remettre tous les accès sans encadrer les droits peut créer une ambiguïté dangereuse.
Cession complète ou simple licence d’utilisation ?
Deux grandes organisations sont possibles.
La première consiste à céder au client les droits d’exploitation sur le logiciel. Celui-ci devient alors titulaire des droits concernés dans les limites définies au contrat.
La seconde consiste à conserver la propriété du code et à accorder au client une licence d’utilisation.
La licence peut être exclusive ou non exclusive, limitée à une entreprise, à un nombre d’utilisateurs, à un territoire ou à une durée donnée. Elle peut autoriser certaines modifications tout en interdisant la revente ou la mise à disposition à des tiers.
Cette solution est particulièrement pertinente lorsque le développeur utilise un socle technique qu’il souhaite réemployer auprès d’autres clients.
Imaginons une agence qui a conçu son propre framework pour développer rapidement des applications métiers. Elle l’utilise pour créer un logiciel spécifique à un client.
Une cession globale et mal rédigée pourrait laisser penser que le client devient propriétaire non seulement des développements spécifiques, mais aussi du framework générique de l’agence.
Pour éviter cette situation, le contrat doit distinguer les éléments préexistants, les composants open source, les outils génériques et les développements créés spécialement pour le client.
Le client peut recevoir des droits étendus sur les éléments spécifiques tout en bénéficiant d’une licence sur les briques préexistantes.
Que doit contenir une clause de cession de droits ?
Une formule générale du type « tous les droits sont cédés au client » est insuffisante pour sécuriser pleinement l’opération.
Le Code de la propriété intellectuelle exige que chacun des droits cédés soit identifié et que le domaine d’exploitation soit délimité selon son étendue, sa destination, son territoire et sa durée.
Le contrat doit donc indiquer si le client peut reproduire le logiciel, le modifier, l’adapter, le traduire, le distribuer, le commercialiser, le louer ou le mettre à disposition de tiers.
Il doit préciser les usages autorisés. Une application conçue pour un usage interne peut-elle ensuite être proposée en SaaS ? Peut-elle être exploitée par toutes les sociétés d’un groupe ? Le client peut-il en vendre des licences à ses propres clients ?
La durée et le territoire doivent également être définis. Pour un logiciel destiné à être exploité mondialement, la cession peut couvrir le monde entier et la durée légale de protection. Mais cette étendue doit être écrite.
Le contrat doit enfin traiter l’exclusivité. Une cession exclusive empêche normalement le développeur d’exploiter lui-même les droits transférés. Une licence non exclusive lui permet de réutiliser certaines briques ou de proposer des solutions proches à d’autres clients.
Le prix du développement couvre-t-il la cession ?
Il est possible de prévoir une rémunération forfaitaire pour la cession des droits portant sur un logiciel. Cela ne signifie pas que la cession doit être gratuite ou implicitement comprise dans n’importe quel devis.
Le prix doit refléter ce que le développeur abandonne.
Une licence limitée à l’utilisation interne du client n’a pas la même valeur qu’une cession mondiale, exclusive, définitive et permettant la commercialisation du logiciel.
Un développeur qui cède tous les droits perd potentiellement la possibilité de réutiliser le produit, de le proposer à d’autres entreprises ou d’en tirer des revenus futurs.
La facturation peut donc distinguer plusieurs éléments : conception et développement, livraison technique, maintenance, licence d’utilisation et cession éventuelle des droits.
Cette séparation améliore la compréhension du client et permet de justifier le prix.
Elle est aussi utile lorsqu’une partie des droits n’est transférée qu’après paiement intégral. Le contrat peut prévoir que le client dispose d’un droit d’utilisation temporaire pendant le projet, puis que la cession devient effective après règlement de toutes les sommes dues.
Peut-on facturer une redevance plutôt qu’un prix forfaitaire ?
Oui, le développeur peut conserver les droits sur le logiciel et facturer une licence récurrente, par exemple mensuelle ou annuelle. Le client paie alors pour le droit d’utiliser l’outil plutôt que pour en devenir propriétaire.
Ce modèle est fréquent lorsque le logiciel peut être mutualisé ou transformé en produit SaaS.
Il peut également être utilisé dans un projet sur mesure lorsque le développeur assure l’hébergement, les mises à jour, la sécurité et la maintenance.
La rémunération peut combiner un prix initial de paramétrage et une redevance d’utilisation.
Ce modèle crée toutefois une relation plus durable. Le contrat doit prévoir les conditions de résiliation, la récupération des données, la réversibilité, l’accès au code et la continuité du service.
Pour le client, une licence récurrente peut sembler moins sécurisante qu’une acquisition complète. Pour le développeur, elle permet de conserver un actif exploitable et de construire des revenus récurrents.
Le bon choix dépend donc du niveau de personnalisation du logiciel et de sa valeur potentielle au-delà du premier client.
Comment traiter les composants open source et les outils tiers ?
Un logiciel sur mesure repose rarement uniquement sur du code créé pour le projet.
Il peut intégrer des bibliothèques open source, des API, des plugins, des services cloud, des bases de données ou des composants appartenant à des tiers.
Le développeur ne peut pas céder au client des droits qu’il ne possède pas.
Le contrat doit donc identifier les principaux composants tiers et préciser les licences applicables. Certaines licences open source autorisent une utilisation commerciale très large. D’autres imposent des obligations de redistribution, de mention ou de mise à disposition du code modifié.
Les services tiers peuvent également être facturés séparément et rester soumis à leurs propres conditions.
Une cession du logiciel ne garantit pas au client qu’il pourra continuer à utiliser indéfiniment toutes les API ou tous les abonnements intégrés.
Le développeur doit éviter de promettre une propriété totale sur un ensemble qui comprend des éléments extérieurs.
Le client doit, de son côté, connaître les dépendances techniques et financières du logiciel qu’il acquiert.
Qui possède le code lorsqu’il y a plusieurs développeurs ?
Un projet peut mobiliser une agence principale, plusieurs freelances, un UX designer, un développeur spécialisé et des salariés du client.
La propriété devient alors fragmentée si aucun contrat ne prévoit la chaîne des droits.
L’agence qui facture le projet au client ne possède pas automatiquement les droits sur le code produit par ses sous-traitants. Elle doit obtenir de leur part les autorisations ou cessions nécessaires avant de pouvoir les transmettre au client.
Le risque apparaît souvent trop tard, lors d’une levée de fonds, d’une cession de l’entreprise ou d’un audit juridique.
L’investisseur demande alors à la société de prouver qu’elle possède réellement la technologie sur laquelle repose son activité.
Une facture de freelance ne suffit pas toujours. Il faut pouvoir présenter des contrats comportant des clauses précises et cohérentes.
Pour un logiciel stratégique, la documentation de cette chaîne de droits est aussi importante que la documentation technique.
Maintenance, correction et évolution : qui peut intervenir ?
Le droit d’utiliser un logiciel implique certains actes nécessaires à son fonctionnement, mais le contrat peut encadrer les modalités de correction et de maintenance.
Un développeur peut se réserver contractuellement certaines interventions ou proposer une maintenance exclusive pendant une période limitée.
Le client doit néanmoins mesurer le risque de dépendance.
S’il ne dispose pas du code, de la documentation ou des droits nécessaires pour faire intervenir un tiers, il peut se retrouver bloqué si le prestataire cesse son activité, augmente fortement ses tarifs ou n’est plus disponible.
Une clause de réversibilité peut prévoir la remise du code, des accès, de la documentation et des informations nécessaires à la reprise.
Le contrat peut aussi organiser un séquestre du code source auprès d’un tiers, avec remise au client dans certaines circonstances précises.
Cette organisation protège le client sans imposer au développeur une cession immédiate et complète.
Sécuriser vos développements sur le plan juridique avec Excilio
La propriété du logiciel ne devrait jamais être discutée uniquement au moment de la livraison. Le choix entre cession et licence influence le prix, l’architecture technique, l’utilisation des composants existants et la stratégie économique du développeur.
Le client doit savoir s’il finance un outil dont il deviendra propriétaire ou s’il achète un droit d’utilisation associé à un service. Le développeur doit déterminer ce qu’il souhaite conserver, réutiliser ou commercialiser ultérieurement.
La rédaction juridique du contrat doit être confiée à un professionnel du droit, mais ses conséquences économiques doivent être anticipées dès le devis : prix du développement, valeur des droits, revenus de licence, maintenance et rentabilité du projet. Excilio accompagne les développeurs, agences et éditeurs de logiciels dans la structuration juridique, comptable et financière de leurs projets. Contactez-nous y compris si vous avez commencé votre projet de développement.


