Le verdict en trois phrases
Un timeout Orange Money n'est pas un echec definitif : c'est une reponse manquante, pas un refus. Sans logique de retry, vous perdez ces paiements ; avec un retry mal fait, vous double-debitez le client et cassez la confiance. La bonne architecture combine cle d'idempotence obligatoire, backoff exponentiel court et relance humaine WhatsApp en dernier recours.
Anatomie d'un timeout mobile money
Un paiement OM au Mali passe par plusieurs relais : votre serveur, l'API operateur, le reseau USSD, le telephone du client. Le timeout survient quand la confirmation n'arrive pas dans la fenetre attendue, mais le debit a peut-etre eu lieu.
| Cause du timeout | Frequence estimee | Debit reel possible ? | Bonne reaction |
|---|---|---|---|
| Client n'a pas saisi son code a temps | ~40 % | Non | Retry / relance |
| Push STK/USSD non recu (reseau) | ~25 % | Non | Retry immediat |
| Confirmation perdue au retour | ~20 % | Oui (parfois) | Verifier statut avant retry |
| Solde insuffisant | ~10 % | Non | Message clair, pas de retry aveugle |
| Bug/lenteur cote operateur | ~5 % | Variable | Backoff + verif statut |
L'erreur classique : relancer une transaction sans verifier si le debit a deja eu lieu. D'ou la regle absolue : toute relance passe d'abord par un appel getStatus sur la transaction d'origine.
Trois strategies de retry comparees
| Strategie | Delais | Taux de recuperation | Risque double-debit | Charge support |
|---|---|---|---|---|
| Retry immediat unique | 0 s | ~8 % | Eleve si pas d'idempotence | Faible |
| Backoff exponentiel (3x) | 30 / 90 / 180 s | ~18 % | Faible avec idempotence | Faible |
| Backoff + relance WhatsApp | 30/90/180 s puis humain | ~26 % | Tres faible | Moyenne |
| Relance manuelle seule | variable | ~12 % | Faible | Elevee |
Le combo gagnant a Bamako : 3 retries automatiques espaces de 30/90/180 s, chacun precede d'une verification de statut, puis une relance WhatsApp avec un nouveau lien de paiement si tout echoue. Chaque tentative reutilise la meme cle d'idempotence pour que l'operateur reconnaisse la transaction et ne debite jamais deux fois.
Mini cas pratique
Ibrahim vend des pieces detachees en ligne a Bamako. Il traite 900 tentatives de paiement OM/mois, dont 22 % en timeout soit ~198 tentatives a risque de perte. Panier moyen : 12 000 FCFA.
Sans retry structure, il recuperait environ 12 % de ces timeouts (~24 paiements), laissant filer ~174 paiements, soit 2 088 000 FCFA/mois de volume perdu ou reporte.
Avec le combo backoff + WhatsApp (taux de recuperation ~26 %), il recupere ~51 timeouts au lieu de 24, soit +27 paiements/mois = 324 000 FCFA/mois de volume additionnel recupere, 3 888 000 FCFA/an. Surtout, la cle d'idempotence ramene son taux de double-debit sous 0,05 % (moins d'un cas sur 2 000), ce qui elimine les remboursements manuels et les avis clients negatifs. Le +18 % d'aboutissement automatique se lit directement dans son taux de conversion checkout.
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.
FAQ
Pourquoi la cle d'idempotence est-elle obligatoire ?
Parce qu'elle permet a l'operateur de reconnaitre qu'une relance concerne la meme transaction. Sans elle, chaque retry cree un nouveau debit potentiel. Avec elle, le taux de double-debit tombe sous 0,05 %.
Combien de retries automatiques faut-il ?
Trois suffisent dans 95 % des cas, espaces de 30, 90 et 180 secondes. Au-dela, le client a generalement abandonne l'onglet et une relance WhatsApp asynchrone convertit mieux qu'un 4e push.
La fenetre M-Pesa de 60 s s'applique-t-elle a Orange Money ?
Chaque operateur a sa propre fenetre : le STK push M-Pesa expire vers 60 s, Orange Money tolere souvent un peu plus mais la confirmation USSD depend de la saisie du client. Concevez pour la fenetre la plus courte du mix.
Que faire si getStatus renvoie "en attente" ?
Ne pas relancer immediatement : attendre le prochain palier de backoff et re-verifier. Un statut "en attente" au-dela de 3 minutes bascule vers la relance WhatsApp plutot qu'un nouveau push, pour eviter le double-debit.
Le retry ameliore-t-il vraiment la conversion ?
Oui : sur ce cas, +18 % de paiements aboutis automatiquement et +26 % de timeouts recuperes avec la relance humaine. Sur 198 tentatives a risque/mois, cela represente des dizaines de commandes sauvees.
Discutons de votre projet. On peut implementer un retry idempotent OM/M-Pesa avec verification de statut et relance WhatsApp automatique. 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.

