Contexte de la plainte

Un avocat spécialisé en LegalTech, basé au Costa Rica, a tenté d’alimenter son compte API Anthropic (claude.com) avec un crédit de 5,04 $. En raison du clavier et des paramètres régionaux hispanophones, il a saisi 5.04. La plateforme a immédiatement débité 504,00 $ de sa carte, soit une multiplication par 100 du montant attendu. L’incident s’est produit sans étape intermédiaire de validation, et l’utilisateur a dû initier un chargeback auprès de sa banque, processus estimé à 120 jours avant résolution.

Mécanisme du bug d'internationalisation

Le champ de saisie ne distingue pas le séparateur décimal « . » (anglais) du séparateur « , » (espagnol). Au lieu de déclencher une erreur ou de convertir le texte selon la locale, le système a simplement supprimé le point, transformant la chaîne 5.04 en 504. Cette logique de parsing, dépourvue de validation de type numérique, conduit à une perte de précision de deux décimales et à un facteur de multiplication constant de 100 pour toute valeur contenant un point décimal.

Absence de validation et de confirmation

Le flux de paiement ne propose aucune fenêtre modale de confirmation ni aucun récapitulatif du montant final. L’utilisateur déclenche la transaction d’un seul clic, ce qui rend impossible la détection d’une anomalie avant le débit. Le même défaut pourrait facilement transformer une saisie de 50,00 $ en 5 000,00 $, ou pire, toute valeur décimale en un montant cent fois supérieur, exposant ainsi les développeurs internationaux à un risque financier systémique.

Implications et mesures correctives

Le bug constitue une vulnérabilité financière : il exploite la différence de conventions locales et l’absence de contrôle d’intégrité des données d’entrée. Pour atténuer le risque, Anthropic doit implémenter un parsing sensible à la locale, rejeter les entrées ambiguës et afficher un écran de récapitulatif obligatoires avant toute autorisation de débit. En parallèle, le support automatisé doit être complété par une escalade humaine pour les incidents de facturation, afin d’éviter que les utilisateurs restent bloqués derrière des réponses génériques. Une fois ces correctifs déployés, la probabilité d’une surcharge similaire devrait être éliminée.