Echec d’une prestation d’intégration d’un logiciel : le prestataire est tenu d’atteindre un résultat, même en cas de recours à la méthode « agile ».

Les prestations d’intégration de logiciel peuvent se révéler dans certains cas très périlleuses et il est prudent d’établir un cahier des charges précis, listant les fonctionnalités attendues, afin de constituer un référentiel du résultat à atteindre. Si ces fonctionnalités sont finalement absentes de la solution intégrées ou supposent des développements complémentaires, non prévues initialement, alors le prestataire peut engager sa responsabilité sur le plan contractuel.

Cette solution - classique - a été rappelée par un arrêt de la Cour d’appel de Rennes du 24 septembre dernier. Mais la décision est également intéressante en ce qu’elle cherche à placer le curseur des responsabilités entre le prestataire et son client.

L’affaire opposait un prestataire informatique, Isilog, à son client Kalyst, elle-même spécialisée dans le domaine des logiciels. Isilog est une société spécialisée dans l’édition de progiciels et Kalyst avait fait appel à elle en 2019 afin de procéder au remplacement de son outil de « ticketing », qui permet de gérer et résoudre les dysfonctionnements soulevés par ses propres clients, utilisateurs d’une solution de son cru.

Un audit préalable des besoins avait été réalisé par Isilog, qui avait ensuite formulé une proposition commerciale sur cette base, consistant dans la « mise en place, l’intégration et la maintenance d’une solution de gestion des services informatiques », pour un montant total de 83.400 euros TTC.

Alors qu’une facture d’acompte avait été éditée et payée en amont du début des prestations, les factures suivantes n’avaient pas été réglées en totalité, le client Kalyst invoquant des problèmes liés au fonctionnement de la nouvelle solution de ticketing mise en place par Isilog pour s’opposer à leur paiement.

Le litige avait été porté en justice et, par un jugement du 1er décembre 2022, le Tribunal de commerce de Nantes avait condamné Kalyst à régler la facture du prestataire. En appel, toutefois, la Cour n’a pas totalement apprécié le différend sur les mêmes bases. En effet, les juges du second degré ont considéré que le prestataire avait manqué à ses obligations contractuelles, en particulier celle consistant à assurer le bon fonctionnement de la solution objet des prestations d’intégration.

L’arrêt rappelle ainsi que la société Isilog était tenue d’adapter le logiciel de ticketing aux besoins et contraintes de sa cliente, selon les termes d’un cahier des charges de 90 pages. Or il est apparu qu’Isilog n’avait pas été en mesure de répondre de manière satisfaisante aux termes de cahier des charges. Il a ainsi été constaté par un huissier de justice que, lors d’une session de formation assurée par Isilog, certains modules de la solution ne fonctionnaient pas. En septembre 2020, un « grave incident » était même survenu, le système étant totalement hors d’usage et supposant une réinstallation totale.

A la suite de ces dysfonctionnements, Kalyst avait dressé la liste de toutes les fonctionnalités finalement absentes de la solution et proposant une option : soit la finalisation du travail, soit une « sortie équitable ». En réponse, Isilog avait soutenu que certaines fonctionnalités pouvaient être intégrées au logiciel mais supposaient des « adaptations sous forme de paramétrage », lesquelles seraient facturées en plus, selon la méthode dite « agile ». Le client s’était opposé à cette solution.

La Cour d’appel lui donne raison. Selon l’arrêt, « le constat d’huissier et les échanges qui ont suivi attestent de l’incapacité de la société Isilog de fournir les prestations contractuellement prévues et qui devaient finaliser le système qu’elle s’était engagée à mettre en place. » L’arrêt retient donc ici, même s’il ne le dit pas expressément, une obligation de résultat à la charge du prestataire.

L’intensité de l’obligation n’est pas amoindrie par le recours à la méthode « agile », qui suppose des échanges constants entre le client et le prestataire, et des développements au fil de l’eau. L’arrêt retient en effet que toutes les fonctionnalités proposées au contrat, en amont du projet, devaient être proposées :

« Aucune clause du contrat ne prévoit que les prestations qui y sont prévues puissent s’avérer incomplètes et doivent être complétées ».

La responsabilité du prestataire est ainsi engagée.

En revanche, le client ne sort pas indemne du différend. En effet, la Cour considère que la société Kalyst était en partie responsable des dysfonctionnements. D’une part, la Cour considère qu’en l’absence de mesure d’expertise, elle n’est pas en mesure de déterminer l’imputabilité exact des dysfonctionnements ; d’autre part, Kalyst elle-même avait évoqué une « responsabilité conjointe » dans certains de ses courriers, de sorte qu’elle ne pouvait plus, au stade de la procédure, placer l’exclusivité de la responsabilité de l’échec sur le seul prestataire.

En définitive, la Cour estime que le contrat ne pouvait pas faire l’objet d’une résolution, c’est-à-dire d’une annulation totale, et que chaque partie devait supporter financièrement la moitié du coût des prestations prévues. Les juges sont même allés jusqu’à refuser de prononcer une indemnité au titre de l’article 700 du Code de procédure civile. Personne n’a donc gagné.

Retenons trois leçons de cette décision : il est indispensable de constituer un référentiel des prestations attendues et, au terme du contrat, le logiciel doit présenter toutes les fonctionnalités convenues ; sur un plan probatoire, une expertise est à tout le moins très utile pour tenter de déterminer les responsabilités en cause ; enfin, il vaut mieux éviter de reconnaître des torts par écrit…