La tempête de retries qui a failli payer un marchand deux fois
Jeudi 16:47. Un payout marchand. Le client timeout, puis renvoie. Puis encore. Quatre-vingt-dix secondes avant de payer trois fois la même personne.
SAIFCORE
Guides d'architecture, ADR et techniques pratiques issus de la conception de rails de paiement, backends distribués et plateformes résilientes en Afrique et au-delà.
Études de cas, services et expérience sur saifcore.tech
Jeudi 16:47. Un payout marchand. Le client timeout, puis renvoie. Puis encore. Quatre-vingt-dix secondes avant de payer trois fois la même personne.
Vendredi, l'application affichait Payé. Lundi, 15 000 XOF manquaient. Le callback s'appelait SUCCESS. C'était tout le problème.
La plupart des bugs paiement sont des bugs de vocabulaire. Accepté n'est pas confirmé. Confirmé n'est pas settled. Le modèle à trois états d'où part ce blog — et pourquoi votre booléen ment à la finance.
Plateformes backend pour systèmes critiques : fiabilité, scalabilité, maintenabilité. Paiements, architecture, production — pas des slides. Depuis Dakar, pour les équipes qui déplacent de l'argent.
Déplacer l'argent n'est que la dernière étape. Le défi est de prouver qui agit, pour qui, sous quel mandat et avec quelles limites.
Aligner problème, utilisateurs, métriques et non-goals explicites sur une seule page avant tout diagramme ou sprint.