Diagramma del flusso di contestazioni con un nodo ambra isolato senza uscita — uno stato morto.
FintechArtificial IntelligenceCompliance

Apple e Goldman hanno perso migliaia di contestazioni in uno stato che nessuno sapeva esistesse. È costato 89 milioni di dollari.

Ashutosh SinghalAshutosh Singhal7 giugno 202613 min

A giugno 2020, Apple ha aggiunto un modulo al flusso di contestazione della Apple Card. Una piccola cosa. Prima della modifica, toccavi "Segnala un problema", finivi in una conversazione di Messaggi con Goldman Sachs e la tua contestazione andava a buon fine. Dopo la modifica, dovevi compilare un secondo modulo una volta inviata la prima richiesta.

Ecco cosa ha provocato quella piccola cosa. Se segnalavi il tuo problema in Messaggi ma non completavi mai il secondo modulo, il sistema decideva che la tua contestazione era incompleta. Non veniva mai inviata a Goldman. Nessuno la esaminava. Nessuna lettera di conferma veniva mai spedita. E ai sensi del Regolamento Z, Sezione 1026.13, molti di quei primi messaggi erano validi Avvisi di Errore di Fatturazione — il tipo che un creditore è legalmente tenuto a confermare entro 30 giorni e a risolvere entro due cicli di fatturazione.

Migliaia di essi restavano lì fermi. Inviati, ma instradati da nessuna parte. A ottobre 2024, il Consumer Financial Protection Bureau ha ordinato ad Apple e Goldman Sachs di pagare 89 milioni di dollari per questo, e ha vietato a Goldman di lanciare una nuova carta di credito senza un piano di conformità credibile. Ho trascorso buona parte della mia carriera all'interno delle operazioni sulle contestazioni presso un emittente di carte, e quando ho letto quell'ordinanza non ho visto negligenza. Ho visto una macchina a stati con un buco, e un buco che ogni banca che conosco ha da qualche parte nel proprio flusso di lavoro proprio ora.

Questo è ciò di cui voglio convincerti in questo saggio: il tuo sistema di gestione delle contestazioni ha stati morti che non hai ancora scoperto, e il motivo per cui non li hai scoperti è che li hai testati invece di dimostrare che non possono esistere. La soluzione è una tecnica che alla maggior parte dei banchieri non è mai stata offerta — la verifica formale — ed è il motivo per cui abbiamo costruito la practice di verifica della conformità finanziaria di Veriprajna attorno ad essa.

Il bug da 89 milioni di dollari era uno stato, non un errore

Diagramma della macchina a stati: lo stato morto FormA_Submitted AND FormB_Pending senza alcuna transizione verso l'indagine.

Lasciami essere preciso su cosa è andato storto, perché la precisione è tutto il punto.

Il flusso di lavoro Apple-Goldman aveva uno stato raggiungibile che potevi descrivere in una riga: la contestazione si trovava in FormA_Submitted AND FormB_Pending. Da quello stato, non c'era alcuna transizione verso Investigation_Initiated. Nessuna. Un consumatore che si fermava dopo il primo messaggio viveva lì permanentemente — con diritto a una conferma per legge, con diritto a niente secondo la logica stessa del sistema.

Le contestazioni non erano perse. Erano esattamente dove il sistema le aveva messe. Al sistema semplicemente non era mai stato detto che "qui" era un luogo in cui una contestazione poteva morire.

Quando il mio team ha analizzato per la prima volta questo caso su una lavagna, un ingegnere ha detto la cosa ovvia — che era solo un bug, del tipo che avremmo intercettato nei test. Gli ho chiesto come. Il flusso Apple-Goldman era un solo punto di integrazione tra due sistemi. La maggior parte dei grandi emittenti con cui ho lavorato ha da 10 a 15 sistemi che toccano una singola contestazione — il portale Visa VROL, il GCMS di Mastercard, la piattaforma di gestione dei casi, il libro mastro del core banking, il sistema di generazione delle lettere, il feed dell'ufficio di credito, il motore del credito provvisorio e una manciata di code di instradamento interne. Ogni modifica di API, ogni integrazione con un partner, ogni nuova funzionalità di prodotto apre nuovi percorsi attraverso quel labirinto.

Il test verifica i percorsi che hai pensato di mettere per iscritto. È, per definizione, una lista dei fallimenti che hai già immaginato. Lo stato morto di Apple-Goldman era un fallimento che nessuno aveva immaginato, ed è proprio per questo che nessun test lo copriva. Non puoi risolvere con i test un problema che non riesci a immaginare. Non è un fallimento di processo. È un tetto matematico.

Perché non potevamo semplicemente scrivere più test?

