
Apple et Goldman ont perdu des milliers de contestations dans un état dont personne ne soupçonnait l'existence. Coût : 89 millions de dollars.
En juin 2020, Apple a ajouté un formulaire au parcours de contestation de l'Apple Card. Une petite chose. Avant le changement, vous appuyiez sur « Signaler un problème », vous vous retrouviez dans un fil de discussion avec Goldman Sachs, et votre contestation était traitée. Après le changement, vous deviez remplir un second formulaire une fois la première soumission effectuée.
Voici ce que cette petite chose a produit. Si vous signaliez votre problème dans Messages mais ne remplissiez jamais le second formulaire, le système décidait que votre contestation était incomplète. Elle n'était jamais transmise à Goldman. Personne ne l'examinait. Aucune lettre d'accusé de réception n'était jamais envoyée. Et en vertu de la Regulation Z, Section 1026.13, bon nombre de ces premiers messages étaient des avis d'erreur de facturation valides — le type d'avis qu'un créancier est légalement tenu d'accuser réception sous 30 jours et de résoudre en deux cycles de facturation.
Des milliers d'entre eux sont simplement restés là. Soumis, mais acheminés nulle part. En octobre 2024, le Consumer Financial Protection Bureau a ordonné à Apple et à Goldman Sachs de payer 89 millions de dollars pour cela, et a interdit à Goldman de lancer une nouvelle carte de crédit sans un plan de conformité crédible. J'ai passé une bonne partie de ma carrière au sein des opérations de contestation chez un émetteur de cartes, et lorsque j'ai lu cette décision, je n'ai pas vu de la négligence. J'ai vu une machine à états avec un trou dedans, un trou que chaque banque que je connais possède quelque part dans son propre flux de travail en ce moment même.
Voilà ce dont je veux vous convaincre dans cet essai : votre système de contestation comporte des états morts que vous n'avez pas encore découverts, et la raison pour laquelle vous ne les avez pas trouvés est que vous les avez testés au lieu de prouver qu'ils ne peuvent pas exister. La solution est une technique que la plupart des banquiers ne se sont jamais vu proposer — la vérification formelle — et c'est pourquoi nous avons bâti la pratique de vérification de conformité financière de Veriprajna autour d'elle.
Le bug à 89 millions de dollars était un état, pas une erreur

Soyons précis sur ce qui a mal tourné, car la précision est tout l'enjeu.
Le flux de travail Apple-Goldman comportait un état atteignable que l'on pouvait décrire en une ligne : la contestation se trouvait dans l'état FormA_Submitted AND FormB_Pending. Depuis cet état, il n'existait aucune transition vers Investigation_Initiated. Aucune. Un consommateur qui s'arrêtait après le premier message y demeurait indéfiniment — un accusé de réception lui étant dû par la loi, rien ne lui étant dû selon la logique même du système.
Les contestations n'étaient pas perdues. Elles se trouvaient exactement là où le système les avait mises. On n'avait simplement jamais indiqué au système qu'« ici » était un endroit où une contestation pouvait mourir.
Lorsque mon équipe a examiné cela pour la première fois sur un tableau blanc, un ingénieur a dit la chose évidente — que ce n'était qu'un bug, du genre que nous aurions détecté lors des tests. Je lui ai demandé comment. Le flux Apple-Goldman comptait un point d'intégration entre deux systèmes. La plupart des grands émetteurs avec lesquels j'ai travaillé ont de 10 à 15 systèmes qui touchent une seule contestation — le portail Visa VROL, le GCMS de Mastercard, la plateforme de gestion des dossiers, le grand livre bancaire central, le système de génération de lettres, le flux du bureau de crédit, le moteur de crédit provisoire, et une poignée de files d'attente de routage internes. Chaque changement d'API, chaque intégration de partenaire, chaque nouvelle fonctionnalité de produit ouvre de nouveaux chemins à travers ce labyrinthe.
Les tests vérifient les chemins que vous avez pensé à écrire. C'est, par définition, une liste des défaillances que vous avez déjà imaginées. L'état mort d'Apple-Goldman était une défaillance que personne n'avait imaginée, ce qui explique précisément pourquoi aucun test ne le couvrait. Vous ne pouvez pas vous sortir par les tests d'un problème que vous ne pouvez pas concevoir. Ce n'est pas une défaillance de processus. C'est un plafond mathématique.
Pourquoi ne pouvions-nous pas simplement écrire plus de tests ?
J'ai perdu un après-midi sur cette dispute, alors laissez-moi vous épargner l'après-midi.
La riposte de l'ingénieur était raisonnable : écrire davantage de cas de test. Couvrir plus de chemins. Augmenter la couverture. Alors je l'ai dessiné. Un flux de travail de contestation n'est pas une ligne, c'est un graphe — des branches pour le type de contestation, pour le réseau, pour savoir si un crédit provisoire a été émis, pour déterminer quel régime de délais s'applique, pour savoir si un système partenaire a accusé réception du transfert. Chaque branche multiplie la précédente. Un flux de travail comportant quelques dizaines de points de décision a plus d'états atteignables que vous n'écrirez jamais de tests, et les dangereux sont les combinaisons que personne ne s'assoit pour énumérer parce qu'elles paraissent absurdes jusqu'à ce qu'elles se produisent.
Il a continué un moment. Puis j'ai dessiné l'explosion combinatoire — le nombre d'états qui double, puis double encore — et il s'est arrêté. On ne surpasse pas un espace d'états par les tests. Vous épuisez vos pièces avant d'épuiser les états.
C'est le moment où j'ai commencé à lire sérieusement sur les méthodes formelles, et la technique qui compte ici se décrit simplement. Un vérificateur de modèle prend un modèle de votre flux de travail et un invariant — une propriété qui doit toujours être vérifiée — puis il explore chaque état atteignable, de façon exhaustive, à la recherche d'un état où la propriété est enfreinte. Écrivez l'invariant « chaque contestation soumise atteint l'accusé de réception dans les 30 jours », pointez le vérificateur sur le flux Apple-Goldman, et il renvoie l'état mort en quelques secondes, avec le chemin exact, étape par étape, qui vous y conduit. Des outils comme TLA+ font cela pour les systèmes distribués ; la même logique s'applique parfaitement à un flux de travail réglementé assorti de délais stricts.
Les tests échantillonnent les chemins que vous avez imaginés. Un vérificateur de modèle visite ceux que vous n'aviez pas imaginés.
La collision de calendriers dont personne n'est propriétaire

