Forums / General Questions / authorize.net problems

authorize.net problems

Locked
Results 1 to 20 of 66
This thread is locked. New replies are disabled.
27 Dec 2006, 17:18
#1
scottb avatar

scottb

Zen Follower

Join Date:
Mar 2006
Posts:
205
Plugin Contributions:
0

authorize.net problems

I am attempting to set up authorize.net AIM with zen-cart. The live purchases are being processed by authorize.net but zen-cart is not reading the response correctly.

The purchaser receives a confirmation e-mail of the transaction and the transaction appears in the unsettled transactions at authorize.net

Zen-cart does not record the sale or send an e-mail to the seller.

This message appears when the confirmation button is pushed:

"Your credit card could not be authorized for this reason. Please correct any information and try again or contact us for further assistance."

Zen-cart must be mis-reading the response from authorize.net

Is there a solution?
27 Dec 2006, 17:40
#2
scottb avatar

scottb

Zen Follower

Join Date:
Mar 2006
Posts:
205
Plugin Contributions:
0

Re: authorize.net problems

I am using 1.3.6
27 Dec 2006, 19:23
#3
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,506
Plugin Contributions:
173

Re: authorize.net problems

1. Go to your authorizenet AIM module in ZC admin, and turn on the option to "Enable Database Storage"
2. Do a test transaction
3. Use phpMyAdmin to view the response/result data in the authorizenet table in your database to determine the cause of the problem
27 Dec 2006, 20:21
#4
scottb avatar

scottb

Zen Follower

Join Date:
Mar 2006
Posts:
205
Plugin Contributions:
0

Re: authorize.net problems

I followed your instructions. I did it live and test mode. The live mode shows the transaction was completed at authorize.net

This is what Zen-cart displayed:

"Your credit card could not be authorized for this reason. Please correct any information and try again or contact us for further assistance." and returned to step 2 of 3

The table showed:

response_code 0

transaction_id 0
28 Dec 2006, 11:09
#5
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,506
Plugin Contributions:
173

Re: authorize.net problems

1. record your API login name and your Transaction key, and all your other AIM module settings.
2. "remove" the module by clicking "remove" in the Zen Cart admin.
3. rename your current /includes/modules/payment/authorizenet_aim.php to authnet.old
4. upload the attached updated version of the file to your server
5. go back to Zen Cart admin and "install" the AIM module
6. edit the module settings and put back your API login name and transaction key, and then scroll to the bottom of the settings list and choose "Log and Email" for the debug mode.

Then try your test again and report back the results.


NOTE: ATTACHMENT DELETED -- Code is now included in v1.3.7
28 Dec 2006, 18:23
#6
scottb avatar

scottb

Zen Follower

Join Date:
Mar 2006
Posts:
205
Plugin Contributions:
0

Re: authorize.net problems

The live transactions are starting to appear in the bank. I have been using a couple of different credit cards to make $0.50 - $1.00 sample purchases.

The customer receives a confirmation of the order, the credit card is charged, the money is deposited in the bank but zen-cart displays an error, does not record the order or send the the admin an e-mail of the order.
28 Dec 2006, 20:15
#7
scottb avatar

scottb

Zen Follower

Join Date:
Mar 2006
Posts:
205
Plugin Contributions:
0

Re: authorize.net problems

I received this response in Zen-Cart:

"Your credit card could not be authorized for this reason. Please correct any information and try again or contact us for further assistance." and returned to step 2 of 3

I used a credit card in live mode that I knew would not clear. The denial appeared at authorize.net.

This is the log and e-mail I received: (all the blanked fields were correct)

