Testing
Test cards, sandbox environment, and testing best practices
WiPay considers testing to be the single most important aspect of any integration. Testing ensures your web-based application behaves consistently and predictably when using the Payments API.
Sandbox Environment
Set environment=sandbox in your API request to use the sandbox.
- Sandbox
account_number:1234567890 - Sandbox API Key for response-hash verification:
123
Important notes:
- All reporting features are disabled for
sandboxtransactions - Payees and Payors do not receive automated emails
- Transaction History information will not be available
- The API behaves consistently for both
liveandsandboxtransactions - The test cards on this page are valid only when
environment=sandbox
Test Cards
- Any expiry date in the current month and year or later will work
- Use a three-digit CVV/CVC, or four digits for American Express
- Any cardholder name will work
- Any total will work unless the scenario itself says otherwise
Use the card set for the checkout flow described in each section. These sets are not interchangeable; a card valid for one sandbox checkout may be rejected by another.
Standard Card Payments — TTD
Use these cards to test Payments API hosted checkout when currency is TTD.
| Code | Brand | Card Number | 3DS | Scenario |
|---|---|---|---|---|
C01YZ | Visa | 4000000000002719 | 2.x.y | Attempts processing frictionless, Status=A |
C02YZ | Visa | 4000000000002503 | 2.x.y | Step-up challenge, Status=Y |
C03YZ | Mastercard | 5200000000002151 | 2.x.y | Step-up challenge, Status=Y |
C04YZ | Visa | 4000000000002644 | 2.x.y | Step-up challenge, Status=U, Authentication error |
C05YZ | Visa | 4000000000002354 | 2.x.y | Enrollment timeout, Enrolled=U, Directory Server Error=402 |
C06YZ | Visa | 4000000000002560 | 2.x.y | Authentication bypassed, Enrolled=B |
C07YZ | Visa | 4000000000002313 | 2.x.y | Frictionless, Status=U |
C08YZ | Mastercard | 5200000000002268 | 2.x.y | Frictionless, Status=U |
C09YZ | Visa | 4000000000002420 | 2.x.y | Step-up challenge, Status=U |
C10YZ | Visa | 4000000000002446 | 2.x.y | Enrollment check error, Enrolled=U, Directory Server Error=101 |
C11YZ | Mastercard | 5200000000002037 | 2.x.y | Enrollment check error, Enrolled=U, Directory Server Error=101 |
C12YZ | Visa | 4000000000002990 | 2.x.y | Authentication unavailable on lookup, Enrolled=U, Directory Server Error=101 |
C13YZ | Mastercard | 5200000000002409 | 2.x.y | Authentication unavailable on lookup, Enrolled=U, Directory Server Error=101 |
C14YZ | Visa | 4000000000002370 | 2.x.y | Step-up challenge, Status=N |
C15YZ | Mastercard | 5200000000002235 | 2.x.y | Frictionless, Status=Y |
Standard Card Payments — USD and other currencies
Use these cards to test Payments API hosted checkout when currency is USD or any other supported currency.
Use any future expiry date and any three-digit CVC/CVV, except American Express cards, which require four digits. Brand acceptance depends on the merchant account and processing platform.
None means no 3DS interaction is normally required for that test scenario, not that the card brand cannot support 3DS. Use the dedicated 3DS scenarios to test authentication and challenge handling.
| Code | Brand | Card Number | 3DS | Scenario |
|---|---|---|---|---|
S01TP | Visa | 4242424242424242 | None | Standard payment success; no 3DS challenge normally required |
S02TP | Visa | 4000000000000002 | None | Standard payment decline — card_declined / generic_decline |
S03TP | Visa | 4000000000000127 | None | Decline — incorrect CVC |
S04TP | Visa | 4000000000003220 | 2.x.y | 3DS required; authentication/challenge completed successfully; payment succeeds |
S05TP | Visa | 4000000032200000 | 2.x.y | 3DS frictionless; authentication succeeds without customer challenge |
S06TP | Visa | 4000008260003178 | 2.x.y | 3DS required; authentication succeeds, then payment declined — insufficient_funds |
S07TP | Visa | 4000008400001280 | 2.x.y | 3DS required; 3DS lookup/authentication processing error; payment declined |
S08TP | Mastercard | 5555555555554444 | None | Standard payment success |
S09TP | American Express | 378282246310005 | None | Standard payment success — 15-digit card number, four-digit CVC/CVV; 3DS not supported for this test card |
S10TP | Discover | 6011111111111117 | None | Standard payment success |
For the required-3DS challenge case, also exercise unsuccessful authentication and cancellation using the sandbox authentication screen.
Trusted Card — TTD
Use these cards to test Create Trusted Card, Verify Trusted Card, and Charge Trusted Card in sandbox when currency is TTD.
| Code | Brand | Card Number | 3DS | Scenario |
|---|---|---|---|---|
P01TZ | Mastercard | 5100270000000098 | 2.x.y | Frictionless, Status=N, Payment Completion not permitted (response code 12) |
P02TZ | Visa | 4012000000020121 | 2.x.y | Frictionless, Status=N, Payment Completion not permitted (response code 12) |
P03TZ | Mastercard | 5100270000000023 | 2.x.y | Frictionless, Status=Y |
P04TZ | Visa | 4012000000020071 | 2.x.y | Frictionless, Status=Y |
P05TZ | Mastercard | 5100270000000056 | 2.x.y | Challenge, Status=N, Payment Completion not permitted (response code 12) |
P06TZ | Visa | 4012000000020089 | 2.x.y | Frictionless, Status=A |
P07TZ | Visa | 4666666666662222 | 2.x.y | Frictionless, Status=A, ISO Response Code=05, CVV Response=N |
P08TZ | Mastercard | 5100270000000072 | 2.x.y | Frictionless, Status=R |
P09TZ | Mastercard | 5555666666662222 | 2.x.y | Frictionless, Status=U, ISO Response Code=05 |
P10TZ | Visa | 4111111111119999 | 2.x.y | Frictionless, Status=A, ISO Response Code=98 |
P11TZ | Mastercard | 5100270000000031 | 2.x.y | 3DS2 Challenge, Status=Y |
P12TZ | Visa | 4012000000020006 | 2.x.y | 3DS2 Challenge, Status=Y |
P13TZ | Mastercard | 5111111111113333 | 2.x.y | Frictionless, Status=A, ISO Response Code=05 |
P14TZ | Visa | 4012010000020070 | 2.x.y | Frictionless, Fingerprinting, Status=Y |
P15TZ | Mastercard | 5100271000000120 | 2.x.y | Frictionless, Fingerprinting, Status=Y |
P16TZ | Visa | 4111111111110000 | 2.x.y | 3DS2 Challenge, Status=Y, ISO Response Code=91 |
P17TZ | Mastercard | 5111111111110000 | 2.x.y | 3DS2 Challenge, Status=Y, ISO Response Code=91 |
P18TZ | Visa | 4012010000020088 | 2.x.y | Frictionless, Fingerprinting, Status=A |
P19TZ | Visa | 4012010000020005 | 2.x.y | 3DS2 Challenge, Fingerprinting, Status=Y |
P20TZ | Visa | 4012000000020071 | 2.x.y | 3DS2 Challenge, include ChallengeIndicator=03 |