Jump to content



Photo
* * * * * 4 votes

Official PayPal IPN Support Thread


  • Please log in to reply
4140 replies to this topic

#4121   gbm

gbm
  • Members
  • 22 posts
  • Real Name:Artie

Posted 07 November 2011 - 17:54

I am using paypal_ipn.php,v 2.3.3.0

We are having a problem when some customers place a second order immediately after placing an order.
The second order will have the same order number as the previous order on the customer's invoice.
We receive the payment but there is no record of the second order in the database.
I have some customers that place multiple orders like this but only the first order will show up in the database.
This problem only shows up when they pay via Paypal.

Here's an example:

Customer John Smith comes to my shopping cart and wants to place two separate orders.
The first order is going to be shipped to himself.
John completes the first order and is given order number 2111.
After completing the first order he begins placing a second order that he will have shipped to his grandmother.
John completes the second order and is given order number 2111 for the second order as well.
I receive the payment for both orders.
However only the first order shows up in the database.
The only record of the second order is the fact that I have received payment for both orders.

I tried switching to POST for Return URL Behavior but the cart was still not cleared upon return.

I tried Auto Return and Payment Data Transfer on the paypal web site but it did not clear the cart upon return either.

I have tried it with a return URL in my PP account and without a return URL.
I can't see a difference.

I did some testing and when I pay for the first order and return to the shopping cart, the order IS recorded in the database but the items are STILL in my shopping cart.
When I pay for the second order and return to the shopping cart, the order is NOT recorded in the database but the items are CLEARED from the shopping cart.
At least that's what happened to me when I tested it.

I suppose I need to upgrade to a newer version or fix but the contribution page is confusing to me with some English, some German, and some out of order with the version numbers.

#4122   gbm

gbm
  • Members
  • 22 posts
  • Real Name:Artie

Posted 08 November 2011 - 20:57

What's the latest stable version in English?

#4123   birdsupplynh

birdsupplynh
  • Members
  • 7 posts
  • Real Name:Allen Fox

Posted 08 November 2011 - 22:05

Solution was to move the file to my catalog directory.

#4124   gbm

gbm
  • Members
  • 22 posts
  • Real Name:Artie

Posted 09 November 2011 - 14:57

What's the latest stable version of Paypal IPN module in English?

#4125   gbm

gbm
  • Members
  • 22 posts
  • Real Name:Artie

Posted 11 November 2011 - 16:11

Does anyone even answer questions here any more?
I guess the Paypal IPN is no longer being supported?

#4126   antonio04

antonio04
  • Members
  • 4 posts
  • Real Name:antonio

Posted 21 December 2011 - 09:16

Excused for my English.
I have installed the 1.3.0.0 version of paypa_ipn.
In my site I have installed also affiliated OSC 1.8.
I have this problem:
When the customer goes to paypal goes all good.
The site generates a number of order Es. 51200 with name " waiting for pagamento".
When the customer finishes the payment l' order n 51200 changes name " payment effettuato".
The problem arrives when the customer return from paypal to ../checout_process.php
Now it comes generated a new order with number 51201.
This generates confusion for the customers.
I kindly ask to help me
Grazie

#4127   Darren11

Darren11
  • Members
  • 32 posts
  • Real Name:Darren

Posted 08 January 2012 - 23:10

Hi, I installed the IPN and its showing the items good on Transaction Type: Per Item
but its not sending me emails when i check out or to the customers email (I am running in sandbox) and its not updating the order status.

Thanks for any help.

PHP Version 5.2.17

cURL Information libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5

osCommerce Online Merchant v2.2 RC2a

PayPal IPN v2.3.4.6

#4128   Darren11

Darren11
  • Members
  • 32 posts
  • Real Name:Darren

Posted 09 January 2012 - 07:29

Its fixed /smile.png' class='bbc_emoticon' alt=':)' />

Edited by Darren11, 09 January 2012 - 07:43.


#4129   OzDevWorX

OzDevWorX
  • Members
  • 4 posts
  • Real Name:Tim Gall

Posted 20 February 2012 - 11:48

I noticed in the lastest releases of this module (2.3.4.7), the file /includes/modules/payment/paypal_ipn.php contains a few bits of code that appear to be a workaround.
They are after the variable: $cart_PayPal_IPN_ID gets set in the function confirmation() (near the bottom). One was an attempt to set a session variable, another was the same but for a global variable.

While both are syntactically correct, neither need to be set since the variable is declared as a global at the beginning of the function.
If anyone is having trouble with the $_POST['invoice'] var not being sent to paypal, check your checkout_confirmation.php file and make sure the confirmation() call is being made before the process_button() call. Otherwise the variable wont get set for the process_button call that sends the data to paypal.

