Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Linkpoint MS1 and MS2 mod


knifeman

Recommended Posts

Hi,

 

I am using the linkpoint mod 1_4_1_2.zip

 

Everything does ok, except when customers request a different shipping address. Linkpoint receives the shipping address instead of the billing address. Consequently approval codes are messed up because addresses don't match. Does anyone know where to fix this?

 

Thank you,

 

Tim

Link to comment
Share on other sites

1) I don't have a solution yet, but I'll confirm that I'm having the same problem. I just installed the Linkpoint API contibution #3010.

 

I noticed this problem when I entered the shipping address as the default & then changed the billing address on the CC entry page. It sent the shipping address to Linkpoint. Of course it didn't verify.

 

 

 

2) Another item I wanted to mention. Using FTP Pro I wasn't able to copy the '.htaccess' file to my linux server. I took out the '.', copied the file, and then renamed it on the server to put the '.' back.

 

I get the impression that the .htaccess file is used to prevent people from searching into the LINKPOINT directory and finding the .pem information. I'm not sure I did this right (or if it applies to linux servers), but I made sure that I couldn't type the URL into my browser to go directly to the directory (I get a "403 Forbidden" message).

Link to comment
Share on other sites

Ok, it looks like the address problem is caused by errors in the linkpointms1.php file.

 

Compared to the authorizenet.php file, it incorrectly refers to orders->customer['xxxxx'] instead of orders->billing['xxxx']

 

The following changes work for me. Let me know if they solve your problem.

 

 

 

--- Look for the following code (near line 182) -----------------------------------

 

//TN EOF fuzz method

tep_draw_hidden_field('x_Billing_Address', $order->customer['street_address']) .

tep_draw_hidden_field('x_Billing_Address_Verification', $order->customer['street_address']) .

tep_draw_hidden_field('x_Billing_City', $order->customer['city']) .

tep_draw_hidden_field('x_Billing_State', $order->customer['state']) .

tep_draw_hidden_field('x_Billing_Zip', $order->customer['postcode']) .

tep_draw_hidden_field('x_Billing_Country', $order->customer['country']) .

 

 

--- And change to the following -------------------------------------------------------

 

//TN EOF fuzz method

tep_draw_hidden_field('x_Billing_Address', $order->billing['street_address']) .

tep_draw_hidden_field('x_Billing_Address_Verification', $order->billing['street_address']) .

tep_draw_hidden_field('x_Billing_City', $order->billing['city']) .

tep_draw_hidden_field('x_Billing_State', $order->billing['state']) .

tep_draw_hidden_field('x_Billing_Zip', $order->billing['postcode']) .

tep_draw_hidden_field('x_Billing_Country', $order->billing['country']) .

 

 

--------------------------------------------------------------------------------------

Link to comment
Share on other sites

Ok, it looks like the address problem is caused by errors in the linkpointms1.php file.

 

Compared to the authorizenet.php file, it incorrectly refers to orders->customer['xxxxx'] instead of orders->billing['xxxx']

 

The following changes work for me. Let me know if they solve your problem.

--- Look for the following code (near line 182) -----------------------------------

 

          //TN EOF fuzz method

                              tep_draw_hidden_field('x_Billing_Address', $order->customer['street_address']) .

                              tep_draw_hidden_field('x_Billing_Address_Verification', $order->customer['street_address']) .

                              tep_draw_hidden_field('x_Billing_City', $order->customer['city']) .

                              tep_draw_hidden_field('x_Billing_State', $order->customer['state']) .

                              tep_draw_hidden_field('x_Billing_Zip', $order->customer['postcode']) .

                              tep_draw_hidden_field('x_Billing_Country', $order->customer['country']) .

--- And change to the following -------------------------------------------------------

 

          //TN EOF fuzz method

                              tep_draw_hidden_field('x_Billing_Address', $order->billing['street_address']) .

                              tep_draw_hidden_field('x_Billing_Address_Verification', $order->billing['street_address']) .

                              tep_draw_hidden_field('x_Billing_City', $order->billing['city']) .

                              tep_draw_hidden_field('x_Billing_State', $order->billing['state']) .

                              tep_draw_hidden_field('x_Billing_Zip', $order->billing['postcode']) .

                              tep_draw_hidden_field('x_Billing_Country', $order->billing['country']) .

--------------------------------------------------------------------------------------

 

I tried that code change and received this error on the page:

There has been an error processing your credit card, please try again : Could not execute curl

 

Thanks for trying.

Link to comment
Share on other sites

It sounds like you might have gotten a parse error if the line ending and concatenation markds didn't match up properly when you cut and pasted.

 

It might be easier for you to apply the changes by changing "->customer" to "->billing" on the billing address fields.

Link to comment
Share on other sites

It sounds like you might have gotten a parse error if the line ending and concatenation markds didn't match up properly when you cut and pasted.

 

It might be easier for you to apply the changes by changing "->customer" to "->billing" on the billing address fields.

 

 

I changed the Customer Billing Country a while back.

but since then it seems that the information is not being passed.

My return from linkpoint only shows the Customer Billing country as ARRAY.

That is what is displayed in the Gateway Email that LinkPoint sends back.

 

Also, we worked out the curl issue a long time ago but it does not seem to get passed on very often.

If your server is returning the Can not Execute Curl Error.

Try this:

 

in Catalog/Includes/Linkpoint/lpphp.php

Find:

 

$ch = curl_init ();

curl_setopt ($ch, CURLOPT_URL,$host);

curl_setopt ($ch, CURLOPT_POST, 1);

curl_setopt ($ch, CURLOPT_POSTFIELDS, $xml);

curl_setopt ($ch, CURLOPT_SSLCERT, $key);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec ($ch);

}

Change to:

 

$ch = curl_init ();

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt ($ch, CURLOPT_URL,$host);

curl_setopt ($ch, CURLOPT_POST, 1);

curl_setopt ($ch, CURLOPT_POSTFIELDS, $xml);

curl_setopt ($ch, CURLOPT_SSLCERT, $key);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec ($ch);

}

 

This works anytime you get that error with a script.

If you choose not to decide you still have made a choice, I will choose a purpose clear, I will choose Free Will. --Neal Peart - Rush

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...