Response Code: Array
(
[0] => *2*|*1*|*2*|*This transaction has been
declined.*|**|*Y*|*1297507907*|*1*|*Brazil Cerrado Natural(qty:
1)*|*1.00*|*CC*|*auth_capture*|*29*|*First Name*|*Last Name*|**|*Address*|*City*|*State*|*Zip*|*United
States*|*Phone*|**|*[email protected]*|*First Name*|*Last name*|**|*Address*|*City*|*State*|*Zip*|*United
States*|**|**|**|**|**|*52C3067353D0E6488836F7BAAD3B81BC*|*M*|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|*December
28 2006 3:14 pm*|*12.10.125.244*|*15c6cabaadc402b309463e12e948dea7*
)
Array
(
[0] =>
)
Sending to Authorizenet: Array
(
[x_login] => *******
[x_tran_key] => *******
[x_relay_response] => FALSE
[x_delim_data] => TRUE
[x_version] => 3.1
[x_type] => AUTH_CAPTURE
[x_method] => CC
[x_amount] => 1.00
[x_card_num] => *******XXXX
[x_exp_date] => 0909
[x_card_code] => *******
[x_email_customer] => TRUE
[x_email_merchant] => TRUE
[x_cust_id] => 29
[x_invoice_num] => 1
[x_first_name] => Name
[x_last_name] => Name
[x_company] =>
[x_address] => Address
[x_city] => City
[x_state] => State
[x_zip] => Zip
[x_country] => United States
[x_phone] => Phone
[x_email] => [email protected]
[x_ship_to_first_name] => Name
[x_ship_to_last_name] => Name
[x_ship_to_address] => Address
[x_ship_to_city] => City
[x_ship_to_state] => State
[x_ship_to_zip] => Zip
[x_ship_to_country] => United States
[x_description] => Brazil Cerrado Natural(qty: 1)
[Date] => December 28, 2006, 3:14 pm
[IP] => XX.XX.XXX.XXX
[Session] => 15c6cabaadc402b309463e12e948dea7
=> [URL]https://secure.authorize.net/gateway/transact.dll
)


Result: Array
(
[0] => *2*|*1*|*2*|*This transaction has been
declined.*|**|*Y*|*1297507907*|*1*|*Brazil Cerrado Natural(qty:
1)*|*1.00*|*CC*|*auth_capture*|*29*|*First Name*|* Last Name*|**|*Address*|*City*|*State*|*Zip*|*United
States*|*6183431844*|**|*[email protected]*|*First Name*|*Last Name*|**|*Address*|*City*|*State*|*Zip*|*United
States*|**|**|**|**|**|*52C3067353D0E6488836F7BAAD3B81BC*|*M*|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|**|*December
28 2006 3:14 pm*|*XX.XX.XXX.XXX*|*15c6cabaadc402b309463e12e948dea7*
)


CURL info: Array
(
=> [URL]https://secure.authorize.net/gateway/transact.dll
[content_type] => text/html
[http_code] => 200
[header_size] => 359
[request_size] => 972
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 1.597503
[namelookup_time] => 0.000963
[connect_time] => 0.090349
[pretransfer_time] => 0.295188
[size_upload] => 0
[size_download] => 581
[speed_download] => 363
[speed_upload] => 0
[download_content_length] => 581
[upload_content_length] => 0
[starttransfer_time] => 1.597449
[redirect_time] => 0
)
29 Dec 2006, 20:12
#8
scottb avatar

scottb

Zen Follower

Join Date:
Mar 2006
Posts:
205
Plugin Contributions:
0

Re: authorize.net problems

All of our live transactions have reconciled with the bank. Authorize.net is processing the transactions but Zen-Cart doesn't know about it.

This was fresh install of Zen-cart 1.3.6 from the zip I downloaded at zen-cart.org
29 Dec 2006, 20:31
#9
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,506
Plugin Contributions:
173

Re: authorize.net problems

Help me replicate your problem.

1. Fresh install of v1.3.6
2. Then what ?
What have you customized? What addons? What languages?
What currencies?
What country+zone is your store set to?
What zones have you created?
What addresses/zones are your customers using?
What credit cards are they using?
Which other admin-side settings have you changed? from what to what?
How do I set up a test site exactly like yours?




Who is your webhost? Would be interesting to know their server details.
29 Dec 2006, 20:33
#10
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,506
Plugin Contributions:
173

Re: authorize.net problems

If the data coming back from authorizenet is correct (as per the debug log), then one possibility might be that you have an incompletely-loaded PHP file somewhere causing this...

One way to find this out is to download everything from your site and compare it with the original fileset on your PC. This article talks about how to do that:
http://www.zen-cart.com/wiki/index.php/Troubleshoot_-_Diagnosing_Obscure_Issues
Or you could just re-upload all the files and check for failures. SmartFTP is bad for timing out and not telling you about failures. FileZilla is much better.
29 Dec 2006, 20:52
#11
scottb avatar

scottb

Zen Follower

Join Date:
Mar 2006
Posts:
205
Plugin Contributions:
0

