Jump to content

Archived

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

edschaum

authorize.net difficulties

Recommended Posts

My Authorize.net response string version is 3.1. That is my only option. No others are displayed.

 

Thanks,

 

Jason

Share this post


Link to post
Share on other sites

Hi Tom:

 

I thought I had responded a couple of days ago, but it is not here. So I guess i didn't. Anyway, thanks for the suggestion. I tried changing to "0", but still get an error. I saw your earlier post, and since the term "raq" didn't make much sense to me, I didn't try it. I don't know if iPowerWeb (my host) uses a raq server.

 

Thanks. I'm still open to suggestions.

 

Jason :cry:

Share this post


Link to post
Share on other sites

I had a heck of a time getting the adc authorizenet mod to work, but none of my efforts resulted in the blank page you describe. Have you considered working with a fresh install of oscommerce and trying again to add the adc modification? Your database will remain intact and if you put the fresh install in a work directory, you can fiddle with it, while your current install will continue to work unimpeeded.

Tom

 

PS, a raq is a server model, more accurately described as a Cobalt Raq Server.

Share this post


Link to post
Share on other sites

Boy, I hadn't considered starting with a fresh install of osC. The thought fills me with fear, though. I have spent at least 40 or 50 hours learning how to make the modifications that I have done. About the only things I hadn't touched were the payment modules. I am going to try to install the mod again, then see if I can work with Authorize.net tech support. I'll reinstall a new test site as a last resort. Since it is not really the database I am worried about...

 

Thanks for your suggestions.

 

Jason

Share this post


Link to post
Share on other sites

Well, for the sake of anyone who might be experiencing the same problem that I was, here is why it wasn't working. My host (iPowerWeb) has lots of servers, and they don't all have the same features and configurations. It turns out that while some of their servers have cURL installed, not all do. The server on which my site was installed did not. So, when I asked the tech guy the first time, he said "Yeah, we have cURL installed. It is in /usr/bin/curl." No problem. Except that my site didn't work. The second tech guy said, "Yeah, we have cURL, just not on your server. Let me transfer your site to another server." Problem solved.

 

Incidentally, the Authorize.net support people weren't much use. I got an email from one of their "engineers" who said that my problem is an error type 92: "The gateway no longer supports the requested method of integration."

 

Jason

Share this post


Link to post
Share on other sites

I'm glad to see you got it working. Congrats!

 

The install directions included a section on identifying the location and functionality of curl. My assumption was that you followed the directions... :D

 

Tom

Share this post


Link to post
Share on other sites

Yeah, sort of. I don't know if it is a Mac thing, but I couldn't get telnet to connect to my server, so I had to ask the tech guy if cURL was installed, and the correct path. I assumed (Yeah, I know how that breaks down) that he would give me a correct answer. Oh, well. Now on to better problems.

 

Jason

Share this post


Link to post
Share on other sites

DUH...

 

I was wondering why I was getting no feedback directly from Authorize.Net, but instead kept getting the generic "Problem with your card..." from OSC..

 

I was making the changes to httpdocs/catalog/ and not httpsdocs/catalog.

 

Anyway, here is the error

 

0: 3,1,103,This transaction cannot be accepted.,000000,P,0,,,5.18,CC,auth_capture,,,,,,,,,,,,,,,,,,,,,,,,,,3A838C4BBF4

9EC9FAF1AAB96DC82409B,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,a760016e284bd7116a132028ad242

f00

 

I'm running snapshot 2003-01-12

 

I have all of the setting that Bo suggested, except I'm using v3.1 (not 3) for Response String AND Direct Response Delimiter is set to Yes.

Share this post


Link to post
Share on other sites

okay I updated:

	exec("/usr/bin/curl -d "$data" https://secure.authorize.net/gateway/transact.dll", $response);

 

by removing the quotes around $data to:

	exec("/usr/bin/curl -d $data https://secure.authorize.net/gateway/transact.dll", $response);

 

and now i just get a white screen with the URL as:

 

 

https://www.mydomain.com/catalog/checkout_process.php

Share this post


Link to post
Share on other sites

I am running into some trouble as well. I'm using BN's contribution and can't seem to get it to work.

 

I have gone through BN's recommendations for error trouble shooting. Using BN's authorizenet_direct2.php file (the one that echoes the data that you SEND), everything comes up on the screen and looks to be correct.

 

