Le verdict en trois phrases
Sur réseau faible, la confirmation USSD expire constamment et l'utilisateur croit que ça a échoué. À Ouagadougou en 2026, la fenêtre de saisie du code USSD ne dure que 30 à 120 secondes, et 10 à 20 % des tentatives expirent en 2G/3G. Une politique de retry avec backoff exponentiel, une clé d'idempotence pour éviter le double débit et un fallback WhatsApp/SMS transforment un échec apparent en vente confirmée.
Pourquoi les confirmations USSD expirent
Le problème n'est presque jamais le solde du client. C'est la chaîne technique : le push part, l'opérateur affiche le prompt, mais la réponse ne revient pas à temps à cause du réseau. Sans stratégie, votre système marque la transaction "échouée" alors qu'elle est peut-être en cours.
| Cause du timeout | Fréquence (estimation 2026) | Réponse recommandée |
|---|---|---|
| Fenêtre USSD expirée (>120 s) | 6 à 10 % | Relancer un push après 90 s |
| Réseau 2G/3G instable | 5 à 8 % | Polling du statut côté serveur |
| Client distrait / n'a pas saisi le code | 3 à 5 % | Rappel WhatsApp/SMS |
| Webhook opérateur en retard | 2 à 4 % | Attendre 60 s avant de conclure |
| Solde insuffisant | 1 à 3 % | Message clair + autre moyen |
Une politique de retry qui ne double-débité jamais
La règle d'or : ne jamais relancer un paiement sans clé d'idempotence. Chaque tentative porte le même identifiant de commande, donc l'opérateur reconnaît la transaction et ne débite pas deux fois. On attend au moins 90 secondes avant un nouveau push pour laisser la première tentative se résoudre.
| Tentative | Délai avant action | Mécanisme | Canal |
|---|---|---|---|
| 1 | 0 s | Push USSD + polling 3-5 s | Application |
| 2 | après 90 s | Nouveau push (même clé idempotence) | USSD |
| 3 | après 3 min | Lien de paiement de secours | |
| 4 | après 15 min | Rappel avec lien | SMS |
| Abandon | après 24 h | Clôture + relance marketing | E-mail/WhatsApp |
Le polling côté serveur (toutes les 3 à 5 secondes) vérifie le statut réel auprès de l'opérateur au lieu de faire confiance à l'écran du client. Tant que le webhook n'a pas confirmé ou échoue définitivement, la commande reste "en attente".
Mini cas pratique
Ibrahim vend du matériel agricole à Ouagadougou. Sur 400 paiements Orange Money par mois, environ 60 tentatives (15 %) expirent au premier essai. Sans retry, il perd ces ventes : à un panier moyen de 35 000 FCFA, cela représente 2 100 000 FCFA/mois de commandes potentiellement perdues. Avec une politique de retry + fallback WhatsApp qui récupère 50 % de ces timeouts, il sauve 30 commandes, soit +1 050 000 FCFA/mois — sans un franc de publicité supplémentaire.
FAQ
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.
Un retry risque-t-il de débiter le client deux fois ?
Non, si chaque tentative utilise la même clé d'idempotence liée à la commande. L'opérateur reconnaît alors la transaction et ne crée pas de second débit. C'est la protection technique indispensable avant toute politique de relance.
Combien de temps attendre avant de relancer un push USSD ?
Au minimum 90 secondes. La fenêtre USSD dure 30 à 120 secondes ; relancer trop tôt crée deux prompts concurrents et embrouille le client. Pendant ce temps, le polling vérifie si la première tentative aboutit.
Pourquoi WhatsApp comme fallback plutôt que SMS seul ?
Parce que le taux d'ouverture WhatsApp atteint 80 à 90 % contre environ 45 % pour le SMS. Un lien de paiement de secours envoyé sur WhatsApp a beaucoup plus de chances d'être vu et cliqué dans les minutes qui suivent l'échec.
Le polling côté serveur consomme-t-il beaucoup de ressources ?
Non, un intervalle de 3 à 5 secondes pendant maximum 3 minutes reste très léger. C'est infiniment moins coûteux qu'une vente perdue ou qu'un ticket de support pour un "paiement bloqué".
Faut-il un timeout maximum global ?
Oui, généralement 3 minutes côté interface avant de basculer sur le fallback, puis une clôture à 24 h si aucune confirmation. Au-delà, on relance en marketing plutôt qu'en attente technique.
Discutons de votre projet. On conçoit votre politique de retry USSD avec idempotence et fallback WhatsApp pour arrêter de perdre des ventes sur les timeouts. 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.

