Testing - Sandbox
Testing Values for Payer Authentication
The following test cards simulate example authentication scenarios in Sandbox. We recommend running these scenarios before going live to ensure your integration is successful and accurate.
If you do not have your Sandbox credentials, login to guide.nmi.com to access your Sandbox API Keys and your Sandbox Partner and Merchant Portals.
"Not Enrolled" Frictionless Flow
These cards will return Enrolled: "N"
and trigger a frictionless flow where the card is not enrolled in 3DS:
- Visa:
4111111111111111
- Mastercard:
5431111111111111
- Amex:
341111111111111
- Discover:
6799990100000000019
Expected Result:
cardholder_auth
= 'attempted'CAVV
= emptyECIFlag
= "07" (Not enrolled)
"Frictionless Authentication" Flow
These cards will return Enrolled: "Y"
with a CAVV
present, simulating silent authentication:
- Visa:
4100000000000100
- Mastercard:
5100000000000107
- Amex:
340000000000108
- Discover:
6440000000000104
Expected Result:
cardholder_auth
= 'verified'CAVV
= mock value (e.g., "mock_cavv_0002_1234567890")ECIFlag
= "05" (Authenticated)
Challenge Flow Test Cards
These cards will trigger a 3DS challenge flow requiring user interaction:
- Visa:
4100000000005000
- Mastercard:
5100000000005007
- Amex:
340000000005008
- Discover:
6440000000005004
Expected Result:
Enrolled: "Y"
PAResStatus: "C"
(Challenge required)ECIFlag: "02"
(Challenge required)- User will be presented with a mock challenge interface. Use the following actions to trigger each result:
Result | Description | Action |
---|---|---|
Pass | Receive a successful step-up authentication response | Enter code 12345 |
Fail | Receive a failed step-up authentication response | Enter any code other than 12345 |
Cancel | Close challenge to receive an incomplete step-up authentication response | Select Cancel |
Updated about 16 hours ago