Hope this helps someone.

Regards,
Tim Gall

#4130   standard12

standard12
  • Members
  • 5 posts
  • Real Name:James

Posted 19 March 2012 - 19:21

Is there an english language file for this contribution?

#4131   ShopAdminNL

ShopAdminNL
  • Members
  • 15 posts
  • Real Name:LeoS

Posted 06 April 2012 - 10:52

After a PayPal payment I see the order has a new status, with a little comment like:
"PayPal IPN Verified [Pending (Verified; €15,70); paymentreview]"

Why is there &#8364 and not the Euro symbol?
All other pages do show the correct symbol... I don't know how to fix this (besides manually in the database)

#4132   artur78

artur78
  • Members
  • 27 posts
  • Real Name:artur

Posted 07 April 2012 - 10:33

Hello Guys,

I have been using this great contribution for few years now without any problems.

Recently I just copied my shop and installed another one under different domain, and after changing configuration settings it works fine yet there is a problem with PayPal IPN.
It works, I can receive payments but the only one order status appears to be Preparing [PayPal IPN] and it doesn't change when the orrder is completed.
I can't select other satuses in configuration of PayPal IPN module simply because I gon only one option to choose - Preparing [PayPal IPN]

So far I have tried to remove the module and then copy all the files again on my server, then install the module again but it doesn't seem to change anything.

Does anyone have an idea what could help?

Edited by artur78, 07 April 2012 - 10:37.


#4133   artur78

artur78
  • Members
  • 27 posts
  • Real Name:artur

Posted 08 April 2012 - 15:00

Sorted.
By mistake I have emptied table orders_status whilst copying the shop. The Preparing [Paypal IPN] appeared in the table after placing a test order. I added the rest manualy to db.

#4134 ONLINE   greasemonkey

greasemonkey
  • Members
  • 435 posts
  • Real Name:Scott
  • Gender:Male

Posted 13 July 2012 - 16:22

Hi everyone, I have a small issue which I cannot seemt to sort out.

When a customer pays with Paypal the customers country is not getting transferred to the order process email???

It looks like below:

Delivery Address
------------------------------------------------------
Jane Dow
1121 Main St E
Toronto, M1M 1M1
Ontario,

Billing Address
------------------------------------------------------
Jane Dow
1121 Main St E
Toronto, M1M 1M1
Ontario,

It seems to work fine when a customer pays with my other payment module... Only when they choose paypal?

I have looked at the following code in ipn.php

		    $email_order .= "\n" . EMAIL_TEXT_DELIVERY_ADDRESS . "\n" .
						    EMAIL_SEPARATOR . "\n" .
	   tep_address_format($order->delivery['format_id'], $order->delivery,  0, '', "\n") . "\n";
		  }
		  $email_order .= "\n" . EMAIL_TEXT_BILLING_ADDRESS . "\n" .
						  EMAIL_SEPARATOR . "\n" .
	    tep_address_format($order->billing['format_id'], $order->billing, 0, '', "\n") . "\n\n";

I have tried to take snippets from checkout_process.... but no luck... any ideas?

#4135   bcleather

bcleather
  • Members
  • 23 posts
  • Real Name:Mike Ellis
  • Gender:Male
  • Location:Indianapolis IN

Posted 23 August 2012 - 22:48

I seem to be having a problem with the Paypal Express and Standard module. The 2 errors I'm getting are:
Fatal error: Class 'httpClient' not found in /.............../html/includes/modules/shipping/ups.php on line 265

Fatal error: Class 'httpClient' not found in /.............../html/includes/modules/shipping/usps.php on line 303

The common denominator seems to be Paypal. No matter which shipping module I run, when it comes to checking out with Pay Pal I get this httpclient error. I also run Paypal Pro with no issues what-so-ever, it only seems to be a problem when Paypal (I assume) tries to redirect them off of my site onto theirs. Any and all help would, will and can be greatly appreciated.

#4136   bcleather

bcleather
  • Members
  • 23 posts
  • Real Name:Mike Ellis
  • Gender:Male
  • Location:Indianapolis IN

Posted 23 August 2012 - 23:07

