cancel
Showing results for 
Search instead for 
Did you mean: 

Expiration date is invalid, but getting Credit Card mismatch error.

In VT, I have set CVV settings to reject transaction if CVV is missing or if the right one wasn't provided. I am testing this in Vertial Terminal using the Auth.Net payment form. When i enter the wrong expiration date for MasterCard, Auth.Net flags the CVV as invalid when it should have flagged expiration date. If i change the expiration date to the right date the trasaction gets approved.

 

Can anybody shed some light on this. Looks like a bug to me.

sakopov
Member
9 REPLIES 9

Sakapov

 

If you provide a bit more detail, it will help further troubleshoot your issue.  For example, what specifically are you providing as the "wrong" and "right" expiration dates?

 

Richard 

RichardH
Administrator Administrator
Administrator

I cannot give out more information since i'm dealing with live CC numbers.

 

Here is how i can reproduce this issue. I go to Virtual Terminal which is running in live mode. I use the payment form to enter a valid MasterCard account number, CVV, Amount of $3, All name/address fields and invalid expiration date, which is an arbitrary date in mmyy format as the form expects. When i submit this transaction it fails with the error message saying that CVV is invalid, which is in fact VALID. What isn't valid is the expiration date. When i change expiration date back to the correct one, the transaction goes through okay. So, it appears that expiration date validations are getting flagged w/ incorrect response on failures. Now, i am NOT using the API. I'm using the standard payment screen in Virtual Terminal. 

Here is the same exact issue reported earlier and left unresolved (to the best of my understanding).

 

http://community.developer.authorize.net/t5/Integration-and-Testing/Can-t-validate-or-charge-VISA-or...

Can you reproduce this in the Sandbox using the MC test credit card?  If yes, what did you use for the right and wrong expiration dates?

 

https://sandbox.authorize.net

 

http://community.developer.authorize.net/t5/Integration-and-Testing/Test-Credit-Card-Numbers/m-p/765...

We had customers complain that their CVV is correct, but the system kept telling them that it was invalid, when they were really just mistyping their expiration date. While our backend uses the auth.net API, i went directly to VT to test this out and i was able to reproduce this with any real MC card with invalid expiration date being entered. It doesn't matter what date you use. I punched in arbitrary 0613 (mmyy) and it declined the transaction. But as soon as i entered the expiration date belonging to the card, it no longer complained that CVV was invalid and let the transaction through.

 

Now, perhaps i am misunderstanding something, but I don't see how i can test this scenario in sandbox w/ a fake but valid MC account number. The Sandbox environment doesn't actually "talk" to banks, so how would it know if the expiration date is valid or not if the account number is fake? We have unit-tests which replicate these scenarios by feeding auth.net certain values to trigger certain responses in Sandbox, but this is not a good test. Sandbox will just let everything through so long as it's a valid card number. But like i said maybe i'm missing something. I'll take another look at it in sandbox.

 

UPDATE.

I tried to repro this in sandbox and it just blows everything through as successful transaction.

What was the response reason code when it happend with the auth.net API? The card code response field?

The response code returned is 2. Response reason code is 65. 

 

Looking at this sheet: http://www.authorize.net/support/merchant/Transaction_Response/Response_Reason_Codes_and_Response_Re...

 

I'd be expecting the following response:

Response Code: 2

Response Reason Code: 316

Description: The credit card expiration date is invalid.

I wonder if it got reject when the CCV was 'P' not process because the expiration date is invalid.

I know this is a 3 year old topic but I am having the exact same problem.  I type in an invalid exp date and it complains about "card code mismatch with the card code on file".  Any ideas how I can differentiate between an invalid date and invalid card code?