INTEGRATION
TRANSACTION ASSURANCE
CHARGES
DISPUTES & FRAUD
Sandbox
The sandbox environment is a controlled and simulated environment that allows clients to test and validate their integrations. Developers can use the sandbox to simulate various scenarios and test different functionalities of their applications. This includes testing data inputs, processing logic, error handling, and other critical integration aspects.
The primary purpose of the sandbox is to mimic the production environment as closely as possible, enabling clients to identify and resolve any issues or bugs without affecting genuine users and data.
The sandbox environment replicates the key components and configurations of the production environment. This includes APIs, service configurations, and other dependencies to closely mimic the real-world scenario in which the integration will operate.
The sandbox environment is isolated from the live system, ensuring that any tests or experiments conducted within the sandbox do not impact the actual production environment. This isolation provides a safe space to make changes and troubleshoot without risking disruption to live services.
AVS and CVC response result codes in the sandbox can be triggered. The values can be found in the authorizationIsoFields.networkSpecificFields
object in the charge response where the responses are presented as follows:
avsResultCode
(Visa),avsResponse
(Mastercard) andavsResult
(American Express)cvv2ResultCode
(Visa),cvcResult
(Mastercard) andcvcResult
(American Express)
The following cards can be used to complete the testing:
Mastercard: 5412332469619927
Visa: 4796089999934950
American Express: 341111889999994
Below is an overview listing the amounts that can be used to trigger the various AVS and CVC response codes:
Amount | Mastercard | Visa | American Express |
1000 | AVS - A | AVS - Y | AVS - A |
2000 | AVS - N | AVS - N | AVS - N |
3000 | AVS - R | AVS - A | AVS - R |
4000 | AVS - W | AVS - Z | AVS - Z |
5000 | AVS - X | AVS - R | AVS - Y |
6000 | AVS - Y | AVS - U | AVS - M |
7000 | AVS - Z | CVV - M | AVS - E |
8000 | CVC - M | CVV - N | AVS - F |
9000 | CVC - N | CVV - P | AVS - K |
10000 | CVC - P | CVV - S | AVS - L |
11000 | CVC - U | CVV - U | AVS - D |
12000 | N/A | N/A | CVC - Y |
13000 | N/A | N/A | CVC - N |
14000 | N/A | N/A | CVC - U |
Send a charge request with allowPartialApproval
set to true and the amount equal to 1010:
To verify that the payment is partially approved, check the amount.value
. The value in the response is smaller than the original requested amount, and the issuer response code is 10.
The merchant shall be able to display to the cardholder that this request is partially approved and offer other means for the rest of the payment. If the cardholder does not agree, the merchant can reverse this transaction.
The sandbox does not restrict what cards can be used on all charges endpoints, including card-present.
Only a limited set of pre-configured test cards are supported for the 3DS endpoints, as shown in the table.
A variety of transaction flow scenarios can be triggered based on the amount submitted in the amount.value
field in the request body on the /charges endpoints.
Visa
|
| Endpoint |
1005 | 05 |
|
1010 | 10 |
|
1014 | 14 |
|
1030 | 30 |
|
1051 | 51 |
|
1055 & | 55 |
|
1065 | 65 |
|
1075 | 75 |
|
1085 | 85 |
|
1091 | 91 |
|
Mastercard
|
| Endpoint |
1005 | 05 |
|
1010 | 10 |
|
1014 | 14 |
|
1030 | 30 |
|
1051 | 51 |
|
1055 & | 55 |
|
1065 | 65 |
|
1565 | 65 |
|
20.65 & | 65 |
|
1075 | 75 |
|
1085 | 85 |
|
10.87 | 87 |
|
10.91 | 91 |
|
American Express
|
| Endpoint |
1100 | 100 |
|
1101 | 101 |
|
1193 | 193 |
|
1194 | 194 |
|
1121 | 121 |
|
1116 | 116 |
|
1122 | 122 |
|
The cards in the following table can be used in the sandbox and have certain pre-configured countries and supported 3DS versions to aid in several 3DS testing scenarios.
Network | Card Number | CVC | AVS Required | CVC Required | EEA | 3DS | Card Country |
---|---|---|---|---|---|---|---|
Mastercard | 5413530000000501 | 196 | No | Yes | Yes | 2.1 | BELGIUM |
Mastercard | 5413530000000402 | 196 | No | Yes | Yes | 2.2 | BELGIUM |
Mastercard | 5413530000000303 | 196 | Yes | Yes | Yes | 2.2 | BELGIUM |
Mastercard | 5286940020000304 | 196 | No | Yes | No | None | USA |
Mastercard | 5286940020000205 | 196 | No | No | No | None | USA |
Mastercard | 5286940020000106 | 196 | Yes | Yes | No | None | USA |
Mastercard | 5286940020000007 | 196 | Yes | No | No | None | USA |
Mastercard | 5286940020000908 | 196 | No | Yes | No | 2.1 | USA |
Mastercard | 5286940020000809 | 196 | No | Yes | No | 2.2 | USA |
Visa | 4200350000000801 | 196 | No | Yes | Yes | 2.1 | GERMANY |
Visa | 4200350000000702 | 196 | No | Yes | Yes | 2.2 | GERMANY |
Visa | 4200350000000603 | 196 | Yes | Yes | Yes | 2.2 | GERMANY |
Visa | 4761070000000004 | 196 | No | Yes | No | None | USA |
Visa | 4761070000000905 | 196 | No | No | No | None | USA |
Visa | 4761070000000806 | 196 | Yes | Yes | No | None | USA |
Visa | 4761070000000707 | 196 | Yes | No | No | None | USA |
Visa | 4761070000000608 | 196 | No | Yes | No | 2.1 | USA |
Visa | 4761070000000509 | 196 | No | Yes | No | 2.2 | USA |
Bancontact | 2952000000000038 | N/A | No | No | Yes | 2.2 | BELGIUM |
Testing Discover in sandbox, works differently than testing the other card schemes in sandbox. The logic works on amount-based testing. The sandbox logic for Discover standardizes testing by structuring amounts into three distinct parts:
Scenario: A major identifier representing broad test case categories (e.g., regular authorizations, AVS, CVC, POS, etc.).
Test Case: A two-digit identifier that differentiates variations within a scenario (e.g., specific AVS letters or CVC responses).
Response Code: A three-digit number aligning with network-specific response codes.
Regular charge authorization test case, with response code 05 → use amount: 100005 (Do not honor)
See the table below for more amount based logic as described here above.
For POS scenarios, test cases have been adjusted due to a technical limitation that prevents amounts exceeding 5000, as higher values would trigger a PIN requirement. To accommodate this, the <test_case> portion has been removed, and only the <scenario> and <response_code> are used. The POS amounts have been designated under the 4XXX range to avoid conflicts with other test cases.
Test Card
Any card in the Discover BIN range can be used for testing in the sandbox environment. For example:
Discover 30000000-30599099 (Commercial Credit)
Amount | Description |
Regular Authorizations (0100) |
|
100005 | Do not honor |
100010 | Partial amount / Partial Approval |
100014 | Invalid account/card number |
100030 | Format error |
100051 | Insufficient funds/over credit limit |
100054 | Expired card |
100061 | Insufficient funds/over credit limit/Decline |
100065 | Exceeds withdrawal count limit |
100085 | No reason to decline a request for address verification, CVV2 verification, or credit voucher or merchandise return |
100101 | Expired Card / Invalid Expiration Date |
100116 | Not Sufficient Funds |
Reversal (0400) |
|
Default | Always approve reversal |
Reversal Advice (0420) |
|
Default | Always approve reversal advice |
POS (0100) |
|
3075 | Allowable number of PIN tries exceeded |
3087 | Purchase Amount Only, No Cash Back Allowed |
3091 | Issuer unavailable |
Specific AVS Codes (0100) |
|
401000 | AVS - A |
414000 | AVS - N |
418000 | AVS - R |
421000 | AVS - U |
423000 | AVS - W |
424000 | AVS - X |
425000 | AVS - Y |
426000 | AVS - Z |
Specific CVC Codes (0100) |
|
513000 | CVC - M (Match) |
514000 | CVC - N (No Match) |
516000 | CVC - P |
519000 | CVC - S |
521000 | CVC - U |
Network | Card Number |
---|---|
Mastercard | 5520330000002233 |
Visa | 4635440000002233 |
Bancontact | 2952000000000039 |