Scénarios de test
Les numéros, cartes et comptes qui imposent chaque résultat.
Dans la sandbox, le résultat n'est pas aléatoire. Vous le choisissez avec le numéro de téléphone, la carte, le compte bancaire ou le portefeuille utilisé pour payer. Toutes les informations de cette page proviennent de la liste des numéros, cartes et comptes de test de la sandbox.
Mobile Money
Un numéro de test associe un préfixe d'opérateur à un suffixe de six chiffres qui détermine le résultat.
number = operator_prefix + outcome_suffix
+23767 + 000002 = +237670000002
MTN Cameroon failure a payment that always failsLes six suffixes
| Suffixe | Résultat | Ce que voit votre intégration |
|---|---|---|
000000 | Réussite | payment.succeeded après environ 3 secondes |
000001 | Fonds insuffisants | Un 402 sur la charge elle-même, avec error_code: insufficient_funds, comme un refus en live. Le paiement reste pending et payment.attempt_failed part |
000002 | Échec | payment.failed, refusé par l'opérateur |
000003 | Délai dépassé | payment.expired, et le paiement finit expired |
000004 | Annulé | payment.cancelled, et le paiement finit cancelled |
000009 | Réussite suivie de l'échec d'un remboursement | payment.succeeded, puis refund.failed |
Les zéros supplémentaires au début sont acceptés
La partie abonné peut contenir des zéros supplémentaires avant le suffixe. Ainsi, +2376700000000 correspond également à 000000. Tout autre caractère entre le préfixe et le suffixe empêche la correspondance, et le débit répond un 422 sur data.phone qui liste les numéros à utiliser, avec le préfixe de l'opérateur du canal : Invalid sandbox test number. Use a test number of the channel's operator, e.g. +237670000000 (success), +237670000001 (insufficient funds), ….
Préfixes
Vingt-six pays et soixante-sept opérateurs : chaque canal Mobile Money annoncé par le catalogue. Un portefeuille détenu quel que soit l'opérateur du payeur, comme Capitec Pay, prend aussi le numéro de test de tout autre opérateur, et son suffixe fixe toujours le résultat ; un numéro qui n'est pas un numéro de test est refusé.
| Pays | Opérateur | Préfixe |
|---|---|---|
+23767 | ||
+23769 | ||
+23768 | ||
+23766 | ||
+22505 | ||
+22507 | ||
+22501 | ||
+22503 | ||
| Green | +22509 | |
+2348 | ||
+2347 | ||
+22177 | ||
| Free | +22176 | |
+22178 | ||
+23324 | ||
| Vodafone | +23320 | |
+23326 | ||
| AirtelTigo | +23327 | |
+25470 | ||
+25471 | ||
+25473 | ||
| Equitel | +25476 | |
| T-Kash | +25477 | |
+25478 | ||
+25567 | ||
| Tigo | +25565 | |
| Vodafone | +25574 | |
| HaloPesa | +25562 | |
+25576 | ||
+25677 | ||
+25675 | ||
+25078 | ||
+25073 | ||
+24399 | ||
+24389 | ||
| Vodacom | +24381 | |
+24382 | ||
| Africell | +24390 | |
+22990 | ||
+22991 | ||
| Glo | +22997 | |
+22670 | ||
+22671 | ||
+2410 | ||
+2411 | ||
+2416 | ||
+24205 | ||
+24206 | ||
+24204 | ||
+23566 | ||
+23670 | ||
+26096 | ||
+26097 | ||
| Zamtel | +26095 | |
+26599 | ||
| TNM | +26588 | |
+22370 | ||
+22366 | ||
+22899 | ||
| T-Money | +22890 | |
+22466 | ||
+22462 | ||
+23188 | ||
+25884 | ||
| Vodafone Cash | +2010 | |
+23276 | ||
| Capitec Pay | +2761 |
Exemples complets
| Scénario | MTN Cameroun | Orange Côte d'Ivoire | M-Pesa Kenya |
|---|---|---|---|
| Réussite | +237670000000 | +225070000000 | +254700000000 |
| Fonds insuffisants | +237670000001 | +225070000001 | +254700000001 |
| Échec | +237670000002 | +225070000002 | +254700000002 |
| Délai dépassé | +237670000003 | +225070000003 | +254700000003 |
| Annulé | +237670000004 | +225070000004 | +254700000004 |
Cartes
Seul le numéro de carte détermine le résultat. Les autres champs doivent tout de même être bien
formés, sinon le débit est refusé par un 422 sur le champ : un nom de titulaire, une expiration au
format MM/AA ou MM/AAAA avec une année de celle-ci à trente ans plus tard, et un CVV de trois ou
quatre chiffres. La page API directe montre les quatre champs d'un
débit par carte en sandbox.
Réussite sans 3D Secure
| Carte | Réseau | Résultat |
|---|---|---|
4242 4242 4242 4242 | Visa | Réussite |
5555 5555 5555 4444 | Mastercard | Réussite |
4000 0000 0000 5423 | Visa | Réussite, puis échec de chaque remboursement |
Vérification 3D Secure obligatoire
Le Checkout hébergé demande un code envoyé par e-mail, comme décrit dans Mode sandbox. Ces cartes renvoient d'abord 202. Le statut final arrive une fois la vérification terminée.
| Carte | Résultat de la vérification |
|---|---|
4000 0566 5566 5556 | Réussite de la vérification et du paiement |
4000 0025 0000 3155 | Réussite de la vérification et du paiement |
4000 0027 6000 3184 | Réussite de la vérification et du paiement |
4000 0025 0000 3063 | Échec de l'authentification |
4000 0025 0000 3089 | Échec de l'authentification |
4000 0025 0000 3018 | Authentification réussie, puis refus de l'émetteur |
4000 0025 0000 3026 | Authentification réussie, puis refus de l'émetteur |
4000 0025 0000 3034 | Le payeur abandonne la vérification |
4000 0025 0000 3042 | Le payeur abandonne la vérification |
4000 0025 0000 3050 | Le délai de vérification est dépassé |
4000 0025 0000 3097 | Le délai de vérification est dépassé |
Échec sans 3D Secure
| Carte | Résultat |
|---|---|
4000 0000 0000 9995 | Fonds insuffisants |
4000 0000 0000 0002 | Refus |
4000 0000 0000 9987 | Refus |
4000 0000 0000 9979 | Refus |
4000 0000 0000 0069 | Refus |
4000 0000 0000 0127 | Refus |
4000 0000 0000 0119 | Refus |
4000 0000 0000 0341 | Refus |
4000 0000 0000 6975 | Refus |
4242 4242 4242 4241 | Refus |
Un seul motif de refus, pas dix
Seule la carte …9995 possède un motif distinct. Les neuf autres produisent le même refus générique. Utilisez celle que vous souhaitez pour tester un parcours d'échec. Une carte absente de cette page est refusée, car elle ne correspond pas à une carte de test.
Comptes bancaires
Tout numéro de compte ou IBAN d'au moins quatre caractères est accepté. Les deux derniers chiffres déterminent le résultat.
| Se termine par | Résultat |
|---|---|
00 | Réussite |
01 | Fonds insuffisants |
02 | Échec |
03 | Délai dépassé |
04 | Annulé |
Toute autre valeur réussit. Un compte qui se termine par 47 fonctionne donc simplement.
Cryptomonnaies
Les cryptomonnaies s'activent ou se désactivent pour toute la plateforme sandbox, pas par compte :
quand elles sont désactivées, le canal n'est pas proposé. Quand elles sont actives, un débit crypto
répond avec crypto.deposit, dont l'objet scenarios porte une adresse de dépôt par résultat :
success, insufficient_funds, failure, timeout et canceled.
- Sans
wallet_addressdans le débit, le paiement réussit. - Avec l'une des adresses de
scenarioscommewallet_address, vous obtenez ce résultat. - Toute autre adresse est refusée par un
422surdata.wallet_address.
Chaque adresse est dérivée du paiement, du canal et du scénario (address_derivation en donne la
recette) : deux exécutions du même test produisent la même adresse. Elle expire après 30 minutes.
Les suffixes d'adresse _success, _insufficient, _failure, _timeout et _canceled choisissent
le résultat d'un payout vers un bénéficiaire crypto, pas d'un paiement.
Remboursements
Le résultat d'un remboursement dépend du paiement d'origine, pas de l'appel de remboursement.
| Moyen utilisé pour le paiement | Résultat du remboursement |
|---|---|
4000 0000 0000 5423 | Échec systématique |
Un numéro qui se termine par 000009 | Échec systématique |
Un numéro qui se termine par 000000 | Réussite |
| Toute autre carte, un compte bancaire ou un portefeuille de cryptomonnaie | Réussite |
Les numéros qui se terminent par 000001 à 000004 n'ont pas de ligne : leurs paiements
n'aboutissent jamais, il n'y a donc rien à rembourser. POST /refunds répond 422 avec
Transaction must be completed to be refunded. Pour tester un remboursement qui échoue, payez avec
…000009 ou avec la carte 4000 0000 0000 5423.
Transferts
Un payout utilise les informations du bénéficiaire et les mêmes suffixes s'appliquent. Un bénéficiaire Mobile Money doit posséder un numéro de test reconnu. Un compte bancaire de test choisit son résultat par ses deux derniers chiffres, une adresse crypto de test par son suffixe, de la même façon.
| Suffixe | Le transfert | failure_reason |
|---|---|---|
000000 | succeeded | |
000001 | Refusé aussitôt : 422 avec error_code: insufficient_funds, rien n'est créé | |
000002 | failed | failure |
000003 | failed | network_error |
000004 | failed | invalid_recipient |
Un transfert débite votre solde de sandbox. Commencez donc par réussir un paiement. Dans le cas contraire, le payout échoue pour cause de fonds insuffisants, exactement comme en mode live.
Pages associées