Jump to content
Sign in to follow this  
Vger

[CONTRIBUTION] Authorize Net AIM module

Recommended Posts

Hi Vger,

 

I have a problem, hope you have some suggestions for me. I just uploaded your contribution authorizenet_aim.php to my site include/modules/payment

However, after I uploaded that file, I went into admin page and I realized ALL the modules under Payment Modules disappeared (blank page). I then deleted authorizenet_aim.php from my site, and went back to admin page again, and all the modules under Payment Modules appeared again and went back to normal. Is there any conflict between authorizenet_aim.php with my admin setting? What do you think the problem may be? Your help is greatly appreciated.

Thank you very much.

 

Kingchui

Share this post


Link to post
Share on other sites
NM last post haha! I guess its working because after finalizing an order it returns to checkout_payment saying "(TESTMODE) This account has not been given the permission(s) required for this request."

Should I switch to Live in Authorize.netAIM to get orders going through because thats what I want to test?!

I started out with PayPal IPN and reached frustration level in their sandbox. Too many users and passwords. Eventually I just tried it LIVE and discovered it worked just fine.

Same thing with authorize.net AIM I loaded it, tried it a few times in test mode; some good, some bad, freaked myself out because my browser cookies stored everything including my ccv!!!, decided to go live (on an active store, late at night) saw it worked just fine and it's been working ever since.

Sometimes you realize customers are your best friends. ~ Hey wait a minute, they really always are!

If it's broken, they'll let you know. And how!

I added the "XXXX for credit card number" by jasonabc just to make us all feel more comfortable. ~ it all works fine.

 

Following is my notes on authorize .net settings

On a.net you go to account -> settings

Transaction version = 3.1

Direct Response =

Delimited Response = Yes

Default Field Separator = Comma

Field Encapsulation Character = blank

Address Verification Service =

All defaults ~ Reject if…first 6 & last of 11 boxes

Card Code Verification =

Reject if = Does not match

System Time Zone = is also set

 

If a card is rejected by a.net the error or reason is shown in the url (I guess)

Yeah, it would be great to have that on the page instead...somebody is going to do that and share it with us one of these days.

Share this post


Link to post
Share on other sites

One more question for anyone who can help me:

How do I NOT to store any credit card information with A.net AIM, not even masking them, I just don't want anything to do with customer's credit information. Thank you.

Share this post


Link to post
Share on other sites

I have this installed on my server and when I hit the button to pay it kicks me back to the page to fill out my credit card #, no error, but in the URL there is this:

 

checkout_payment.php?error_message=%20-%20Your+credit+card+could+not+be+authorized+for+this+reason.+Please+correct+the+i

nformation+and+try+again+or+contact+us+for+further+assistance.

Share this post


Link to post
Share on other sites

I'm having an odd issue with Authorize.net AIM. When a customer enters bad payment data (bad credit card or forgets to click the payment style box) then hits continue, and enters good information after being sent back they get 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."

 

Talking to authorize.net tech support this is a time out error. But it happens every time. Anyone have any idea how to fix this?

Share this post


Link to post
Share on other sites

Ok, I think I figured it out! It took me a lot of work but I tracked the issue down to cURL not having the SSL certs installed to talk to authorize.net!

 

If you have access to ssh, run this command to test if you're having my issue:

 

curl https://secure.authorize.net

 

If it returns:

 

curl: (60) error setting certificate verify locations:

CAfile: /etc/pki/tls/certs/ca-bundle.crt

CApath: none

 

Do this:

Download cacert.pem from http://curl.haxx.se/docs/caextract.html

In your curl error, where it says CAfile (/etc/pki/tls/certs/ca-bundle.crt) move cacert.pem to this file, so basically save cacert.pem as ca-bundle.crt in this folder

 

Retry curl https://secure.authorize.net and it should return html tags similar to:

<html>

<HEAD><TITLE>Authorize.Net</TITLE>

<META NAME="Authorize.Net -- Enabling more businesses to process transactions worldwide">

</HEAD>

<FRAMESET ROWS="100%,*" BORDER=0 FRAMEBORDER=0 FRAMESPACING=0>

<FRAME NAME="top" SRC="https://Account.authorize.net/ui/themes/anet/merch.app" NORESIZE>

</FRAMESET>

</HTML>

 

 

And voila, fixed!

Edited by MmmmGuinness

Share this post


Link to post
Share on other sites

Installed the module yesterday. Set up my authorize.net account. Everything has been working great. Only technical issue was the order# always showed 1. Used fix in forum and that is working great.

 

My Request,

 

This contribution does not store any of the credit card data in the database. As a customer usability function, I would like to store the card type and the last four digits of the card. Both of these elements are allowed under the PCI Compliance. Any suggestions to do ths?

 

thanks in advance.


It is amazing what you can do with osCommerce. You just have to get in there and have some fun.

 

www.the-wedding-printer.com. Currently using OsC with .....will have to add all of contributions in use someday.

