Le verdict en trois phrases
Le pire echec de paiement est celui ou le client est debite mais la commande n'apparait pas : un timeout USSD a coupe la session avant la confirmation. Un retry naif qui relance sans verifier provoque un double debit dans 2 a 4 % des cas et detruit la confiance ; un retry idempotent qui interroge d'abord le statut recupere 50 a 65 % des paiements bloques sans jamais debiter deux fois. A Yaounde, cette difference de logique vaut des centaines de milliers de FCFA par mois et zero litige.
Anatomie d'un timeout Orange Money / MTN MoMo
Quand un client valide un paiement, le push USSD lui laisse 90 a 120 secondes pour saisir son PIN. Si le reseau ou le client depasse ce delai, la session expire cote operateur, mais le debit a parfois deja eu lieu. Votre serveur, lui, n'a rien recu : il croit le paiement echoue. Sans reconciliation, cette transaction reste en statut "pending" pour 5 a 15 % des tentatives.
| Etape | Delai typique 2026 | Risque |
|---|---|---|
| Envoi push USSD | 1-3 s | Faible |
| Attente saisie PIN | 90-120 s | Timeout si depasse |
| Confirmation operateur | 2-10 s | Perte si reseau coupe |
| Callback vers marchand | 2-30 s | Event manque |
| Statut final "pending" | jusqu'a 24 h | Debit sans commande |
Le statut "pending" prolonge est le piege : le client a peut-etre paye, peut-etre pas. Seule une verification de statut cote serveur tranche.
Retry naif vs retry idempotent
La maniere de relancer fait toute la difference entre recuperer de l'argent et en detourner. Comparaison 2026.
| Critere | Retry naif | Retry idempotent (verif statut) |
|---|---|---|
| Verifie le statut avant relance | Non | Oui |
| Taux de double debit | 2-4 % | ~0 % |
| Paiements recuperes | 20-30 % | 50-65 % |
| Nombre de tentatives | Illimite / aleatoire | 3 avec backoff |
| Fenetre de reconciliation | Aucune | 24 h |
| Litiges clients generes | Eleves | Quasi nuls |
| Confiance client | Erodee | Preservee |
Le retry idempotent gagne partout : il recupere deux fois plus de paiements tout en supprimant le double debit. La regle : toujours interroger le statut avant de relancer, jamais relancer a l'aveugle.
La bonne sequence de recuperation
En 2026, la sequence robuste est : detecter le timeout, attendre quelques secondes, interroger l'API de statut avec la reference d'origine. Si "paye", valider la commande sans relancer. Si "echoue" definitif, proposer un nouvel essai au client. Si toujours "pending", replanifier une verification (backoff : 30 s, 2 min, 10 min) jusqu'a 3 fois, puis basculer en reconciliation 24 h. Cette logique evite le double debit et rattrape la majorite des transactions fantomes.
Mini cas pratique
Besoin d'un site web professionnel ?
Kolonell crée des sites web qui attirent des clients, optimisés pour le marché sénégalais. Devis gratuit en 2 minutes.
Ibrahim, restaurateur a Yaounde avec un service de commande en ligne, traite 600 paiements/mois, panier moyen 9 000 FCFA. Environ 10 % finissent en "pending" apres timeout, soit 60 transactions (540 000 FCFA en suspens). Son ancien systeme relançait a l'aveugle : il recuperait 25 % (135 000 FCFA) mais double-debitait 3 % des clients, generant 18 litiges/mois et des remboursements. Avec un retry idempotent verifiant le statut, il recupere 60 % (324 000 FCFA) et les doubles debits tombent a zero. Gain net : +189 000 FCFA/mois recuperes et 18 litiges elimines, ce qui protege aussi sa reputation.
FAQ
Comment un client peut-il etre debite sans que la commande passe ?
Le debit se produit cote operateur, mais le callback de confirmation vers votre serveur se perd (reseau, timeout). Votre systeme croit l'echec alors que l'argent est parti. Une verification de statut sur 24 h detecte et repare ces cas.
Comment eviter le double debit lors d'un retry ?
En interrogeant toujours le statut de la transaction avant de relancer, avec la meme reference. Si elle est deja "payee", vous ne relancez pas. Cette seule regle fait passer le double debit de 2-4 % a quasi zero.
Combien de retries avec quel delai ?
Trois tentatives avec backoff exponentiel (par exemple 30 s, 2 min, 10 min) suffisent pour la plupart des timeouts. Au-dela, la transaction bascule en file de reconciliation manuelle sur 24 h.
Qu'est-ce que la fenetre de reconciliation de 24 h ?
C'est la periode pendant laquelle un statut "pending" peut encore se resoudre cote operateur. Vous rejouez la verification durant ce laps de temps avant de conclure a un echec definitif ou de rembourser.
Le double debit est-il grave commercialement ?
Tres : au-dela du remboursement, il detruit la confiance et genere du bouche-a-oreille negatif. Un client double-debite une fois hesite a repayer. C'est pourquoi le retry idempotent est prioritaire sur toute optimisation de conversion.
Discutons de votre projet. On installe une logique de retry idempotente qui recupere vos paiements Orange Money et MTN MoMo bloques sans jamais double-debiter. WhatsApp +221 77 596 93 33.
Mohamed Bah
Fondateur, Kolonell
Passionné par le digital et l'entrepreneuriat en Afrique, Mohamed accompagne les entreprises sénégalaises dans leur transformation digitale depuis 2020. Fondateur de Kolonell, il croit que chaque PME mérite une présence en ligne professionnelle et accessible.