One more thing I might add to this conversation (seeing as how I'm the only one conversing) I found this on another part of the forum

Possible fix
if (!class_exists('httpClient')) {
include('includes/classes/http_client.php');
}
$http = new httpClient();
if ($http->Connect('www.ups.com', 80)) {
$http->addHeader('Host', 'www.ups.com');
$http->addHeader('User-Agent', 'osCommerce');
$http->addHeader('Connection', 'Close');

Possible Problem
$http = new httpClient();
if ($http->Connect('www.ups.com', 80)) {
$http->addHeader('Host', 'www.ups.com');
$http->addHeader('User-Agent', 'osCommerce');
$http->addHeader('Connection', 'Close');

after swapping these pieces of code I got the error, "wrong security header" or something similar but this is where the problem seems to be as both of the above reference fatal errors BOTH point to similar code in both files.

#4137   bcleather

bcleather
  • Members
  • 23 posts
  • Real Name:Mike Ellis
  • Gender:Male
  • Location:Indianapolis IN

Posted 24 August 2012 - 00:18

Last comment for the night. I think I've gotten the security header issue taken care of but now it tells me "You must specify one shipping option type as the default." I have been on the paypal site and thought I had it, I've checked OSC and thought I had it, the only common thing between the both of them was, I found out I didn't have it. Can someone tell me how to make these things work and how to get rid of this cursed error!!!!!

#4138   snakelimit

snakelimit
  • Members
  • 9 posts
  • Real Name:Marek

Posted 17 May 2013 - 18:00

The customer receives about 13 order process emails. I also noticed 13 PayPal IPN Verified notifications on the admin side of the orders. I know the module version I have is not up to date. This version has always worked for me. I looked through this thread for a solution but can't find one. Has anyone ran into this issue before?


I got a email from PayPal today stating the following:

Please check your server that handles PayPal Instant Payment Notifications (IPN). IPNs sent to the following URL(s) are failing:

catalog/ext/modules/payment/paypal_ipn/ipn.php



I am not sure if this is a permission issue with access to the ipn.php file. Please help me with this issue.


Pimpton did you sort that problem ?
I got same issue and cant find solve for it

#4139   DKServices

DKServices
  • Members
  • 11 posts
  • Real Name:Dave
  • Gender:Male

Posted 17 September 2013 - 19:55

I was getting a blank screen when trying to use PayPal Express on a new install of 2.3.3.2 after re-installing it 4 times. I was doing mods each time. Instead of grinding through code I tried installing the PayPal express here: http://addons.oscommerce.com/info/8271 and it works fine!

#4140   dennish

dennish
  • Members
  • 36 posts
  • Real Name:Dennis Hoffland
  • Gender:Male

Posted 08 August 2014 - 14:01

Hello,

 

In the standard setup PayPal IPN deletes the (so-called temporary) order (and thereby also the order-ID) when a customer decides to interrupt (and thereby effectively cancel) his payment at the Paypal website.

 

Obviously this approach saves space in the database (by clearing uncompleted orders), but also has an important drawback from an accounting/control viewpoint: it creates gaps in the subsequent numbering of orders.

 

An solution would be to change the code in includes/functions/general.php:

// START DELETE TEMP PAYPAL IPN ORDER
// This is used in shopping_cart.php when a temporary order needs to be deleted
// after it was cancelled by customer on paypal site.
  function tep_remove_order($order_id, $restock = false) {
    if ($restock == 'on') {
      $order_query = tep_db_query("select products_id, products_quantity from " . TABLE_ORDERS_PRODUCTS . " where orders_id = '" . (int)$order_id . "'");
      while ($order = tep_db_fetch_array($order_query)) {
        tep_db_query("update " . TABLE_PRODUCTS . " set products_quantity = products_quantity + " . $order['products_quantity'] . ", products_ordered = products_ordered - " . $order['products_quantity'] . " where products_id = '" . (int)$order['products_id'] . "'");
      }
    }

    tep_db_query("delete from " . TABLE_ORDERS . " where orders_id = '" . (int)$order_id . "'");
    tep_db_query("delete from " . TABLE_ORDERS_PRODUCTS . " where orders_id = '" . (int)$order_id . "'");
    tep_db_query("delete from " . TABLE_ORDERS_PRODUCTS_ATTRIBUTES . " where orders_id = '" . (int)$order_id . "'");
    tep_db_query("delete from " . TABLE_ORDERS_STATUS_HISTORY . " where orders_id = '" . (int)$order_id . "'");
    tep_db_query("delete from " . TABLE_ORDERS_TOTAL . " where orders_id = '" . (int)$order_id . "'");
  }
// END DELETE TEMP PAYPAL IPN ORDER

Instead of deleting the order in the orders table, the order could be emptied (meaning all entries other than the order_id) and the orders_status set to a new status, reflecting that payment of the order was cancelled during the Paypal process.

 

Can anyone point out possible problems with this approach (other than additional database size)?

 

Kind regards,

 

Dennis