Using the third file, which you echo what you RECEIVE from authorizenet, I get a blank screen.

 

I have verified my curl and openssl to be installed/supported (Cobalt Raq server). I am using the following within my send/authorizenet_direct2.php file:

 

exec("/usr/local/curl -k -d $data https://secure.authorize.net/gateway/transact.dll", $response);

 

I get a blank screen when I try to echo what I receive. Any clue, what should I possibly look into? Any help and suggestions would be appreciated. Thank you.

Share this post


Link to post
Share on other sites

It seems that this problem could be caused by several things. However, the issue is that your information is not leaving your site (your script is not connecting with Authorize.net). In my case, I was told that cURL was installed, and given the location. However, the tech support person gave me incorrect information. It took a phone call to get it straightened out. I don't know a lot about cURL, but if all is set up right in your site, then it might be that your server is not configured correctly (cURL, SSL libraries, etc.). This probably doesn't help much, but I'd look at your server configuation and maybe talk with tech support, unless you have your own server...

 

Jason

Share this post


Link to post
Share on other sites

I just recently attempted to get the authorize.net module working but was running into the same problems as others have written in this thread.

 

So I started to due some searching around abotu curl and php and discovered that my server was compiled with PHP in SAFE MODE. The Safe mode is designed for security purposes so others cannot use these commands. This will not allow you to use the exec command.

 

exec("/usr/bin/curl -d "$data" https://secure.authorize.net/gateway/transact.dll", $response);

 

So I discovered a forum of people with similar problems using curl but with other applications. One of the persons referred to another site and there in layed the solution.

 

Here is the code I use now, and it appears to be working wine.

 

unset($response);

 

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,"https://secure.authorize.net/gateway/transact.dll");

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

$response=curl_exec($ch);

curl_close ($ch);

 

Below is the site listed where the commands were extracted from.

 

http://www.php.net/manual/en/ref.curl.php

 

 

I hope this helps for others as this is a common problems from many hosting providers.

 

Good Luck!

 

Ryan

Share this post


Link to post
Share on other sites

Thank you for the suggestions, I will try them out. Hopefully I can get it to work!

Share this post


Link to post
Share on other sites

Ryan, THANK YOU VERY MUCH!!!!

 

Your code worked for me!! I finally got it to work using your recommended tip:

 

unset($response); 



$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL,"https://secure.authorize.net/gateway/transact.dll"); 

curl_setopt($ch, CURLOPT_HEADER, 0); 

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); 

curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 

$response=curl_exec($ch); 

curl_close ($ch);

 

I wasn't able to figure out whether my server was in safe mode or not. I tried looking into my admin/server tools, but didn't find anything that indicated that it was in safe mode. Anyhow, thank you so much for your help!

Share this post


Link to post
Share on other sites

After struggling with Curl and not being able to connect to Authorize.net I came across this gem on the Rackshack user forum. I upgraded the RPM's and my problems went away.

 

HOWTO: Easy CURL 7.10.2 w/SSL

We've put together these RPM's for libcurl 7.10.2 with SSL support. They upgrade over the stock RH ones. Installation is via rpm -Uvh

 

These have been tested to work with Modernbill and are Ensim compatible.

 

http://www.colours.us/curl-7.10.2-1.i386.rpm

http://www.colours.us/curl-devel-7.10.2-1.i386.rpm

Share this post


Link to post
Share on other sites

If you would like to test to see if PHP was compiled in safe mode, before you attempt to implement this change, please do the following.

 

Create a test file with just the following.

 

<?php

echo phpinfo();

?>

 

 

Not far down on this page you see Configuration, PHP Core area, there are 3 columns. Then in this area is the listing for safe mode.

 

Ryan

Share this post


Link to post
Share on other sites

Ryan, I verified that 'safe mode' was on for me.

 

If anyone else is having trouble, I would highly suggest trying out Ryan's advice and his code if you are on safe mode. It certainly helped me.

Share this post


Link to post
Share on other sites

After about five hours of screwing with this. This is what worked for me

 

// Post order info data to Authorize.net, make sure you have curl installed

exec("/usr/bin/curl -k -d "$data" https://secure.authorize.net/gateway/transact.dll", $response);

 

FYI, the server is running:

