
[Date Prev][Date Next][Thread Prev][Thread Next][Interchange by date
][Interchange by thread
]
[ic] Intermittent Checkout Problem
Hi Foks,
I had a customer who experienced a problem at checkout where an order he
placed was successful yet he was still returned to the checkout page and not
the receipt page.
The little feeback I got from the customer was that when he clicked Place
Order it took a long time for anything to happen but when something did
happen the checkout page was returned with an error message. Unfortunately,
he can't remember what the message was. However, the order was placed
successfully as it was added to the system and he got his order confirmation
email.
I've checked the various logs and no error was recorded and the extra
debugging information I added returned no error at all either. So my
question is, does anybody know why interchange would return to the checkout
page even though the order was placed successfully. I know its a very broad
question but at the moment I'm completely stumped as to how to track down
this problem.
I'm using the standard config that comes with 4.8.2 catalog.cfg for the
order routes and my order profile is as follows
__NAME__ checkout_profile
fname=required
lname=required
address1=required
city=required
country=required
[if value country =~ /^(US|CA)$/i]
state=state_province
zip=postcode
[/if]
&or phone_night=phone, phone_day=phone Must have day or evening phone number
&fatal = yes
email=required
email=email
&set = mv_payment Incomplete
[if value fax_order == 1]
&set = mv_payment Check or Money Order (will call)
[elsif value fax_order == 2]
project_id=required Please include your PO number
&set = mv_payment Purchase order [value project_id]
[value name=tmp_total set="[total-cost noformat=1]" hide=1]
[perl tables="pricing products userdb"]
$CGI->{credit_limit_ok} = 1;
my $total = delete $Values->{tmp_total};
return unless $limit = tag_data('userdb', 'credit_limit',
$Session->{username});
Log("credit_limit=$limit total=$total");
delete $CGI->{credit_limit_ok};
if($limit >= $total) {
$CGI->{credit_limit_ok} = 1;
}
return;
[/perl]
credit_limit_ok=mandatory Credit limit exceeded.
[/elsif]
[elsif value fax_order == 3]
&set = mv_payment COD
[value name=mv_handling set=cod hide=1]
[/elsif]
[elsif variable MV_PAYMENT_MODE]
&credit_card=standard keep __CREDIT_CARDS_ACCEPTED__
&charge=[var MV_PAYMENT_MODE][cgi mv_payment_test]
&set=mv_payment Real-time Credit Card (%c)
&fail=../special_pages/failed
[/elsif]
[elsif config CyberCash]
&fail=../special_pages/failed
&charge=[var CYBER_MODE]
[/elsif]
[elsif config CreditCardAuto]
mv_credit_card_valid=required Credit card fails tests.
&set=mv_payment Credit Card (%c)
[/elsif]
[else]
&credit_card=standard __CREDIT_CARDS_ACCEPTED__
&set=mv_payment Credit Card (%c)
[/else]
[/if]
&calc = $Values->{mv_payment} =~ s/\%c/$Values->{mv_credit_card_type}/g; 1;
&final = yes
&setcheck=mv_email [value email]
__END__
and my checkout form is
<FORM ACTION="/cgi-bin/cl/process.html" METHOD="POST" name=checkout >
<INPUT TYPE=hidden NAME=mv_session_id VALUE="MvMWy5j3">
<INPUT TYPE=hidden NAME=mv_doit VALUE=refresh>
<INPUT TYPE=hidden NAME=mv_nextpage VALUE="ord/checkout">
<INPUT TYPE=hidden NAME=mv_order_route VALUE="log main copy_user">
<INPUT TYPE=HIDDEN NAME=mv_check VALUE="Save_database">
Regards and thanks
Sheamus
_______________________________________________
interchange-users mailing list
interchange-users@interchange.redhat.com
http://interchange.redhat.com/mailman/listinfo/interchange-users