IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Citibank transfère 900 millions USD par erreur à des créanciers à cause d'une interface utilisateur de logiciel mal conçue
Un juge statue que ces derniers ont le droit de ne pas renvoyer l'argent

Le , par Michael Guilloux

231PARTAGES

21  0 
Agissant pour le compte d'un client débiteur, Citibank doit effectuer des virements en guise de paiement des intérêts dus par son client à ses créanciers. Ces intérêts s'élèvent à 7,8 millions USD, mais à cause d'une erreur dans la conception de l'interface utilisateur du logiciel utilisé, Citibank vire plutôt 900 millions USD.

Se rendant compte de son erreur le lendemain, la banque essaie de rattraper le tir. Elle contacte les créanciers pour leur expliquer l'erreur et demander de renvoyer l'argent. Certains coopèrent et ramènent l'argent, mais d'autres refusent. Le montant viré correspond en effet à la totalité de ce que le client de Citibank doit à ses créanciers. Ces derniers ont donc cru que leur débiteur avait décidé de régler sa dette plus tôt que prévu. En plus, le client de Citibank traverse de grosses difficultés financières depuis le début de la crise de la Covid-19. Les créanciers n'étaient donc même pas sûrs de pouvoir récupérer leur argent. Alors, la faille de Citibank a permis à ces derniers de récupérer l'argent qu'ils n'auraient peut-être jamais récupéré autrement.

C'est une lourde somme de 500 millions USD que Citibank n'a pas pu récupérer à cause des refus de remboursement. La banque décide alors de saisir la justice pour sommer les créanciers de rembourser le virement fait par erreur. Mais le juge fédéral de New York donne raison à ces derniers.

En principe, en vertu de la loi, une personne qui envoie un virement bancaire par erreur a le droit de récupérer l'argent. Mais une exception est faite lorsqu'un débiteur transfère accidentellement de l'argent à un créancier. Dans ce cas, si le créancier n'a pas connaissance au préalable que le paiement était une erreur, il est libre de le traiter comme un remboursement du prêt. Le juge a statué que ce principe s'applique dans cette affaire, même si Citibank a informé ses créanciers de l'erreur dès le lendemain.

Les défendeurs ont quant à eux noté que les montants qu'ils ont reçus correspondaient exactement aux montants que leur devait leur débiteur, ce qui leur permettait de supposer qu'il s'agissait d'un remboursement anticipé du prêt. Le juge estime également que les créanciers avaient le droit de supposer qu'une banque aussi sophistiquée que Citibank n'enverrait pas une telle somme d'argent par accident. « Croire que Citibank, l'une des institutions financières les plus sophistiquées au monde, avait commis une erreur qui ne s'était jamais produite auparavant, à hauteur de près d'un milliard de dollars - aurait été à la limite de l'irrationnel », écrit le juge dans sa décision. Mais comment cette erreur fatale a-t-elle pu se produire ?

Il s'agit en réalité d'une erreur humaine, qu'on peut sans être sévère imputer à l'interface utilisateur du logiciel de la banque appelé Flexcube. Dans la décision du juge, on peut lire que « sur Flexcube, le moyen le plus simple (ou peut-être le seul) d'exécuter la transaction était de la rentrer dans le système comme si l'on remboursait le prêt dans son intégralité, ce qui déclenche les paiements d'intérêts courus à tous les prêteurs, mais en dirigeant le principal (le capital) vers un compte de compensation ». Le compte de compensation est une sorte de compte temporaire dans lequel des fonds sont conservés pour être transférés « en douceur » sur le compte requis lorsque le transfert ne peut pas être effectué directement. C'est un compte interne qui permet de garantir que l'argent ne quitte pas la banque.

Le travail de saisie de cette transaction dans Flexcube a été confié à un sous-traitant en Inde du nom d'Arokia Raj. Ci-dessous l'interface de Flexcube telle qu'elle se présentait à Raj.


Lors de la saisie d'un paiement, l'employé se voit présenter un menu avec plusieurs cases qui peuvent être cochées ainsi qu'un champ associé dans lequel un numéro de compte peut être saisi. Le guide utilisateur explique que, pour supprimer le paiement d'un montant principal, les champs ci-dessous doivent être définis sur le compte de compensation : FRONT, FUND, et PRINCIPAL - ce qui signifie que l'employé devait cocher ces trois cases et saisir le numéro de compte dans les champs appropriés.