Re: authorize.net problems

I uploaded the zip and extracted it via ssh root.

I own the servers. If I can e-mail you the login details, I will do so.

Send your e-mail to me via PM.

No customizations except the CSS
No add-ons
English only
US
no zones
US dollars only
MC and Visa only

Pretty straight forward install.
01 Jan 2007, 20:10
#12
billc108 avatar

billc108

Zen Follower

Join Date:
Apr 2005
Posts:
108
Plugin Contributions:
0

Re: authorize.net problems

Hi Dr. Bot et al.

I'm having similar problems with a 1.3.7 store.

This is a new store, still in testing though it was first built in Zen back in May in whatever version was current at the time and upgraded from there.

I've got another store on the same server running 1.3.5 (live) with Authorize.net AIM and it's connecting fine. I just ran another test to be sure that my addition of a second SSL Cert on the same server didn't cause any problems. Settings are essentially the same - different login and transaction codes is all.

I've uninstalled and reinstalled, replaced the module files with current ones, and checked over most everything. Still no go. Similar to the other user, the debug shows everything coming through fine.
01 Jan 2007, 20:11
#13
billc108 avatar

billc108

Zen Follower

Join Date:
Apr 2005
Posts:
108
Plugin Contributions:
0

Re: authorize.net problems

Scott B, you wouldn't happen to be running on Mac OS 1.3.9 would you?
02 Jan 2007, 02:55
#14
billc108 avatar

billc108

Zen Follower

Join Date:
Apr 2005
Posts:
108
Plugin Contributions:
0

Re: authorize.net problems

Perhaps another clue:

Using the non-AIM Authorize.net module results in the following error:

"An error occurred while trying to report this transaction to the Merchant. An e-mail has been sent to the merchant informing them of the error. The following is the result of the attempt to charge your credit card.

This transaction has been approved.

It is advisable for you to contact the merchant to verify that you will receive the product or service."

In this case, the transaction has been billed but there is no record of it in Zen. The item is still in the customer's shopping cart.

(uninstalled, reinstalled, with new transaction ID)
02 Jan 2007, 05:06
#15
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,506
Plugin Contributions:
173

Re: authorize.net problems

It would be really interesting to find out from authorizenet what *their* systems are saying is the reason for the error-alert even though they're *also* going ahead and charging the card.

It seems they're sending conflicting data back to Zen Cart and Zen Cart is erring on the side of caution and not accepting the order, rather than accepting it and leaving you to think that it's paid when it's not.
02 Jan 2007, 05:09
#16
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,506
Plugin Contributions:
173

Re: authorize.net problems

It would also be interesting to know what your authorizenet account settings are ... but there are too many possible options to list here.

You mentioned that you have it working fine for another account with diff ID and trans key. What happens if you put that other ID and trans key on *this* site and attempt a transaction? Does it give the same error, or does it go through fine? If so, it would behoove one to compare all the auth.net settings on the auth.net site as well as the merchant-bank choices/settings ... just in case the problem is in the account setup.
02 Jan 2007, 08:17
#17
billc108 avatar

billc108

Zen Follower

Join Date:
Apr 2005
Posts:
108
Plugin Contributions:
0

Re: authorize.net problems

The email from Authorize.net says:

"Authorize.Net Merchant,

Your script timed out while we were trying to post transaction results to
it.
Transaction ID: xxxxxxxxx
Transaction Result: This transaction has been approved."


I'd love to be able to run a test with the other store's ID and key, but will have to get pre-approval from the owner of that store first. Shouldn't be too big a problem, but won't happen tonight.

Will let you know when it happens.

Meantime, is there any place where I can lengthen the timeout setting, and see if that makes a difference? It does sit there and spin wheels for a bit before spitting out the rejection.

Or is there some code that I can throw in there to very simply capture what Auth is sending back and display it on the browser?
02 Jan 2007, 08:33
#18
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,506
Plugin Contributions:
173

Re: authorize.net problems

billc108:

Or is there some code that I can throw in there to very simply capture what Auth is sending back and display it on the browser?


The debug logging in v1.3.7 does that - captures what is received and stores it to file and/or emails it. Well, for failures it does. If you want to make it log successes too, run this via Install SQL Patch tool:
 UPDATE configuration set configuration_value = 'All' where configuration_key = 'MODULE_PAYMENT_AUTHORIZENET_AIM_DEBUGGING';
