Test Cards

The test cards provided in the table below can be used to process transactions with a predefined output. Any other card numbers will generate a decline with 30016 as a response code.

CardNumberExp. MonthExp. YearCVV
Visa4920201996449560072027879
MasterCard5244209084665514072027010
Amex3416749496848980720271000
Diners Club30349475125576062027100
JCB3530111333300000062027100
Discover6011885753412897062027100

Response Codes

The table below shows the exact amounts (in pennies) that will trigger a specific predefined response. A charge with any other value than those listed, will return a successful/approved response; code (10000).

Amount (In Pennies)ResponseDescription
200520000You need to refer to the Card Issuer
200820003Declined - do not honour
201220023The card has been declined due to insufficient funds.
301630011Invalid transaction
401840000Risk Blocked Transaction refused due to risk model
502350000Validation error

AVS

The table below outlines the data to be used to test Address Verification System (AVS) response codes. Each input item triggers a predefined output. Any other value in the address line 1 field will return AVS check 'S' for unsupported.

Address Line 1AVS CheckDescription
Street_AAAddress matches, but zip code does not.
Street_EEAVS not supported for this industry.
Street_NNNo part of the address matches.
Street_SSAVS not supported.
Street_XXExact. Nine-digit zip code and address match.
Street_YYYes. Five-digit zip code and address match.

CVV

The card verification value (CVV) can be tested by entering the inputs below. The predefined elements in the description column will be received. Any other CVV will return CVV check "M" match.

Card CVVResponse CodeCVV CheckDescription
20130049U(Unknown) - Issuer is not certified and/or has not provided Visa encryption keys.
20240006N(No Match) – The CVD value provided does not match the CVD value associated with the card.
20310000M(Match) – The CVD value provided matches the CVD value associated with the card.
20430049Q(Unknown Response) – No results were received concerning the CVD value.
20530049P(Not Processed) – The CVD value was not processed.
20640003S(Not Present) – CVD should be on the card. However, the cardholder indicated it was not present.

Disabling Customer Recovery

The customer recovery can be disabled by setting the DisableCustomerRecovery field to True. This option is used on a new sale when you are charging the customer for the first time. The two cases are: producing an approved on billing cycle 1 then a declined on billing cycle 2, the second is, a declined with a disabled recovery that will generate a do not retry response code.

Amount (In Pennies)Disable Customer RecoveryResponse CodeDescription
6020True10000Approved
6020False20000You need to refer to the Card Issuer
7028True30080DO NOT RETRY - You need to refer to the Card Issuer

Advanced Void and Refund Testing

In the first scenario we can do a Charge approved transaction with the specified amount; If we do a Void on this recently approved Charge transaction, we will have a Decline response code. Now if we do a Refund for the same approved Charge transaction, it will be approved.

In the second scenario, we can do a Charge approved transaction for the specified amount and then do a Void for this transaction, the transaction will be approved and we will have the Approved response code.

In the third scenario, we can do a Charge approved transaction with the specified amount and then do a Refund for the same approved Charge transaction, the Refund transaction will be approved and we will have the Approved response code

The table below charts out exact amounts (in pennies) that will trigger a specific predefined response.

ScenarioAmount (In Pennies)Transaction TypeResponse CodeDescription
19000Charge10000Approved
Void30013The reversal request failed
Refund10000Approved
27514Charge10000Approved
Void10000Approved
39001Charge10000Approved
Refund10000Approved

Partial Refund

In the first scenario we can do a Charge approved transaction for the specified amount and then do a Refund for this transaction using ‘0’ as the refund amount, the refund transaction will be approved for the full amount and we will have the Approved response code.

In the second scenario we can do a Charge approved transaction with the specified amount; If we do a partial refund on this recently approved Charge transaction, we will have an Approved response code. Now if we do a Partial Refund for the remaining amount of the approved Charge transaction, it will be approved for the refund of the remaining amount.

In the third scenario we can do a Charge approved transaction for the specified amount and then do a Refund for this transaction using an amount higher than the Charged amount, the refund transaction will be Declined and we will have the Declined response code along with the Decline message.

The table below charts out exact amounts (in pennies) that will trigger a specific predefined response.

ScenarioAmount (In Pennies)Transaction TypeResponse CodeDescription
19000Charge10000Approved
0Refund10000The Approved and Full amount is refunded
27500Charge10000Approved
4000Refund10000Approved - Partial Refund
3500Refund10000Approved - Partial Refund
35000Charge10000Approved
5500Refund30015Declined – The external gateway has reported that you have submitted an invalid amount with your request.