Stratégie de test
Testez au minimum :- une réponse
200sur/v1/countrieset/v1/fees; - un paiement Mobile Money
pending,completedetfailed; - la réception d’un webhook ;
- la déduplication d’un même webhook ;
- un timeout après lequel vous vérifiez le statut au lieu de créer un second paiement ;
- les erreurs
400,401,403et429.
Environnement de démonstration
Le dashboard AshTech Pay contient des outils de test pour les parcours de paiement. N’utilisez jamais de vraies clés dans des captures d’écran, des logs ou un dépôt Git.Les numéros ci-dessous sont fictifs. Ils ne correspondent à aucun abonné et ne doivent jamais être utilisés avec un autre service de paiement. Ils simulent uniquement les dépôts Mobile Money via
POST /v1/collect : ils ne simulent pas les retraits et ne doivent pas être utilisés avec POST /v1/payouts/mobile-money.Numéros Mobile Money simulés
Les numéros de test fonctionnent avec chaque opérateur actif du pays sélectionné. Le pays, l’opérateur et la devise doivent tout de même être valides dansGET /v1/countries.
Le même numéro local est utilisable avec tous les opérateurs du pays. Vous pouvez envoyer le numéro au format international indiqué ou uniquement sa partie locale.
Réponses simulées
Toutes ces réponses contiennent
sandbox: true et simulation: true. Après un scénario accepté, une ligne apparaît dans l’historique AshTech Pay sous Sandbox test avec le statut sandbox_test. Cette ligne sert uniquement à consulter le test : aucun solde n’est modifié, aucun webhook n’est envoyé et aucune requête externe n’est effectuée. Les montants credited_amount et fee_amount sont simulés; wallet_credited_amount reste à 0. La demande OTP initiale et un OTP invalide ne créent pas de ligne; le test est enregistré après la saisie de l’OTP correct.
OTP fictif
Pour tous les opérateurs dont le vrai parcours demande un OTP, utilisez :...000000004 répond :
otp: "000000". La réponse sera HTTP 202 avec status: "pending" et une ligne Sandbox test sera ajoutée à l’historique. Aucun SMS, code USSD réel, dépôt, crédit du wallet, webhook ni appel réel n’est déclenché. Tout autre OTP retourne error: "invalid_otp" sans créer de ligne d’historique.
Exemple
transaction_id identifie la trace affichée dans l’historique. Le scénario pending reste simulé : son statut d’historique demeure sandbox_test, sans confirmation réelle ultérieure ni interrogation externe.