... this will cause it to log successes as well, which is apparently what's needed in the current case.
02 Jan 2007, 08:58
#19
billc108 avatar

billc108

Zen Follower

Join Date:
Apr 2005
Posts:
108
Plugin Contributions:
0

Re: authorize.net problems

Ok. Just ran the sql update, set to debug, and then ran a test purchase through.

Where do the zen logs live? Otherwise I have to wait until the store owner forwards me the email.
02 Jan 2007, 09:31
#20
billc108 avatar

billc108

Zen Follower

Join Date:
Apr 2005
Posts:
108
Plugin Contributions:
0

Re: authorize.net problems

Here ya go. Personal data obscured. Hope it helps.

Jan-02-2007 03:15:28
=================================

Response Code: Array
(
[0] =_ 1|1|1|This transaction has been approved.|002111|Y|1300806425|1|test product(qty: 1)|0.01|CC|auth_capture|3|CARDHOLDER|NAME||STREET|CITY|Texas|ZIP|United States|097979||EMAIL|CARDHOLDER|NAME||STREET|CITY|Texas|ZIP|United States||||||85AA43E830634AB49FBFD5594657F799|M||||||||||||||||||||||||||||||January 2 2007 3:15 am|205.238.129.205|ce5f65c2d956cfe444ddb3779e15ba11
)
Array
(
[0] =_
)
Sending to Authorizenet: Array
(
[x_login] =_ *******
[x_tran_key] =_ *******
[x_relay_response] =_ FALSE
[x_delim_data] =_ TRUE
[x_version] =_ 3.1
[x_type] =_ AUTH_CAPTURE
[x_method] =_ CC
[x_amount] =_ 0.01
[x_card_num] =_ *******xxxx
[x_exp_date] =_ xxxx
[x_card_code] =_ *******
[x_email_customer] =_ FALSE
[x_email_merchant] =_ FALSE
[x_cust_id] =_ 3
[x_invoice_num] =_ 1
[x_first_name] =_ CARDHOLDER
[x_last_name] =_ NAME
[x_company] =_
[x_address] =_ STREET
[x_city] =_ CITY
[x_state] =_ Texas
[x_zip] =_ ZIP
[x_country] =_ United States
[x_phone] =_ 097979
[x_email] =_ EMAIL
[x_ship_to_first_name] =_ CARDHOLDER
[x_ship_to_last_name] =_ NAME
[x_ship_to_address] =_ STREET
[x_ship_to_city] =_ CITY
[x_ship_to_state] =_ Texas
[x_ship_to_zip] =_ ZIP
[x_ship_to_country] =_ United States
[x_description] =_ test product(qty: 1)
[Date] =_ January 2, 2007, 3:15 am
[IP] =_ 205.238.129.205
[Session] =_ ce5f65c2d956cfe444ddb3779e15ba11
[url] =_ https://secure.authorize.net/gateway/transact.dll
)


Result: Array
(
[0] =_ 1|1|1|This transaction has been approved.|002111|Y|1300806425|1|test product(qty: 1)|0.01|CC|auth_capture|3|CARDHOLDER|NAME||STREET|CITY|Texas|ZIP|United States|097979||EMAIL|CARDHOLDER|NAME||STREET|CITY|Texas|ZIP|United States||||||85AA43E830634AB49FBFD5594657F799|M||||||||||||||||||||||||||||||January 2 2007 3:15 am|205.238.129.205|ce5f65c2d956cfe444ddb3779e15ba11
)


CURL info: Array
(
[url] =_ https://secure.authorize.net/gateway/transact.dll
[content_type] =_ text/html
[http_code] =_ 200
[header_size] =_ 359
[request_size] =_ 947
[filetime] =_ -1
[ssl_verify_result] =_ 0
[redirect_count] =_ 0
[total_time] =_ 1.221628
[namelookup_time] =_ 0.001516
[connect_time] =_ 0.073999
[pretransfer_time] =_ 0.294487
[size_upload] =_ 0
[size_download] =_ 416
[speed_download] =_ 340
[speed_upload] =_ 0
[download_content_length] =_ 416
[upload_content_length] =_ 0
[starttransfer_time] =_ 1.22155
[redirect_time] =_ 0
)