Share this post


Link to post
Share on other sites
Installed the module yesterday. Set up my authorize.net account. Everything has been working great. Only technical issue was the order# always showed 1. Used fix in forum and that is working great.

 

My Request,

 

This contribution does not store any of the credit card data in the database. As a customer usability function, I would like to store the card type and the last four digits of the card. Both of these elements are allowed under the PCI Compliance. Any suggestions to do ths?

 

thanks in advance.

 

Which contribution did you install? It should store the card type and credit card # in the database.

Share this post


Link to post
Share on other sites
Which contribution did you install? It should store the card type and credit card # in the database.

 

I am using the March 18th, 2006 by Vger from the addons contribution located here.

 

This version changes the credit card information to post variables on the confirmation page and they never get loaded in to the order class. This makes all references of order->cc_data to be null fields and the info is never loaded into the database. I had to go to the check_out process page and change the the variable definitions to get the info I wanted stored.

 

original checkout_process code:

 
					'cc_type' => $order->info['cc_type'], 
					'cc_owner' => $order->info['cc_owner'],
					'cc_number' => $order->info['cc_number'],
					'cc_expires' => $order->info['cc_expires'],

 

Updated checkout_process code:

  
					'cc_type' => $_POST['cc_type'],  
					'cc_owner' => $_POST['cc_owner'], 
					'cc_number' => (substr_replace($_POST['cc_number'], ' xxxx xxxx xxxx ', 0, -4)), 
					'cc_expires' => $_POST['cc_expires'],

 

Vger had indicated in a post that he would be updating the code to not store credit card information due to PCI compliance. I had assumed he had made the change.

 

jeff


It is amazing what you can do with osCommerce. You just have to get in there and have some fun.

 

www.the-wedding-printer.com. Currently using OsC with .....will have to add all of contributions in use someday.

Share this post


Link to post
Share on other sites
I am using the March 18th, 2006 by Vger from the addons contribution located here.

 

This version changes the credit card information to post variables on the confirmation page and they never get loaded in to the order class. This makes all references of order->cc_data to be null fields and the info is never loaded into the database. I had to go to the check_out process page and change the the variable definitions to get the info I wanted stored.

 

original checkout_process code:

 
					'cc_type' => $order->info['cc_type'], 
					'cc_owner' => $order->info['cc_owner'],
					'cc_number' => $order->info['cc_number'],
					'cc_expires' => $order->info['cc_expires'],

 

Updated checkout_process code:

  
					'cc_type' => $_POST['cc_type'],  
					'cc_owner' => $_POST['cc_owner'], 
					'cc_number' => (substr_replace($_POST['cc_number'], ' xxxx xxxx xxxx ', 0, -4)), 
					'cc_expires' => $_POST['cc_expires'],

 

Vger had indicated in a post that he would be updating the code to not store credit card information due to PCI compliance. I had assumed he had made the change.

 

jeff

 

That's so weird. I am using the exact same contribution as well, and it does store credit card informations except CVV in db.

However, I want exactly what you don't want. I do NOT want to store any credit card information. I looked through all the posts and I am not able to find fix on this problem. Do you know how to NOT store credit card information in db?

Anyone??

Share this post


Link to post
Share on other sites

Having some trouble with this contribution. I have it installed along with the STS and SPPC contributions, as well as the UPS XML module and the Paypak IPN module. I set it up with the correct a.net login and password and set it to test mode.

 

When I attempt to check out, I go through the normal process of entering shipping and credit card info, then I confirm the order. At this point, OSC presumably contacts a.net to validate the credit card (though I'm not 100% positive it's redirecting to a.net), but I get bumped back to the credit card info page. There is an error in the URL (not displayed on the page) like this :

 

http://mysite.com/checkout_payment.php?err...md5orsha1string

 

Once I'm back at the credit card page, I re-enter the CC info (exactly the same as before) and go through the process again. This time, the credit card goes through and I am taken to the success page.

 

I have tried this about a dozen times now and it acts this way every single time. I have no idea what's causing it. Any thoughts?


XenoPhage

Share this post


Link to post
Share on other sites
When I attempt to check out, I go through the normal process of entering shipping and credit card info, then I confirm the order. At this point, OSC presumably contacts a.net to validate the credit card (though I'm not 100% positive it's redirecting to a.net), but I get bumped back to the credit card info page. There is an error in the URL (not displayed on the page) like this :

 

3 additional items. First, I figured out why the error wasn't displaying.. Seems it was a bug in STS which I've fixed by getting the latest version.. So, no biggie there.

 

Second, is the credit card code field needed? ie, is it used? It doesn't display on the checkout_confirmation screen, and if I leave it blank, the transaction goes through (on the test setting) as I described above.. (the whole submit it twice thing)

 

Finally, I found out (by accident) that if I reload the checkout_confirmation screen (allowing the form to be data to be reposted), then the transaction goes through. Still no clue what's causing this problem, though.

 

