Sandbox de passerelle de paiement fictive
Découvrez comment répond une API de paiement : simulez des acceptations, des refus et 3-D Secure avec des cartes de test publiques, entièrement hors ligne.
🔒 Simulateur pédagogique : il ne contacte aucune banque, aucun réseau de cartes ni aucun prestataire de paiement. Seuls les numéros de carte de test publiés sont acceptés.
Numéros de carte de test publiés
| Numéro de carte | Réseau | Résultat simulé | |
|---|---|---|---|
| 4242 4242 4242 4242 | Visa | Paiement réussi | |
| 4000 0000 0000 0002 | Visa | Refusé : generic_decline | |
| 4000 0000 0000 9995 | Visa | Refusé : insufficient_funds | |
| 4000 0000 0000 0069 | Visa | Refusé : expired_card | |
| 4000 0000 0000 0127 | Visa | Refusé : incorrect_cvc | |
| 4000 0000 0000 0119 | Visa | Erreur : processing_error | |
| 4000 0025 0000 3155 | Visa | Authentification 3-D Secure requise | |
| 5555 5555 5555 4444 | Mastercard | Paiement réussi | |
| 3782 822463 10005 | American Express | Paiement réussi |
Fonctionnement du flux de paiement
Votre serveur crée et confirme un payment intent, la passerelle répond avec un statut, puis un webhook informe ultérieurement votre backend du résultat final. Traitez les commandes à partir du webhook, et non de la redirection du navigateur.
{
"method": "POST",
"path": "/v1/payment_intents",
"body": {
"amount": 2000,
"currency": "usd",
"confirm": true,
"payment_method_data": {
"type": "card",
"card": {
"number": "4242424242424242",
"exp_month": 12,
"exp_year": 2030,
"cvc": "123"
}
}
}
}{
"id": "pi_test_3kq9x2m7v1c8b5n4z6a0d2f1",
"object": "payment_intent",
"livemode": false,
"amount": 2000,
"currency": "usd",
"status": "succeeded",
"payment_method": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242",
"exp_month": 12,
"exp_year": 2030
}
},
"latest_charge": {
"id": "ch_test_8h2j4k6l1m3n5p7q9r0s2t4u",
"authorization_code": "T4K2Q9",
"outcome": {
"network_status": "approved_by_network",
"type": "authorized"
}
}
}{
"id": "evt_test_1a2b3c4d5e6f7g8h9i0j1k2l",
"object": "event",
"type": "payment_intent.succeeded",
"livemode": false,
"data": {
"object": {
"id": "pi_test_3kq9x2m7v1c8b5n4z6a0d2f1",
"status": "succeeded",
"amount": 2000,
"currency": "usd"
}
}
}{
"id": "evt_test_9z8y7x6w5v4u3t2s1r0q9p8o",
"object": "event",
"type": "payment_intent.payment_failed",
"livemode": false,
"data": {
"object": {
"id": "pi_test_7f6e5d4c3b2a1z0y9x8w7v6u",
"status": "requires_payment_method",
"last_payment_error": {
"type": "card_error",
"code": "card_declined",
"decline_code": "insufficient_funds",
"message": "Your card has insufficient funds."
}
}
}
}À propos de l'outil Sandbox de passerelle de paiement fictive
Cette sandbox de passerelle de paiement fictive permet aux développeurs de découvrir comment répond une API de paiement par carte sans manipuler d'argent réel. Choisissez l'un des numéros de carte de test publiés, saisissez une date d'expiration future, un CVC et un montant, puis cliquez sur Simuler le paiement. La page renvoie un objet JSON structuré comme un payment intent classique : un identifiant, un statut, le réseau de la carte et ses quatre derniers chiffres, un code et un message de refus en cas d'échec, et un faux code d'autorisation en cas d'acceptation. La carte 3-D Secure affiche une vérification simulée pour vous entraîner à gérer le statut requires_action, et chaque résultat inclut l'événement webhook correspondant. Le simulateur fonctionne entièrement dans votre navigateur : il ne contacte aucune banque, aucun réseau de cartes ni aucun prestataire de paiement, et n'accepte que les numéros de test publiés répertoriés dans le tableau. Les vrais numéros de carte sont refusés localement et ne sont jamais envoyés.
FAQ
La sandbox débite-t-elle une carte ou contacte-t-elle une banque ?
Non. Tout est simulé dans votre navigateur. Aucune requête n'est envoyée à Visatk, à une banque, à un réseau de cartes ou à un prestataire de paiement, et aucun argent n'est transféré.
Pourquoi mon numéro de carte est-il refusé ?
La sandbox n'accepte que les numéros de test publiés figurant dans le tableau. Tout autre numéro, y compris une vraie carte, est refusé localement afin de ne jamais être traité comme accepté.
Puis-je utiliser ces numéros chez mon véritable prestataire de paiement ?
Il s'agit des numéros de test largement publiés et utilisés dans les modes test des prestataires. Ils ne fonctionnent qu'avec des clés API de test dans la sandbox de votre prestataire ; en mode production, ils sont toujours refusés.