La logique et la simplicité voudraient que si l'on souhaite envoyer le principal sur un compte, saisir le numéro du compte dans le champ principal et cocher la case correspondante soient suffisants. C'est en tout cas de cette manière que Raj l'avait compris. Il pensait que cocher la case « Principal » et entrer le numéro d'un compte de compensation Citibank garantirait que le paiement du principal resterait chez Citibank. Mais il s'est trompé. Pour empêcher le paiement du principal, il fallait faire la même chose pour les deux autres cases. C'est visiblement une erreur de conception, puisque les deux autres personnes qui ont approuvé la transaction ont également pensé que définir le champ « Principal » sur un numéro de compte de compensation interne suffirait pour empêcher le paiement du principal. Mais ce n'était pas la seule erreur de conception.

En procédant aux étapes finales pour approuver les virements, le logiciel a donné un avertissement, mais il ne semblait pas assez précis pour attirer l'attention de Raj sur son erreur. Un message indiquait que des fonds seraient envoyés hors de la banque, en demandant à Raj s'il voulait continuer. Le message n'indiquait toutefois pas le montant qui serait envoyé hors de la banque, ni s'il constituait un montant égal au paiement des intérêts prévu, un montant égal au principal, ou la somme des deux. Et bien évidemment, parce que Raj avait l'intention de virer le paiement des intérêts, il a cliqué sur « Oui ».

Le principal n'est pas allé sur le compte de compensation. Lorsque Raj a effectué un examen de routine le lendemain matin, il a remarqué cette erreur. Citibank a envoyé près de 900 millions de dollars au lieu de 7,8 millions. La banque s'est précipitée pour récupérer les fonds en contactant les créanciers, mais certains ont refusé de renvoyer l'argent, laissant à une dette de 500 millions de dollars envers son client. La banque envisage toutefois de faire appel de la décision du juge.

Source : Décision du juge

Et vous ?

Qu'en pensez-vous ?
Erreur humaine ou de conception d'interface utilisateur ? Pourquoi ?

Voir aussi :

Une interface utilisateur évidente est souvent la meilleure interface utilisateur, concevez des interactions claires plutôt qu'intelligentes et les utilisateurs suivront, conseille Google Design
La Russie a perdu contact avec un satellite lancé le mois dernier à cause d'une mauvaise programmation, une erreur humaine qui a coûté 45 millions $

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Aurelien.Regat-Barrel
Expert éminent sénior https://www.developpez.com
Le 18/02/2021 à 15:49
Ô Raj ! ô désespoir ! ô IHM ennemie !
4  0 
Avatar de grunk
Modérateur https://www.developpez.com
Le 18/02/2021 à 16:29
Faut dire que particulièrement dans le bancaire , il ont parfois des progiciel vieux de plusieurs dizaine d'année et ce que ce qui nous semble logique maintenant ne l'était sans doute pas au moment de la conception des IHM . Sans parler des évolutions importantes dans les IHM depuis ...
2  0 
Avatar de walfrat
Membre expérimenté https://www.developpez.com
Le 18/02/2021 à 17:47
Heu ... sérieux je suis pas fan des banques et pas un professionnel de la finance mais qui avale ça ?

« Croire que Citibank, l'une des institutions financières les plus sophistiquées au monde, avait commis une erreur qui ne s'était jamais produite auparavant, à hauteur de près d'un milliard de dollars - aurait été à la limite de l'irrationnel », écrit le juge dans sa décision. Mais comment cette erreur fatale a-t-elle pu se produire ?
Qu'une banque décide d'un coup de rembourser ses créanciers en avance sans les contacter ? Et que des créanciers, professionnels du monde de la finance, pensent qu'en temps difficile pour la finance c'est normal ?

Je ne peux pas m'empêcher de trouver ça bancal. A la rigueur qu'ils se contentent de voir la somme et de ne pas se poser de question, mais qu'ils se posent la question et qu'ils y répondent par "nan c'est normal", j'y crois pas trop
1  1