Sandbox
Test cards
Use these cards with sp_test_ keys against the sandbox gateway. They never move real money.
Cardholder name
Any name
Expiry
Any future date
CVV
123
| Brand | Card number | Scenario | Result | Code |
|---|---|---|---|---|
| Visa | 4000 0000 0000 3220 | 3DS authenticated | Success | — |
| Visa | 4000 0084 0000 1629 | 3DS authentication failed | Decline | — |
| Mastercard | 5200 0000 0000 3220 | 3DS authenticated | Success | — |
| Mastercard | 5200 0084 0000 1629 | 3DS authentication failed | Decline | — |
| Visa | 4242 4242 4242 4242 | Non-3DS frictionless | Success | — |
| Mastercard | 5555 5555 5555 4444 | Non-3DS frictionless | Success | — |
| Visa | 4000 0000 0000 0005 | Do not honour | Decline | 05 |
| Visa | 4000 0000 0000 0091 | Issuer unavailable | Decline | 91 |
| Mastercard | 5100 0000 0000 0051 | Insufficient funds | Decline | 51 |
| Visa | 4000 0000 0000 0041 | Lost card | Decline | 41 |
| Mastercard | 5100 0000 0000 0087 | Purchase amount only / no cashback | Decline | 87 |
| RCS | 6007 8200 0000 0001 | RCS store card — enter OTP 123456 | Challenge | — |
Handling rules
- For 3DS cards, the sandbox shows a simulated challenge page — click Authenticate or Fail.
- Declines return HTTP
402withcard_declinedand thedecline_codeabove. - Code 91 is retryable; codes 05, 41, 51 and 87 should not be retried automatically.
- For RCS, enter OTP
123456; any other OTP fails. - Any other valid Luhn number succeeds without 3DS.
Never use real card numbers in sandbox
Real cards are rejected in the sandbox. Test cards are rejected in production.