$ /usr/bin/curl -V ?

curl 7.10.2 (i386-redhat-linux-gnu) libcurl/7.10.2 OpenSSL/0.9.6g zlib/1.1.3

$

 

Thanks for everyone's help in this section.

Share this post


Link to post
Share on other sites

I'm having some trouble...

 

Installed BN's contribution for ADC and modified it with Ryan's advice regarding PHP in SAFE MODE.

 

When I enter a CC number, it processes it successfully when I enter a valid number and expiration date. It also functions properly when I enter a valid CC number and invalid expiration date (error msg comes up). One thing I notice is that it doesn't enforce any of the AVS security features. Supppose I enter a billing address that I know to be different from the auctual billing address...it still gets processes (even though I have it set to 'reject' in my authorizenet account).

 

Now, I've also installed the CCV contribution and now its' not functioning properly. The CCV mod doesn't seem to do function properly at all. Even if I enter an incorrect security code, the transaction will still be processed.

 

One thing I am trying to do, but am unsuccessful at is trying to display the information I receive from authorizenet using this:

 

	foreach($response as $key=>$value) // Testing

{  echo "$key: $value<br>";	}  // Testing echo out the result from authorizenet 

exit;       // Testing

 

I am able to process a transaction without these additional lines. When I added them in, I get a blank screen...

 

Any ideas?

Share this post


Link to post
Share on other sites

I haven't been able to fix this, nor do I know what is causing the problem. Maybe I can explain the problem a bit better...

 

- using the ADC contribution for authorizenet, it works when I enter a valid cc number

- I am trying to test the address verification security features within my authorizenet account, but it's not working. I can enter any billing address, and it still gets authorized (even though it is set to reject if not matching).

 

I have also installed the mod for CVV. Even if I enter an incorrect CVV value, it still gets processed as long as a correct credit card number is entered.

 

Trying to display the results of the information from authorizenet, but I just get a blank screen...

Share this post


Link to post
Share on other sites
unset($response);  

 

$ch = curl_init();  

curl_setopt($ch, CURLOPT_URL,"https://secure.authorize.net/gateway/transact.dll");  

curl_setopt($ch, CURLOPT_HEADER, 0);  

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);  

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);  

$response=curl_exec($ch);  

curl_close ($ch);

 

I get a

 

Fatal error: Call to undefined function: curl_init()

 

Almost sounds like curl isn't installed but my host sent me this in an email

 

This is the version of curl we support (/usr/bin/curl)

curl 7.8 libcurl 7.8 OpenSSL 0.9.6

 

I have no terminal access so I can only go by what my host tells me. I've tried everything in these last 10 pages of posts and can't get it to work argghhh **$^&$^*# . I called authorize.net and they said that I am getting an error 20 and my return page is timing out.

 

I've tried the authorizenet_direct.php debugging scripts and it looks like everything is sending correctly. The recieve page is just blank.

 

Please help!

Share this post


Link to post
Share on other sites

Do what Ryan Hlubb suggested earlier. Create a test file with just the following.

 

<?php

echo phpinfo();

?>

 

You will be able to gather the information from that file and see whether it's in safe mode or not, as well as the version numbers.

 

I've tried the debug scripts just like you and have the same problem: blank page when you try to see what authorizenet is sending back...

Share this post


Link to post
Share on other sites
Do what Ryan Hlubb suggested earlier. Create a test file with just the following.  

 

<?php  

echo phpinfo();  

?>  

 

You will be able to gather the information from that file and see whether it's in safe mode or not, as well as the version numbers.  

 

I've tried the debug scripts just like you and have the same problem: blank page when you try to see what authorizenet is sending back...

 

Yes, I have done that https://www.securedpage.com/~f1429/test.php and in fact I am in safe mode. But I thought safe mode didn't like the 'exec' command and this code ...

 

unset($response);  

 

$ch = curl_init();  

curl_setopt($ch, CURLOPT_URL,"https://secure.authorize.net/gateway/transact.dll");  

curl_setopt($ch, CURLOPT_HEADER, 0);  

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);  

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);  

$response=curl_exec($ch);  

curl_close ($ch);

 

was a work around and could be executed while in safe mode. So does anyone know why I'm getting a

 

Fatal error: Call to undefined function: curl_init()

Share this post


Link to post
Share on other sites

×