Jump to content
Latest News: (loading..)
mcmannehan

PayPal App v5.000

Recommended Posts

hi

sorry if this sounds stupid,

but if im using the Paypal App with my paypal api credentials.

on the settings for paypal standard which im using

ive set the PDT token

but do i still require a public certificate, private key and openssl also?

 

 

Share this post


Link to post
Share on other sites

I'm getting spurts where I see the errors below in my site error log and at the same time failed transactions.  The paypal log also shows unknow error.  I manually upgraded to 5.018 months ago.  Most of the time it works fine but I do get missed sales.  The undefined variables and indexes vary.  Does anyone have any ideas?

[27-Aug-2017 10:47:34 America/New_York] PHP Notice:  Undefined index: address_status in /home/username/public_html/includes/modules/payment/paypal_standard.php on line 869
[27-Aug-2017 10:47:34 America/New_York] PHP Notice:  Undefined index: pending_reason in /home/username/public_html/includes/modules/payment/paypal_standard.php on line 872
[27-Aug-2017 14:53:34 America/New_York] PHP Notice:  Undefined index: address_status in /home/username/public_html/includes/modules/payment/paypal_standard.php on line 869
[27-Aug-2017 14:53:34 America/New_York] PHP Notice:  Undefined index: pending_reason in /home/username/public_html/includes/modules/payment/paypal_standard.php on line 872
[27-Aug-2017 14:53:34 America/New_York] PHP Notice:  Undefined property: paypal_standard::$email_footer in /home/username/public_html/includes/modules/payment/paypal_standard.php on line 795
[27-Aug-2017 14:53:36 America/New_York] PHP Notice:  Undefined index: pending_reason in /home/username/public_html/includes/modules/payment/paypal_standard.php on line 872

[29-Aug-2017 06:51:35 America/New_York] PHP Notice:  Undefined variable: products_ordered_attributes in /home/username/public_html/ext/modules/payment/paypal/standard_ipn.php on line 150
[29-Aug-2017 06:51:35 America/New_York] PHP Notice:  Undefined index: comments in /home/username/public_html/ext/modules/payment/paypal/standard_ipn.php on line 164
[29-Aug-2017 06:51:35 America/New_York] PHP Notice:  Undefined property: paypal_standard::$email_footer in /home/username/public_html/ext/modules/payment/paypal/standard_ipn.php on line 190
[29-Aug-2017 06:51:35 America/New_York] PHP Warning:  session_destroy(): Trying to destroy uninitialized session in /home/username/public_html/includes/functions/sessions.php on line 151

 


I'm not really a dog.

Share this post


Link to post
Share on other sites

@Harald Ponce de LeonHello Harald,

Tried to install latest PayPal app on a store with only digital/downloadable products. I get the error message " 10004 - Transaction refused because of an invalid argument. See additional error messages for details. - You are not signed up to accept payment for digitally delivered goods. "

There is no option in my spanish PayPal account for to accept digital goods and I contacted the spanish PayPal support and they do not know anything about this option.
In older versions this worked.

Discount coupon add on seems doesn't work any more with the latest PayPal app version in the sense that the discount isn't passed to PayPal. (SSL and Instant update set to true).

On the Checkout confirmation page the discount shows correct and order total is correct. Not so on the PayPal payment page.

This also worked correct in older versions.

Thanks

Rainer

Share this post


Link to post
Share on other sites

I am also seeing that order total discounts are not being passed to Paypal, although they do appear on the order confirmation page. 


Contributions: Better Together and Quantity Discounts, for osCommerce 2.2, 2.3.x and 3.0. See my profile for more details.

Share this post


Link to post
Share on other sites

Isn't it about time this shortcoming was fixed?  This *will* cause people to abandon checkout because they'll think they are not getting their discount. 


Contributions: Better Together and Quantity Discounts, for osCommerce 2.2, 2.3.x and 3.0. See my profile for more details.

Share this post


Link to post
Share on other sites

About the "Verify SSL" option. If it's set "False" and I test the connection using TLS v1.2 it returns success but if I set true to verify the SSL and test again the connection both TLS v1.2 or Default fails.

Am I missing something?

Share this post


Link to post
Share on other sites

cURL Version: 7.58.0
cURL SSL Version: OpenSSL/1.0.2n

Default Setting: Failed
TLS v1.2: Failed

A connection to PayPal could not be made using TLS v1.2. Please consult with your hosting provider to upgrade the cURL version that is installed with your PHP web server to support TLS v1.2 connections.

This must be performed by June 30, 2017 otherwise connections will continue to fail.

Share this post


Link to post
Share on other sites
1 hour ago, sinopia said:

Please consult with your hosting provider to upgrade the cURL version that is installed with your PHP web server to support TLS v1.2 connections.

I'm not sure if you were asking a question or providing some information but if it's the former I think you need to contact your host about upgrading cURL.

Dan

Share this post


Link to post
Share on other sites

Hi @Dan Cole,

Well it was kinda a question. I want to use TLS v1.2 and if I test the connection both fails. What I don't understand is that if I set "Verify SSL" to false and test the connection both results are success?

