Jump to content
Philip79

paypal_ipn.php,v 2.3.4.8 Error Messages

Recommended Posts

In the past couple of weeks I have started receiving error messages from the paypal_ipn module with the subject of "PayPal IPN Invalid Process" and the email messages contains only the folliwng message:

 

$_POST:


$_GET:

 

I have had this module, version 2.3.4.8, installed and workign for several years without issue.  However in the past couple of weeks my hosting service moved my web site to new servers.  My settings within the IPN module are:

 

Enable Encrypted Web Payments = false

Working Directory = /tmp/
OpenSSL Location
= /usr/bin/openssl  (this location may have changed as a result of the move to the new server but since encrypted web payments is set to false this should not be affected, correct?)

 

On the PayPal web side I found that the Instant Payment Notification Preference had been disabled.  I do not know if that was enabled before or not.  I decided to enable it as the refernce books that I have on osCommerce indicate that the path for the ipn module should be recorded there = (my web site)/ext/modules/payment/paypal_ipn/ipn.php

 

Any suggestions on why I have been receiving there error messages?  Thank you.

Share this post


Link to post
Share on other sites

Hi Philip..

 

v2.3.4.8 seems to be a third-party add-on. You might want to try the official add-on that is bundled with our releases:

 

http://addons.oscommerce.com/info/5655

 

Take note of your current module configuration and uninstall the module. Copy the files over from the official add-on, install it from your module configuration page, and re-enter the configuration values again.


:heart:, osCommerce

Share this post


Link to post
Share on other sites

Harald, thanks for your reply.  It is actually the standard 2.3.4.7 version with a change for the character set and the currency and a few lines added for the coupons add-on.  Also a couple of lines added to check if the working directory exists before opening the file in the working directory, writing data to the data.txt file and closing it (see below):

 

        if (!file_exists(MODULE_PAYMENT_PAYPAL_IPN_EWP_WORKING_DIRECTORY)) {
            mkdir(MODULE_PAYMENT_PAYPAL_IPN_EWP_WORKING_DIRECTORY, 0755);
        }

 

paypal_ipn.php does not include any output of $_POST: so is that coming from the ipn.php module based upon the code I have reviewed this is because of tep_not_null (line #320):

 

    if (tep_not_null(MODULE_PAYMENT_PAYPAL_IPN_DEBUG_EMAIL)) {
      $email_body = '$_POST:' . "\n\n";
      foreach ($_POST as $key => $value) {
        $email_body .= $key . '=' . $value . "\n";
      }
      $email_body .= "\n" . '$_GET:' . "\n\n";
      foreach ($_GET as $key => $value) {
        $email_body .= $key . '=' . $value . "\n";
      }
      tep_mail('', MODULE_PAYMENT_PAYPAL_IPN_DEBUG_EMAIL, 'PayPal IPN Invalid Process', $email_body, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS);
    }
 

However I don't see any value in the email message.  Perhaps this is due the character set I used and the new servers not supporting utf-8?

Share this post


Link to post
Share on other sites

I beleive that I discovered the problem.  When the hosting compnay moved my web site to another server and drive they changed the permissions.  I checked in the Troubleshooting section of the documentation for the v2.3.4.7 paypal_ipn.php and the second bullet suggested attempting to open the /ext/modules/payments/paypal_ipn/ipn.php file.  I received a file not found message.  So I checked the permission to the ext directory and it was not set to 644.  So I changed the permissions and received a blank screen as documented.  However I just received another error email message: 

 

$_POST:


$_GET:

 

Again no values present in the message.

Share this post


Link to post
Share on other sites

Thanks for the link but that it for paypal standard not paypal_ipn.  It turns out that the hosting provider did not change the DNS entry when they moved my site to the new server.  So I have been making the changes to the new server and the customers are still pointing to the old server.    I changed the directory permissions on the /ext/ directory to 644 from 770.  So perhaps that will correct the problem?  I have also asked for a complete refresh of the new server and for them to hold off on the DNS entry changes until everything is working properly on the new server that I have the ip address now.

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

×