Back to 0fee
0fee

Bugs d'affichage de montants : quand 5 USD s'affiche comme 0,05

Les bugs d'affichage de montants qui ont tourmenté 0fee.dev et comment nous les avons corrigés. Par Juste A. Gnimavo et Claude.

Juste A. Gnimavo (Thales) & Claude | March 27, 2026 1 min 0fee
EN/ FR/ ES
currencybugsamount-displayformattingfintech

Les bugs d'affichage de montants sont le cauchemar des plateformes fintech. Dans 0fee.dev, un montant de 5 USD (stocké comme 500 centimes) s'affichait parfois comme 0,05 USD à cause d'une double division par 100. Inversement, 5 000 XOF (une devise sans décimales) s'affichait comme 50,00 XOF à cause d'une division inappropriée.

Les causes

  • Stockage incohérent : certains endpoints stockaient en centimes, d'autres en unités.
  • Double division : le backend divisait par 100 et le frontend divisait encore par 100.
  • Devises sans décimales : le code de formatage traitait toutes les devises comme ayant 2 décimales.

La correction

Un audit de 50+ fichiers pour standardiser : tous les montants stockés en plus petite unité, affichage via une fonction utilitaire unique respectant les décimales de chaque devise.


Cet article fait partie de la série « Comment nous avons construit 0fee.dev ». 0fee.dev est un orchestrateur de paiement couvrant 53+ fournisseurs dans 200+ pays, construit par Juste A. GNIMAVO et Claude depuis Abidjan sans aucun ingénieur humain. Suivez la série pour l'histoire complète de la construction.

Share this article:

Responses

Write a response
0/2000
Loading responses...

Related Articles

Thales & Claude zerosuite

Ça marche, et ce n'est pas fini

Le dirigeant a parcouru lui-même tous les canaux de senndo — cinq canaux, à l'unité et en campagne, l'import, les statistiques, un remboursement, l'API — et tout a répondu. Le fichier de pilotage disait toujours non, et la seule ligne qui bloquait n'était pas du code : c'était un document qui avait discrètement cessé d'être vrai. Quatre affirmations vraies à l'écriture et fausses à la lecture, et les gardes lisibles par une machine qui attrapent désormais chacune de ces formes.

13 min Sep 14, 2026
senndocpaaslaunch-readinessdocumentation +8
Thales & Claude zerosuite

Le navigateur entre les mains de Claude : piloter le Chrome du dirigeant

Claude-in-Chrome permet à une session Claude Code de piloter le vrai navigateur du dirigeant — même profil, mêmes sessions ouvertes. Ce que l'outil fait réellement, pourquoi il vaut mieux que de demander à un humain de cliquer et de rapporter, et où l'humain garde l'avantage. Ancré dans le jour où Claude a conduit un parcours client complet dans la console de production de senndo, messages facturés compris.

9 min Aug 18, 2026
claude-in-chromebrowser-automationclaude-codeclaude-fable-5 +9
Thales & Claude deblo

Le segfault qui n'était pas le nôtre : livrer le tracking du jour de lancement de Déblo la nuit du lancement — analytics conditionnées par l'environnement, attribution native des stores, trois bugs que le compilateur ne pouvait pas voir, et un build à court de mémoire que nous avons diagnostiqué au lieu de le rétablir

Le 1er juillet 2026 — jour de lancement — le risque n'a jamais été le texte. C'était les campagnes payantes qui partaient à l'aveugle. Voici le build-log de la livraison des analytics et de l'attribution d'installation de Déblo sous forme de code, la nuit du lancement : des tags GA4, Meta et LinkedIn conditionnés par l'environnement, qui se déploient sans risque avant même que les comptes publicitaires existent ; une attribution routée par les canaux natifs des stores plutôt que par le pixel web ; un audit adverse qui a attrapé trois bugs que le typecheck et le build passaient tous les deux ; et un déploiement Easypanel qui a segfaulté au premier build — que nous avons prouvé ne pas venir de notre code avant d'en changer une seule ligne.

18 min Jul 1, 2026
deblolaunch-dayclaude-opus-4.8claude-code +26