nmetsovo Posted November 4, 2005 Share Posted November 4, 2005 Many people seem to have a problem with customers that pay with PayPal not returning to their website. When their customers do this, the store owner receives payment, but does not receive the order information. A simple solution to this -- which some people may not like, but it should work fine -- is to simply put a message at the payment selection page advising the customer to make sure they return from the PayPal site to this site to complete their order. This should eliminate MOST of the PayPal order problems that result from the customer not returning to the site. I have seen this implemented on a site that was for a pretty big, multi-national company. I didn't think it was unprofessional at all. That was even before I knew about this problem, or osCommerce, for that matter. I cannot say how effective this will be, because our webstore is still not operational. It is still in the testing stages. We hope to make it live later today or tomorrow if all goes well. So, since we don't have actual experience with this, I can't say how well this will work in reality. It works fine in testing. WE ARE USING THE STANDARD PAYPAL MODULE THAT COMES WITH OSCOMMERCE 2.2MS2. Dormition Skete http://www.DormitionSkete.org ------------------------------------------------------------------ catalog\includes\languages\english\modules\payment\paypal.php Change to this, or something similar. define('MODULE_PAYMENT_PAYPAL_TEXT_TITLE', 'PayPal '); define('MODULE_PAYMENT_PAYPAL_TEXT_DESCRIPTION', 'PayPal <br><br>Very Important - After completing the PayPal payment process, please make sure you return from the PayPal site to this site to complete your order, or we will receive your payment but not your order details. <br><br>International Orders - Please use PayPal whenever possible.'); If you do not want the extra instruction bold, then you could do something like this: define('MODULE_PAYMENT_PAYPAL_TEXT_TITLE', 'PayPal '); define('MODULE_PAYMENT_PAYPAL_TEXT_DESCRIPTION', 'PayPal <br><br></b>Very Important - After completing the PayPal payment process, please make sure you return from the PayPal site to this site to complete your order, or we will receive your payment but not your order details. <br><br>International Orders - Please use PayPal whenever possible.<b>'); ------------------------------------------------------------------ catalog\includes\modules\payment\paypal.php Change from this: function selection() { return array('id' => $this->code, 'module' => $this->title); } To this: function selection() { return array('id' => $this->code, 'module' => $this->description); } ------------------------------------------------------------------ (Optional) checkout_payment.php At approximately line 240, add the line below <!-- Ds Mod --> to draw a horizontal line separator between the payment types. <?php } $radio_buttons = 0; for ($i=0, $n=sizeof($selection); $i<$n; $i++) { ?> <!-- Ds Mod --> <tr><td colspan="3"><hr></td></tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td> <td colspan="2"><table border="0" width="100%" cellspacing="0" cellpadding="2"> Quote Link to comment Share on other sites More sharing options...
Jack_mcs Posted November 5, 2005 Share Posted November 5, 2005 Just switch to the IPN version and the problem will be solved. Jack Quote Support Links: For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc. Get the latest versions of my addons Recommended SEO Addons Link to comment Share on other sites More sharing options...
nmetsovo Posted November 5, 2005 Author Share Posted November 5, 2005 But *which* IPN Contribution? A link would be very helpful. There are a LOT of IPN Contributions. I downloaded a couple, and they both seemed to require pretty significant modifications. I already have a heavily modified store. I didn't want to deal with another major modification that might break other things for a payment option that probably won't even be used very much. This is at least a fast, SIMPLE way to deal with this problem. (I'd appreciate a link to the best IPN Contribution, though, in case people do actually use PayPal on our site.) Quote Link to comment Share on other sites More sharing options...
andro123 Posted November 5, 2005 Share Posted November 5, 2005 [ If you go into paypal and "profile" There is a button stating IPN Preferences. You input your website deatils http://yourwebsite.co.uk and save. This turns IPN on and the order process comes through with that, It does occasionally miss one if the server doesnt respond for 4 days or more for example but I have forund it 99% effective. Quote Link to comment Share on other sites More sharing options...
Jack_mcs Posted November 6, 2005 Share Posted November 6, 2005 But *which* IPN Contribution? A link would be very helpful. There are a LOT of IPN Contributions. I downloaded a couple, and they both seemed to require pretty significant modifications. I already have a heavily modified store. I didn't want to deal with another major modification that might break other things for a payment option that probably won't even be used very much. This is at least a fast, SIMPLE way to deal with this problem. (I'd appreciate a link to the best IPN Contribution, though, in case people do actually use PayPal on our site.) Use the one named oscommercec_paypal_ipn. It takes five minutes to install and doesn't require any file changes. Jack Quote Support Links: For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc. Get the latest versions of my addons Recommended SEO Addons Link to comment Share on other sites More sharing options...
pbreit Posted November 6, 2005 Share Posted November 6, 2005 The contribution below implements the IPN notification service. It was developed by the OSCommerce core team. http://www.oscommerce.com/community/contributions,2679 Quote Patrick Breitenbach Link to comment Share on other sites More sharing options...
nmetsovo Posted November 7, 2005 Author Share Posted November 7, 2005 Thank you very much for the links. I appreciate it. I haven't had a chance to try it out yet, but I intend to soon. Many thanks. Quote Link to comment Share on other sites More sharing options...
mightymidget Posted November 14, 2005 Share Posted November 14, 2005 nmetsavo - The official PayPal IPN module (the one that is developed by the OSC team) was designed to capture client orders prior to them leaving your site to go to paypal. Once the client pays, paypal sends the IPN updating the order status at your site, so it doesn't require them to come back for it to update. Prior to the IPN module a client could pay then navigate away. You would then get a paypal email but wouldn't have a record of their order because it wasn't captured. The new module does cure some of these problems, but is not a complete answer. The client can still navigate away after paying. If he or she does, then the IPN will still get updated but the client order emails will not be produced or sent. So in short your site won't notify you of a new order. This is still an improvement over the module that come standard with OSC 2.2, but like I said not a complete answer. As a side note, once the IPN is installed you do not need to enable IPN at paypal, or switch auto return on, these will make no difference what so ever. All of this fuctionality is built into the modules code and is sent with the payment request. As far as I know (for sites using non us paypal) the only way to get it to auto return back to checkout without giving the customer the choice to navigate away is to turn off the 'optimised payment' option at paypal. This will force your customers to create an account at PP prior to paying. Then when the payment is completed paypal wont give them the standard option of 'create an account' or 'return to merchant' but will instead return them directly to merchant. You may need to set a 'return to' ULR at PP as well using this method. This is not idea, as for small amounts most customers don't want the hassle of creating an account. So I guess what I'm trying to say is that your suggestion of putting a note at checkout is still a good idea, even if you do install the Official OSC team developed IPN module. Unless you force your customers to create a PP account that is. Hope this helps. Please feel free to correct me if I'm wrong, Andy. Quote Link to comment Share on other sites More sharing options...
krh_68 Posted November 24, 2005 Share Posted November 24, 2005 nmetsavo - The official PayPal IPN module (the one that is developed by the OSC team) was designed to capture client orders prior to them leaving your site to go to paypal. Once the client pays, paypal sends the IPN updating the order status at your site, so it doesn't require them to come back for it to update. Prior to the IPN module a client could pay then navigate away. You would then get a paypal email but wouldn't have a record of their order because it wasn't captured. The new module does cure some of these problems, but is not a complete answer. The client can still navigate away after paying. If he or she does, then the IPN will still get updated but the client order emails will not be produced or sent. So in short your site won't notify you of a new order. This is still an improvement over the module that come standard with OSC 2.2, but like I said not a complete answer. As a side note, once the IPN is installed you do not need to enable IPN at paypal, or switch auto return on, these will make no difference what so ever. All of this fuctionality is built into the modules code and is sent with the payment request. As far as I know (for sites using non us paypal) the only way to get it to auto return back to checkout without giving the customer the choice to navigate away is to turn off the 'optimised payment' option at paypal. This will force your customers to create an account at PP prior to paying. Then when the payment is completed paypal wont give them the standard option of 'create an account' or 'return to merchant' but will instead return them directly to merchant. You may need to set a 'return to' ULR at PP as well using this method. This is not idea, as for small amounts most customers don't want the hassle of creating an account. So I guess what I'm trying to say is that your suggestion of putting a note at checkout is still a good idea, even if you do install the Official OSC team developed IPN module. Unless you force your customers to create a PP account that is. Hope this helps. Please feel free to correct me if I'm wrong, Andy. Hi Andy, thanks for this, I had recently been confused as to why two recent paypal orders hadn't appeared on my database, I have made the above fix and it should do the trick. In testing when returning to my site from Paypal the page didn't display correctly but the order did reach the mysql database, I got the following: Warning: Cannot modify header information - headers already sent by (output started at /home/folder/public_html/catalog/includes/languages/english/modules/payment/paypal.php:22) in /home/folder/public_html/catalog/includes/functions/general.php on line 29 Any ideas? Thanks, Karl :thumbsup: Quote Link to comment Share on other sites More sharing options...
Guest Posted November 24, 2005 Share Posted November 24, 2005 As a side note, once the IPN is installed you do not need to enable IPN at paypal, or switch auto return on, these will make no difference what so ever. All of this fuctionality is built into the modules code and is sent with the payment request. This was not the case with me. None of my orders went to "Pending" when I turned off IPN at paypal. I have the IPN URL set to ipn.php in /ext. Everything updates and emails are sent. Quote Link to comment Share on other sites More sharing options...
hydro Posted December 1, 2005 Share Posted December 1, 2005 The contribution below implements the IPN notification service. It was developed by the OSCommerce core team. http://www.oscommerce.com/community/contributions,2679 I use the original PayPal payment module and then while testing, once I hit the confirm order and goes to the PayPal page, the shipping charge is not included. I tried installing the PayPal IPN mentioned above and it still does not pass the shipping charge to PayPal. Anyone else have this problem? Quote Link to comment Share on other sites More sharing options...
Guest Posted December 2, 2005 Share Posted December 2, 2005 I'm having a very similar problem, but mine is with Paypal IPN mod... I'm using OSCommerce CRE Loaded 6.1 after purchasing a template from The Template Shop. Customer will add a item to there cart and checkout. OSCommerce sends them over to Paypal to make the payment. Payment is made and customer returns back to the OSCommerce Shopping Cart. Here is where the problem comes in. I dont recieve an e-mail stating that an order was made from OSCommerce. I get an e-mail from Paypal that a payment was made, but nothing from OSCommerce... After going into the back end, I can goto Customers/Orders and then goto Orders and see the client there with an order Pending. After viewing the Pending order I see this... PayPal Transaction Activity Date Payment Status Details Action Gross Fee Net Amount No PayPal Transaction Information Available (ad299a08b36c5f19685368b44602d907) Payment Method: PayPal It shows "No Paypal Transaction Information Available"....?!?!?! Also, If I goto into Paypal IPN, it doesn't show anything in there. 0/0 orders! I wasn't sure if I needed to have a return URL setup in IPN section of Paypal's site, in order to have it return something to the shopping cart so it knew the order was completed. After reading on here, it doesn't seem that is true... Any help someone can give would greatly be appreciated! :) Quote Link to comment Share on other sites More sharing options...
Guest Posted December 2, 2005 Share Posted December 2, 2005 I dont recieve an e-mail stating that an order was made from OSCommerce. I get an e-mail from Paypal that a payment was made, but nothing from OSCommerce... I wasn't sure if I needed to have a return URL setup in IPN section of Paypal's site, in order to have it return something to the shopping cart so it knew the order was completed. After reading on here, it doesn't seem that is true... I don't have a return URL set. The the modual takes care of that. In regards to the email not being sent try this: Post 677-679 Hope this helps. Quote Link to comment Share on other sites More sharing options...
khoking Posted May 19, 2006 Share Posted May 19, 2006 I tried PayPal IPN OSC official moduel, but it is not working for me. It creates an order everytime a customer arrived at the Confirm Page (before clicking the confirm button). Say if the customer went back to add more orders or went back to change the payment type, then I have an extra order recorded. I used the PayPal IPN for a few days and dump it. I am now putting up a warning descriptions as this thread starter suggested, hopefully the mysterious orders are kept to the minimum... :rolleyes: Quote Best regards, Koh Kho King Link to comment Share on other sites More sharing options...
Guest Posted March 4, 2007 Share Posted March 4, 2007 Well, we are running milestone 2.1 and I don't think the IPN thing works for 2.1.. So, I am also going for the warnings to see if that helps. Anyone else had success with the warnings? Quote Link to comment Share on other sites More sharing options...
indivai Posted March 10, 2007 Share Posted March 10, 2007 Many people seem to have a problem with customers that pay with PayPal not returning to their website. When their customers do this, the store owner receives payment, but does not receive the order information. A simple solution to this -- which some people may not like, but it should work fine -- is to simply put a message at the payment selection page advising the customer to make sure they return from the PayPal site to this site to complete their order. This should eliminate MOST of the PayPal order problems that result from the customer not returning to the site. I have seen this implemented on a site that was for a pretty big, multi-national company. I didn't think it was unprofessional at all. That was even before I knew about this problem, or osCommerce, for that matter. I cannot say how effective this will be, because our webstore is still not operational. It is still in the testing stages. We hope to make it live later today or tomorrow if all goes well. So, since we don't have actual experience with this, I can't say how well this will work in reality. It works fine in testing. WE ARE USING THE STANDARD PAYPAL MODULE THAT COMES WITH OSCOMMERCE 2.2MS2. Dormition Skete http://www.DormitionSkete.org ------------------------------------------------------------------ catalog\includes\languages\english\modules\payment\paypal.php Change to this, or something similar. define('MODULE_PAYMENT_PAYPAL_TEXT_TITLE', 'PayPal '); define('MODULE_PAYMENT_PAYPAL_TEXT_DESCRIPTION', 'PayPal <br><br>Very Important - After completing the PayPal payment process, please make sure you return from the PayPal site to this site to complete your order, or we will receive your payment but not your order details. <br><br>International Orders - Please use PayPal whenever possible.'); If you do not want the extra instruction bold, then you could do something like this: define('MODULE_PAYMENT_PAYPAL_TEXT_TITLE', 'PayPal '); define('MODULE_PAYMENT_PAYPAL_TEXT_DESCRIPTION', 'PayPal <br><br></b>Very Important - After completing the PayPal payment process, please make sure you return from the PayPal site to this site to complete your order, or we will receive your payment but not your order details. <br><br>International Orders - Please use PayPal whenever possible.<b>'); ------------------------------------------------------------------ catalog\includes\modules\payment\paypal.php Change from this: function selection() { return array('id' => $this->code, 'module' => $this->title); } To this: function selection() { return array('id' => $this->code, 'module' => $this->description); } ------------------------------------------------------------------ (Optional) checkout_payment.php At approximately line 240, add the line below <!-- Ds Mod --> to draw a horizontal line separator between the payment types. <?php } $radio_buttons = 0; for ($i=0, $n=sizeof($selection); $i<$n; $i++) { ?> <!-- Ds Mod --> <tr><td colspan="3"><hr></td></tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td> <td colspan="2"><table border="0" width="100%" cellspacing="0" cellpadding="2"> Hi, very nice suggestions.. Thanks Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.