Ho perso un pomeriggio su questa discussione, quindi lascia che ti risparmi il pomeriggio.

L'obiezione dell'ingegnere era ragionevole: scrivi più casi di test. Copri più percorsi. Aumenta la copertura. Così l'ho disegnato. Un flusso di lavoro delle contestazioni non è una linea, è un grafo — ramificazioni per tipo di contestazione, per rete, per l'eventuale emissione di credito provvisorio, per quale regime di scadenze si applica, per l'eventuale conferma dello scambio da parte di un sistema partner. Ogni ramo moltiplica il precedente. Un flusso di lavoro con qualche decina di punti decisionali ha più stati raggiungibili di quanti test tu possa mai scrivere, e quelli pericolosi sono le combinazioni che nessuno si siede ed enumera perché sembrano assurde finché non accadono.

Ha continuato ancora per un po'. Poi ho disegnato l'esplosione combinatoria — il numero di stati che raddoppia, poi raddoppia di nuovo — e si è fermato. Non puoi battere con i test uno spazio di stati. Finisci le monetine prima di finire gli stati.

È il momento in cui ho iniziato a leggere seriamente sui metodi formali, e la tecnica che conta qui ha una descrizione semplice. Un model checker prende un modello del tuo flusso di lavoro e un invariante — una proprietà che deve sempre valere — e poi esplora ogni stato raggiungibile, in modo esaustivo, cercandone uno in cui la proprietà si infrange. Scrivi l'invariante come "ogni contestazione inviata raggiunge la conferma entro 30 giorni", punta il checker sul flusso Apple-Goldman, e restituisce lo stato morto in pochi secondi, insieme all'esatto percorso passo dopo passo che ti ci porta. Strumenti come TLA+ fanno questo per i sistemi distribuiti; la stessa logica si applica in modo pulito a un flusso di lavoro regolamentato con scadenze rigide.

Il test campiona i percorsi che hai immaginato. Un model checker visita quelli che non hai immaginato.

La collisione di scadenze di cui nessuno è responsabile

Quattro barre temporali impilate che mostrano le scadenze di Reg Z, Reg E, Visa VCR e Mastercard in collisione su una singola contestazione.

La parte che tiene svegli di notte i responsabili delle contestazioni è peggiore di un singolo stato morto.

Una singola contestazione su una carta a doppia rete può far partire tre o quattro orologi regolamentari e di rete contemporaneamente. Reg Z vuole una conferma scritta in 30 giorni e la risoluzione entro due cicli di fatturazione, con un limite massimo di 90. Reg E, che disciplina gli errori su addebiti e trasferimenti elettronici, funziona secondo una tempistica completamente diversa — credito provvisorio e risoluzione entro 10 giorni lavorativi, con una proroga di 45 giorni di calendario. Visa Claims Resolution gestisce i casi di Allocation fino a 70 giorni e i casi di Collaboration fino a 100. Il framework di contestazione di Mastercard va da 45 a 120 a seconda del ciclo, e il settore ha descritto la sua introduzione come ancora più difficile da assorbire di quella di Visa.

Quando questi regimi si scontrano su una singola contestazione, la conformità si riduce a chiunque al banco delle contestazioni ricordi quale scadenza governa quella mattina. Ho visto un analista senior applicare le tempistiche di Reg E a un errore di fatturazione di Reg Z perché le due cose si confondono sotto il carico di volume — e proprio quella confusione è una delle violazioni che gli esaminatori del CFPB cercano. Citizens Bank è stata sanzionata, in parte, per aver respinto avvisi di errore di fatturazione a causa di una dichiarazione giurata mancante. Le scadenze non sono flessibili. Sono binarie. O hai confermato entro 30 giorni oppure no.

Ed è questo il motivo silenzioso per cui la verifica formale si adatta alla conformità finanziaria meglio di quasi qualsiasi altro dominio a cui riesca a pensare: le regole sono già matematica. Trenta giorni non è una questione di giudizio. "Credito provvisorio entro 10 giorni lavorativi" non è una sensazione. Sono vincoli temporali su una macchina a stati, e la logica temporale è stata costruita per dimostrare esattamente questo tipo di proprietà — che su ogni percorso possibile che una contestazione può prendere, nessun orologio viene mai fatto saltare.

Ho costruito prima la cosa sbagliata

Voglio parlarti della versione che abbiamo rilasciato e che non funzionava, perché è la versione che gran parte del mercato sta ancora vendendo.

Il nostro primo istinto è stato il monitoraggio. Costruire un sistema che traccia ogni contestazione, sorveglia le scadenze e si accende di rosso quando una sta per essere violata. Dashboard. Avvisi. Una coda di credito provvisorio con il conto alla rovescia — 9 giorni, 23 ore, via. La demo era bellissima. Ne ero orgoglioso.