Any help would be appreciated!

 

Thanks!

 

Jason


XenoPhage

Share this post


Link to post
Share on other sites

I've had this contrib installed for about a week. Everything seems to work fine. The checkout process is normal, and the db even store the card info. When i go to orders, all of them are "Pending". When i go to my authorize.net account, it doesn't show any transactions. Called authorize.net and they said everything with the account is fine, and it was the problem was with the shopping cart. Any ideas? Thanks.

 

Rob

Share this post


Link to post
Share on other sites
Actually, since I posted that I found out that this order works for other payment modules being used at the same time as A Net:

 

require(DIR_WS_CLASSES . 'order_total.php');

$order_total_modules = new order_total;

 

$order_totals = $order_total_modules->process();

 

// load the before_process function from the payment modules

$payment_modules->before_process();

 

To make A Net work with that setting in checkout_process and with CCGV(trad) and the osCommerce Pay Pal IPN make these few changes to the osCommerce Pay Pal IPN:

 

in includes/modules/payment/paypal_ipn.php

 

In the before_process function add these entries after $order,

 

$order_totals, $order_total_modules,

 

and then comment out or remove these lines (as shown), just a few lines below the above:

 

//include(DIR_WS_CLASSES . 'order_total.php');

//$order_total_modules = new order_total;

//$order_totals = $order_total_modules->process();

 

Now A Net works with other payment modules, including the osCommerce Pay Pal IPN, and CCGV(trad).

 

Vger

 

Thanks for this Vger, it just solved a headache I'd been having. Also, thanks for AIM - great work!

 

Scott

Share this post


Link to post
Share on other sites

Can anyone get the Authorize.net CIM API integrated to this module?

 

I have a client who all of a sudden wants to ofer her customers the option of saving their credit card information for future purchases (she is a wholesaler). I tried to talk her out of it to no avail. I took a look at Authorize.net and they have a "new" feature called the Customer Information Manager (CIM API).

 

If you don't want to toke the time to look at the link above, here is a general description of how it works:

 

Your Web site integrates to CIM via an Application Programming Interface (API). Through the API, you can create, view, update and delete customer profiles that include billing, payment and shipping information. When a transaction is processed using the API, a customer profile is created and stored on our secure servers. You receive a Customer Reference ID for that particular customer profile. From then on, you need only submit the Customer Reference ID in place of all customer information, including billing, payment and shipping information.

 

Any thought would be Great!!!

Share this post


Link to post
Share on other sites

I have checked and checked things over on my install but I cannot seem to get things working correctly. When I try testing I get an error across the top of the page in a red text box. It says...

 

(TESTMODE) This transaction cannot be accepted. Your credit card could not be authorized for this reason. Please correct any information and try again or contact us for further assistance.

 

I am not sure where to go from here and any suggestions would be greatly appreciated.

Share this post


Link to post
Share on other sites

Update***********

 

I cam across a post suggesting trying a new transaction key and holy cow what do you know works like a charm.

 

a bit of a headache to get working but oh it was sooo worth it nice contribution..

Share this post


Link to post
Share on other sites

I did a clean install of oscommerce and added the authorize.net AIM module

 

http://www.dalimamayoga.com/test/

 

the hosting is provided by Lunarpages

 

SSL is active and properly set in the configuration page

 

cURL is compiled

 

authorize.net account is active

 

when I go through the checkout process it does not show the credit card form on checkout payment page

 

it shows on the checkout confirmation and when I fill it, it doesn't work and sends me back to the checkout payment page

 

help please

Share this post


Link to post
Share on other sites

sorry if this has already been discussed but after installing this module i recieve this: Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/content/d/o/n/donruss1/html/store2/catalog/includes/filenames.php:1) in /home/content/d/o/n/donruss1/html/store2/catalog/includes/functions/sessions.php on line 97

at the top of my website.

im losing my hair over this. i have a template installed if it makes a diffrence.

Share this post


Link to post
Share on other sites

I'm having trouble with our shopping cart and the AIM module as well. I have the March 18 2006 version installed (and have tried other modules) and each time I try to process a card it kicks me back to the checkout_payment.php page with a general error in the URL and nothing else.

 

Here is the error I recieve:

 

checkout_payment.php?payment_error=authorizenet_cc_aim&error=general

 

I have checked configuration settings in the module and on Authorize.net. It is possible that I have missed something, but I'm honestly hoping it's something simple I'm overlooking.

 

I recompiled the server with curl today to make sure that wasn't the problem and I'm still getting the same results. I can use the standard Authorize.net module that comes with osCommerce (Milestone 2.2) and it will process the card and reject it because there is no CCV (and module doesn't give the option).

 

I'm sorry if there question has been answered in this post, but I honestly don't have time to wade through 40 pages of forum posts and my searches haven't yielded anything helpful. If someone has an answer or link to a fix for this issue I would be very grateful.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×