La partie qui empêche les responsables de contestation de dormir est pire qu'un simple état mort.
Une seule contestation de carte à double réseau peut déclencher trois ou quatre horloges réglementaires et de réseau en même temps. La Reg Z exige un accusé de réception écrit sous 30 jours et une résolution en deux cycles de facturation, plafonnée à 90. La Reg E, qui régit les erreurs de débit et de transfert électronique, fonctionne selon un calendrier complètement différent — crédit provisoire et résolution sous 10 jours ouvrables, avec une prolongation de 45 jours calendaires. Visa Claims Resolution traite les dossiers d'Allocation jusqu'à 70 jours et les dossiers de Collaboration jusqu'à 100. Le cadre de contestation de Mastercard fonctionne de 45 à 120 jours selon le cycle, et le secteur a décrit son déploiement comme encore plus difficile à absorber que celui de Visa.
Lorsque ces régimes entrent en collision sur une seule contestation, la conformité se résume à celui du service des contestations qui se souvient, ce matin-là, du délai qui s'applique. J'ai vu un analyste chevronné appliquer les délais de la Reg E à une erreur de facturation relevant de la Reg Z parce que les deux se confondent sous la pression du volume — et cette confusion précise est l'une des infractions que recherchent les examinateurs du CFPB. Citizens Bank a été citée, en partie, pour avoir rejeté des avis d'erreur de facturation faute d'une déclaration sous serment. Les délais ne sont pas souples. Ils sont binaires. Soit vous avez accusé réception dans les 30 jours, soit non.
Et c'est la raison discrète pour laquelle la vérification formelle convient à la conformité financière mieux qu'à presque tout autre domaine auquel je puisse penser : les règles sont déjà des mathématiques. Trente jours n'est pas une question d'appréciation. « Crédit provisoire sous 10 jours ouvrables » n'est pas une impression. Ce sont des contraintes temporelles sur une machine à états, et la logique temporelle a été conçue pour prouver exactement ce genre de propriété — qu'à travers chaque chemin possible qu'une contestation peut emprunter, aucune horloge n'est jamais dépassée.
J'ai d'abord construit la mauvaise chose
Je veux vous parler de la version que nous avons livrée et qui ne fonctionnait pas, parce que c'est la version que la majeure partie du marché vend encore.
Notre premier réflexe fut la surveillance. Construire un système qui suit chaque contestation, surveille les délais et s'allume en rouge lorsqu'une contestation est sur le point d'être enfreinte. Des tableaux de bord. Des alertes. Une file d'attente de crédit provisoire à rebours — 9 jours, 23 heures, top départ. La démonstration était superbe. J'en étais fier.
Puis je l'ai montré à une responsable de la conformité dans une banque pilote, et elle m'a gratifié d'un haussement d'épaules poli. Il m'a fallu quelques jours pour comprendre ce haussement d'épaules. Un moniteur vous indique qu'une contestation est en train de mourir pendant qu'elle meurt. C'est un détecteur de fumée. Il suppose que la contestation est bien entrée dans le système pour être suivie en premier lieu — ce qui est précisément l'hypothèse qu'Apple-Goldman a brisée, car ces contestations n'étaient pas suivies du tout ; elles se trouvaient dans un état que le système de suivi ne savait pas surveiller. La surveillance, c'est un aveu après coup. C'est la banque qui découvre sa propre défaillance un peu plus tôt que l'examinateur ne l'aurait fait. Cela a une certaine valeur, mais ce n'était pas ce dont elle avait besoin pour le présenter à son conseil d'administration.
La surveillance vous procure la défaillance quelques jours avant l'examinateur. Elle ne vous procure jamais la défaillance qui ne peut pas se produire.
Ce haussement d'épaules nous a coûté une refonte, et ce fut la meilleure chose qui soit arrivée au produit. Le marché regorge de la chose que j'avais construite en premier. FINBOA suit les délais de la Reg E et automatise le crédit provisoire ; il est bon à cela. Quavo automatise le traitement des contestations et affiche de vrais chiffres — une coopérative de crédit a atteint un taux d'automatisation de 87 % en un mois. FIS traite les rétrofacturations via les portails des réseaux. Chacun d'eux automatise ou surveille les contestations qui entrent dans le système. Aucun d'eux ne prouve qu'une contestation ne peut pas être perdue avant d'y entrer.
Qui d'autre prouve réellement quoi que ce soit ?
Après la refonte, je suis parti à la recherche de qui d'autre prouvait les choses au lieu de les surveiller, et la réponse est presque personne.
Le seul nom sérieux est Imandra. Ils font de la vraie vérification formelle dans les services financiers — des preuves mathématiques de correction — et leur clientèle inclut Goldman Sachs elle-même. Mais leur univers, ce sont les marchés de capitaux : la logique d'appariement des bourses, les protocoles de trading. La conformité grand public, la Reg Z, les flux de contestation — ce n'est pas là qu'ils sont orientés, et avec environ 5 millions de dollars de financement total, ils ne s'y sont pas orientés.
Pendant ce temps, les capitaux affluent vers l'autre coin de la conformité. Bretton AI, anciennement Greenlite, a levé une série B de 75 millions de dollars en février 2026 et sert des banques réglementées par l'OCC — pour le KYC, la lutte contre le blanchiment d'argent et l'intégration des clients. SymphonyAI's La plateforme Sensa a réduit de 91,8 % les faux positifs dans le filtrage des sanctions d'une banque espagnole. Alloy orchestre l'identité au sein de plus de 800 institutions. De l'argent réel, de l'ingénierie réelle — le tout visant la criminalité financière et l'intégration des clients, rien de tout cela ne portant sur la question de savoir si votre résolution de contestation peut enfreindre une réglementation.
Voilà le fossé, et il n'est pas étroit. Les acteurs les plus proches du travail de contestation (FINBOA, Quavo) l'automatisent sans le vérifier. Le seul vérificateur (Imandra) opère sur un marché différent. Combinez ces deux constats et vous obtenez un coin du terrain dans lequel, pour autant que je puisse en juger, personne ne se tient : la vérification formelle orientée vers la conformité des contestations des consommateurs. C'est le coin dans lequel nous sommes entrés.
La phrase qui a reconstruit notre argumentaire
Ce qui a finalement rendu la valeur tangible pour moi n'est pas venu d'un ingénieur. C'est venu d'une ancienne examinatrice avec qui je me suis entretenu.
Je lui ai demandé ce qu'elle voulait réellement dans la salle lors d'un examen d'erreur de facturation. Elle n'a pas dit « de bons tableaux de bord ». Elle a dit, en substance, qu'elle voulait savoir que la banque pouvait démontrer que son processus ne pouvait pas manquer le délai — non pas qu'il ne le manquait généralement pas. Toute la posture bascule sur ce seul mot. La diapositive d'attestation au conseil d'administration qui indique « nous l'avons testé et il a réussi » est un aveu que vous n'avez vérifié que les chemins auxquels vous avez pensé. Une preuve affirme quelque chose de catégoriquement plus fort : à travers chaque chemin que le flux de travail autorise, l'invariant est vérifié.
Et les régulateurs s'acheminent discrètement vers cela de leur propre chef. L'OCC Bulletin 2025-26 a précisé que toute méthode quantitative influençant matériellement une décision de risque ou de conformité est un « modèle » — et le bulletin est explicite : la sophistication de l'IA ou de l'apprentissage automatique ne l'exempte pas de validation. Lisez cela attentivement : un routeur de contestation automatisé est désormais examinable en tant que modèle, et non plus seulement en tant qu'outil opérationnel. Et la vérification formelle est la plus solide validation de modèle qui existe. Elle n'échantillonne pas le comportement. Elle prouve la propriété.
De l'autre côté de l'Atlantique, le Règlement européen sur l'IA (EU AI Act) classe l'IA de crédit et d'évaluation de la solvabilité comme à haut risque, avec un délai de conformité impératif fixé au 2 août 2026, et une portée extraterritoriale qui englobe les fournisseurs américains desservant le marché de l'UE. La classification à haut risque signifie que vous devez démontrer des propriétés système prouvables — exactitude, robustesse, supervision. C'est, encore une fois, exactement ce qu'une preuve fournit et qu'un test ne peut pas fournir.
N'est-ce pas exagéré pour une file d'attente de contestations ?
On me pose sans cesse une version de cette question, alors laissez-moi aborder de front les trois objections honnêtes.
La première est le coût. La vérification a des airs de projet scientifique, et l'alternative du conseil — une firme du Big 4 qui repense votre processus — coûte de 500 000 dollars à plusieurs millions et vous remet un processus repensé que personne n'a vérifié mathématiquement. Mettez cela en balance avec le risque. Apple-Goldman, c'était 89 millions de dollars. L'ordonnance par consentement de Wells Fargo, pour de multiples défaillances y compris le traitement des contestations, s'est élevée à 3,7 milliards de dollars. Vous n'achetez pas la vérification face au coût d'une licence SaaS ; vous l'achetez face à la queue de distribution.
La deuxième est « notre volume ne pose pas de problème ». Les rétrofacturations mondiales devraient atteindre 337 millions par an d'ici 2026 et grimper de 24 % jusqu'en 2028, avec l'arrivée de types de contestations entièrement nouveaux — y compris des contestations émanant d'agents d'IA autonomes achetant des choses que les clients n'ont jamais approuvées. Le service manuel qui « s'en charge » aujourd'hui est le même service où 42 % des institutions font encore tourner la conformité sur des processus manuels, selon le rapport du T1 2026 de Wolters Kluwer. Un volume croissant combiné à la mémoire manuelle, voilà comment un état mort passe inaperçu pendant quatre ans.
La troisième est « nous avons réussi notre dernier examen ». Apple et Goldman aussi, vraisemblablement, jusqu'au moment où ils ont échoué. Réussir un examen signifie qu'un examinateur a échantillonné vos chemins et n'a pas touché le chemin défaillant. C'est le même problème d'échantillonnage que les tests, arborant un insigne différent.
Ce que je crois désormais
Je suis entré dans les opérations de contestation en pensant que la conformité était une discipline de diligence — des gens attentifs, de bonnes listes de contrôle, des délais respectés. J'en suis ressorti convaincu que la diligence est le mauvais outil pour un problème de cette nature. Vous ne pouvez pas être assez diligent pour couvrir un espace d'états qui double chaque fois que quelqu'un livre une fonctionnalité. Les gens attentifs d'Apple et de Goldman n'ont pas perdu ces contestations par négligence. Ils les ont perdues à cause d'un état que personne n'avait dessiné.
Alors la question que je poserais à quiconque dirige un service de contestations n'est pas « vos gens sont-ils attentifs ». Elle est plus étroite et plus froide que cela : pouvez-vous dessiner l'état dans lequel votre prochaine contestation abandonnée va mourir ? Si vous ne pouvez pas le dessiner, vous ne pouvez pas le tester, et si vous ne pouvez pas le tester, la seule chose honnête qui reste est de prouver qu'il ne peut pas exister. Voilà le travail — prouver que vos flux de travail de contestation ne peuvent pas enfreindre la Reg Z, la Reg E et les délais des réseaux, sur chaque chemin, avant qu'un examinateur ne trouve celui que vous avez manqué. Si c'est l'assurance dont vous avez réellement besoin, c'est ce que nous construisons.
Apple comptait des milliers d'ingénieurs et pourtant un état mort. Les ingénieurs n'ont jamais été la variable manquante. Une preuve l'était.