Poi l'ho mostrato a una responsabile della conformità di una banca pilota, e lei mi ha rivolto una cortese scrollata di spalle. Mi ci sono voluti alcuni giorni per capire quella scrollata. Un monitor ti dice che una contestazione sta morendo mentre muore. È un allarme antincendio. Presuppone che la contestazione sia effettivamente entrata nel sistema per essere tracciata in primo luogo — che è l'unico presupposto che Apple-Goldman ha frantumato, perché quelle contestazioni non venivano mai tracciate affatto; erano in uno stato che il tracker non sapeva di dover sorvegliare. Il monitoraggio è una confessione dopo il fatto. È la banca che scopre il proprio fallimento un po' prima di quanto avrebbe fatto l'esaminatore. Vale qualcosa, ma non è ciò di cui lei aveva bisogno per presentarlo al suo consiglio di amministrazione.

Il monitoraggio ti compra il fallimento qualche giorno prima dell'esaminatore. Non ti compra mai il fallimento che non può accadere.

Quella scrollata di spalle ci è costata una ricostruzione, ed è stata la cosa migliore che sia capitata al prodotto. Il mercato è affollato dalla cosa che ho costruito per prima. FINBOA traccia le scadenze di Reg E e automatizza il credito provvisorio; è brava a farlo. Quavo automatizza l'elaborazione delle contestazioni e pubblica numeri reali — una cooperativa di credito ha raggiunto un tasso di automazione dell'87% in un mese. FIS elabora i chargeback attraverso i portali di rete. Ognuna di esse automatizza o sorveglia le contestazioni che entrano nel sistema. Nessuna di esse dimostra che una contestazione non possa andare persa prima di entrare.

Chi altro sta davvero dimostrando qualcosa?

Dopo la ricostruzione sono andato a cercare chi altro stesse dimostrando le cose, invece di sorvegliarle, e la risposta è quasi nessuno.

L'unico nome serio è Imandra. Fanno vera verifica formale nei servizi finanziari — dimostrazioni matematiche di correttezza — e tra i loro clienti c'è la stessa Goldman Sachs. Ma il loro mondo sono i mercati dei capitali: logica di matching delle borse, protocolli di trading. La conformità al consumo, Reg Z, i flussi di lavoro delle contestazioni — non è lì che sono puntati, e con circa 5 milioni di dollari di finanziamento totale non ci si sono puntati.

Nel frattempo il capitale si sta riversando nell'altro angolo della conformità. Bretton AI, precedentemente Greenlite, ha raccolto un Series B da 75 milioni di dollari a febbraio 2026 e serve banche regolamentate dall'OCC — per KYC, antiriciclaggio e onboarding. SymphonyAI's La piattaforma Sensa ha ridotto i falsi positivi nello screening delle sanzioni di una banca spagnola del 91,8%. Alloy orchestra l'identità in oltre 800 istituzioni. Denaro reale, ingegneria reale — tutto puntato sulla criminalità finanziaria e sull'onboarding, niente di tutto ciò sul fatto che la tua risoluzione delle contestazioni possa violare un regolamento.

Questo è il divario, e non è affatto stretto. Gli attori più vicini al lavoro sulle contestazioni (FINBOA, Quavo) lo automatizzano senza verificarlo. L'unico verificatore (Imandra) opera in un mercato diverso. Combina questi due elementi e ottieni un angolo del campo in cui, per quanto posso capire, nessuno si trova: la verifica formale puntata sulla conformità delle contestazioni al consumo. È l'angolo in cui siamo entrati.

La frase che ha ricostruito il nostro pitch

La cosa che finalmente mi ha fatto capire il valore non è venuta da un ingegnere. È venuta da un'ex esaminatrice con cui mi sono seduto.

Le ho chiesto cosa volesse davvero nella stanza durante una revisione di un errore di fatturazione. Non ha detto "buone dashboard". Ha detto, più o meno, che voleva sapere che la banca potesse dimostrare che il suo processo non potesse mancare la scadenza — non che di solito non la mancasse. L'intero atteggiamento si ribalta su quella singola parola. La slide di attestazione al consiglio che recita "lo abbiamo testato ed è passato" è un'ammissione che hai controllato solo i percorsi a cui hai pensato. Una dimostrazione dice qualcosa di categoricamente più forte: su ogni percorso che il flusso di lavoro consente, l'invariante vale.