I've contact the hosting provider about this issue.

 

Edited by sinopia

Share this post


Link to post
Share on other sites

Based on your post above it looks like your version of cURL is not using the correct version of SSL which is why I was suggesting that you contact your host about updating it.

Quote

cURL SSL Version: OpenSSL/1.0.2n

Dan

 

Share this post


Link to post
Share on other sites

@Dan Cole Can you try and test on your site?

I'm using the same version of curl  7.58.0 and OpenSSL/1.0.2n.  I've always passed when I've tested before, but I'm getting a failed response now also.  I got a Paypal order yesterday though.  I haven't tried the test button in months but never got a failed before.  

 


I'm not really a dog.

Share this post


Link to post
Share on other sites

It says " This must be performed by June 30, 2017 otherwise connections will continue to fail. "

Does that mean that the test isn't good after that date and that's why we're receiving a fail?

 


I'm not really a dog.

Share this post


Link to post
Share on other sites

I think there must be a problem with the test function because we wouldn't be able to process now if it wasn't working.


I'm not really a dog.

Share this post


Link to post
Share on other sites
1 hour ago, John W said:

Can you try and test on your site?

Sorry I'm not running the same version of the PayPal APP, or Curl for that matter, so any test I can do won't be very relevant.

Dan

Share this post


Link to post
Share on other sites

I'm wondering if the test function doesn't work anymore or is just temporarily not working.  Authorize.net suggests using this code to test in php weather it's working. I know my tls 1.2 is working because I'm getting orders in.  @sinopia  Have you tried running an order? 

 

<php
$ch = curl_init('https://www.howsmyssl.com/a/check');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);

$json = json_decode($data);
echo $json->tls_version;

echo "<br><br>";

$curl_info = curl_version();
echo $curl_info['ssl_version'];

 


I'm not really a dog.

Share this post


Link to post
Share on other sites
46 minutes ago, John W said:

What version are you running? 

Humm.....let me just say that it might be a bit older than that.  :biggrin:

Dan

Share this post


Link to post
Share on other sites

@John W I haven't. I just don't understand if I test the connection with the option "Verify SSL" disabled the connection return with success and if I enable to verify ssl both fails.

So you confirm that your orders with that option enable and working correctly?

Share this post


Link to post
Share on other sites

I've followed this guide: https://github.com/paypal/TLS-update#php

And TlsCheck.php returns me: PayPal_Connection_OK

Which cURL is connecting to: curl_setopt($ch, CURLOPT_URL, "https://tlstest.paypal.com/"); 

But first result gave:

string(79) "OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to tlstest.paypal.com:443 " DEBUG INFORMATION: ########### CURL VERSION: { "version_number": 473600, "age": 4, "features": 3130269, "ssl_version_number": 0, "version": "7.58.0", "host": "x86_64-redhat-linux-gnu", "ssl_version": "OpenSSL\/1.0.2n", "libz_version": "1.2.3", "protocols": [ "dict", "file", "ftp", "ftps", "gopher", "http", "https", "imap", "imaps", "ldap", "ldaps", "pop3", "pop3s", "rtsp", "scp", "sftp", "smb", "smbs", "smtp", "smtps", "telnet", "tftp" ] }

Share this post


Link to post
Share on other sites

Other quickly question, I'm using HTML mails in the entire shop but I've in the paypal module by default send uses the tep_mail function I've edited it to use the same as checkout_process:

      if (file_exists(DIR_WS_MODULES.'mail_manager/order_confirm.php')){
        include(DIR_WS_MODULES.'mail_manager/order_confirm.php'); 
      } else { 
        tep_mail($order->customer['firstname'] . ' ' . $order->customer['lastname'], $order->customer['email_address'], EMAIL_TEXT_SUBJECT, $email_order, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); 
      }

As it redirect to checkout_success.php the mail should be sent in paypal_standard.php but using this it won't sent if I leave the default tep_mail it send the content in plain text. How can I send this when a order is made in paypal?

I'm a bit confused because appear this message:

If Auto Return for Website Payments is enabled in your PayPal Profile account settings, the following URL must be used as the Return URL:
https://www.website.com/checkout_process.php

So after the payment it redirect to checkout_process.php then to checkout_success.php? Because neither the mail is sent in paypal_standard.php or checkout_process.php it the details of the order the only mail is sent from paypal.

Edited by sinopia

Share this post


Link to post
Share on other sites

About the email I think it's because the paypal_standard.php uses the variable $order_id and checkout_process.php and the mail_manager module uses the variable $insert_id, could it be from that?

I think if I set something like:

if (strpos($order->info['payment_method'], 'PayPal') !== false) {
	$insert_id = $order_id;
}

It should get the sent it correctly?

Share this post


Link to post
Share on other sites

I'm not sure on your email questions, but I'm getting orders withi Paypal.  When I used to do the test it would pass.  Now it fails, but i know I have tls 1.2 and have the whole time with this sever.


I'm not really a dog.

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

×