Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

checkout loop


bindoe

Recommended Posts

if there is an error entering one's credit card info during the checkout process instead of telling the person what the problem is.

 

ex.)

1. credit card name does not match

2. card expired

3. card refused

4. ect.

 

instead the checkout process restarts with no explaination and goes back to step one. this is very confusing because the peson does not know wether something is wrong with there card or if the site is just not working correctly.

 

can anyone pls. help me?

Link to comment
Share on other sites

hi jen,

 

it's not that the customer doesn't know what to enter. i'm talking about a situation where the customer files out the requested credit card informatin but then instead of allowing them to checkout the cart loops back to the begining with no explanatin. ....so the customer has to enter ther cc info again and then the same thing happens.

 

this happens for ex. when a customer enters their billing address but it does not match the billing address on file at their bank.

 

in this example the cart just keeps looping. the customer will not know that the billing address they entered is not correct because there is no message to tell them this. they will probably think they are doing nothing wrong and that the problem is with the site.

 

any suggestions.

Link to comment
Share on other sites

all my customers have disclaimers and instructions on what the customer needs to do for their credit card, also whether we will allow a separate billing/shipping address (possible if account setup properly, that is explained).

Link to comment
Share on other sites

if there is an error entering one's credit card info during the checkout process instead of telling the person what the problem is.

 

ex.)

1. credit card name does not match

2. card expired

3. card refused

4. ect.

 

instead the checkout process restarts with no explaination and goes back to step one.  this is very confusing because the peson does not know wether something is wrong with there card or if the site is just not working correctly.

 

can anyone pls. help me?

 

well much depends on who your processor is. they most likely return a "code" that says if the transaction is approved or declined and if declined why. Since this differs from merchant to merchant you will need to do a little research with them and get a list of their codes. Then you need to write some code to then parse these codes and then display the appropriate error messages. as far as I am aware, this is not built into osc as it would be almost impossible to code for every merchant out there.

 

I use authorize.net and added the code a couple of years ago and works well....not that hard to do if you are comfortable with writing PHP code....

 

good luck....

Link to comment
Share on other sites

hi carrerarod,

 

thanks for the reply, i also use authorize.net do you think you could post the code that you used.  that would really help me out.

 

Like I said, my shop is custom and would not work on anybody else's store BUT here is the snippet to decipher the codes returned by authorize.net...it's not all of them but a heck of a lot better than what the stock doesn't give us.

 

     	 <?php  if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 2)) {
    echo 'Possible Insufficient Funds.</font>';
 } 
    	 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 17)) {
    echo 'Credit Card Type Not Accepted.</font>';
 } 
 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 19)) {
    echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
 } 
   
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 20)) {
    echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
 }
 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 21)) {
    echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
 }
 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 22)) {
    echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
 }
 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 23)) {
    echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
 }
 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 25)) {
    echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
 }
 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 26)) {
    echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
 }
 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 27)) {
    echo 'Address provided does not match billing address of cardholder. Please verify your billing address and try again.</font>';
 }
 
 if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 28)) {
    echo 'Credit Card Type Not Accepted.</font>';
 } ?>

Link to comment
Share on other sites

  • 3 weeks later...

HI CARRERAROD,

 

CAN YOU TELL ME WHICH FILE YOU MADE THESE MODS TO?

 

REGARDS

BINDOE

 

Like I said, my shop is custom and would not work on anybody else's store BUT here is the snippet to decipher the codes returned by authorize.net...it's not all of them but a heck of a lot better than what the stock doesn't give us.

 

 ? ? ?	<?php ?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 2)) {
? ? echo 'Possible Insufficient Funds.</font>';
?} 
? ? ?	
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 17)) {
? ? echo 'Credit Card Type Not Accepted.</font>';
?} 
?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 19)) {
? ? echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
?} 
? ?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 20)) {
? ? echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
?}
?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 21)) {
? ? echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
?}
?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 22)) {
? ? echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
?}
?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 23)) {
? ? echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
?}
?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 25)) {
? ? echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
?}
?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 26)) {
? ? echo 'An error occurred during processing. Please try again in 5 minutes.</font>';
?}
?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 27)) {
? ? echo 'Address provided does not match billing address of cardholder. Please verify your billing address and try again.</font>';
?}
?
?if (isset($HTTP_GET_VARS['reason_code']) && ($HTTP_GET_VARS['reason_code'] == 28)) {
? ? echo 'Credit Card Type Not Accepted.</font>';
?} ?>

Link to comment
Share on other sites

HI CARRERAROD,

 

CAN YOU TELL ME WHICH FILE YOU MADE THESE MODS TO? 

 

REGARDS

BINDOE

 

As I mentioned before, I have a custom checkout system and that snippet of code is in a file that I wrote for my store and would not exist on your store. All you need to do is locate in your existing code for where authorize.net receives the return codes and take if from there...

 

most likely: /includes/modules/payment/authorizenet.php

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...