E i regolatori stanno silenziosamente muovendosi verso questo per conto proprio. Il Bollettino OCC 2025-26 ha chiarito che qualsiasi metodo quantitativo che guidi in modo sostanziale una decisione di rischio o conformità è un "modello" — e il bollettino è esplicito nel dire che la sofisticazione dell'IA o del machine learning non lo esenta dalla validazione. Leggilo con attenzione: un instradatore automatico delle contestazioni è ora esaminabile come un modello, non solo come uno strumento operativo. E la verifica formale è la più forte validazione di modello che esista. Non campiona il comportamento. Dimostra la proprietà.

Al di là dell'Atlantico, l'EU AI Act classifica l'IA per il credito e il merito creditizio come ad alto rischio, con una scadenza di conformità rigida al 2 agosto 2026, e una portata extraterritoriale che coinvolge i fornitori statunitensi che servono il mercato dell'UE. La classificazione ad alto rischio significa che devi dimostrare proprietà di sistema dimostrabili — accuratezza, robustezza, supervisione. Che è, ancora una volta, esattamente ciò che una dimostrazione fornisce e un test non può.

Non è tutto questo eccessivo per una coda di contestazioni?

Le persone mi chiedono qualche versione di questo di continuo, quindi lasciami affrontare di petto le tre obiezioni oneste.

La prima è il costo. La verifica suona come un progetto scientifico, e l'alternativa della consulenza — una società delle Big Four che riprogetta il tuo processo — costa da 500.000 dollari a diversi milioni e ti consegna un processo riprogettato che nessuno ha verificato matematicamente. Mettilo a confronto con il rovescio della medaglia. Apple-Goldman è stato 89 milioni di dollari. L'ordinanza di consenso di Wells Fargo, a fronte di molteplici fallimenti tra cui la gestione delle contestazioni, è arrivata a 3,7 miliardi di dollari. Non stai acquistando la verifica a fronte del costo di una licenza SaaS; la stai acquistando a fronte della coda dei rischi estremi.

La seconda è "il nostro volume va bene". Si prevede che i chargeback globali raggiungano 337 milioni all'anno entro il 2026 e crescano del 24% fino al 2028, con l'arrivo di tipi di contestazione del tutto nuovi — comprese le contestazioni provenienti da agenti di IA autonomi che acquistano cose che i clienti non hanno mai approvato. Il banco manuale che "lo gestisce" oggi è lo stesso banco dove il 42% delle istituzioni gestisce ancora la conformità su processi manuali, secondo il report del Q1 2026 di Wolters Kluwer. Un volume crescente più la memoria manuale è il modo in cui uno stato morto passa inosservato per quattro anni.

La terza è "abbiamo superato il nostro ultimo esame". Così hanno fatto anche Apple e Goldman, presumibilmente, fino al momento in cui non è più stato così. Superare un esame significa che un esaminatore ha campionato i tuoi percorsi e non ha colpito quello difettoso. È lo stesso problema di campionamento del test, con indosso un distintivo diverso.

Ciò in cui credo ora

Sono entrato nelle operazioni sulle contestazioni pensando che la conformità fosse una disciplina di diligenza — persone attente, buone checklist, scadenze rispettate. Ne sono uscito convinto che la diligenza è lo strumento sbagliato per un problema di questa forma. Non puoi essere abbastanza diligente da coprire uno spazio di stati che raddoppia ogni volta che qualcuno rilascia una funzionalità. Le persone attente di Apple e Goldman non hanno perso quelle contestazioni per disattenzione. Le hanno perse a causa di uno stato che nessuno aveva disegnato.

Quindi la domanda che porrei a chiunque gestisca un banco delle contestazioni non è "le tue persone sono attente". È più ristretta e più fredda di così: sai disegnare lo stato in cui morirà la tua prossima contestazione persa? Se non riesci a disegnarlo, non puoi testarlo, e se non puoi testarlo, l'unica cosa onesta che resta è dimostrare che non può esistere. Questo è il lavoro — dimostrare che i tuoi flussi di lavoro delle contestazioni non possono violare Reg Z, Reg E e le tempistiche di rete, su ogni percorso, prima che un esaminatore trovi quello che hai mancato. Se questa è la garanzia di cui hai davvero bisogno, è questo che costruiamo.

Apple aveva migliaia di ingegneri e comunque uno stato morto. Gli ingegneri non sono mai stati la variabile mancante. Una dimostrazione lo era.

Ricerca correlata

Pubblicato anche su

Costruisci la tua IA con fiducia.

Collabora con un team che vanta una profonda esperienza nella creazione della prossima generazione di IA aziendale. Lascia che ti aiutiamo a progettare, sviluppare e implementare una strategia di IA di cui ti puoi fidare.

Veriprajna società di consulenza Deep Tech è specializzata nella creazione di sistemi di IA safety-critical per i settori sanitario, finanziario e regolamentato. Le nostre architetture sono validate rispetto a protocolli consolidati con una documentazione di conformità completa.