How do I configure PayPal IPN?

Category: 
User
Topic: 
Module configuration

When using PayPal payment services on your Ubercart site, it is very simple to setup your site to receive payment notifications from PayPal. Most everything is handled by Ubercart itself, so all you have to do is go to the Instant Payment Notification Preferences section of your PayPal account profile and turn off the IPN and leave the URL blank. When Ubercart submits a payment request, it will activate the IPN itself with the proper URL.

(For website payments standard, you can also configure the Website Payment Preferences to turn on an auto return with the URL of http://www.example.com/uc_paypal/wps/complete, replacing example.com with your site's URL. This will attempt to force customers back to your website when they complete payment through PayPal.)

ubercart92037's picture
Offline
Joined: 10/03/2009
Juice: 45
Is IPN Only for "PayPal Express Checkout"?

If I'm using "Website Payments Standard", then is there a way to be notified of payment, so that I can update the user's role? Or is IPN only for "PayPal Payment Express"? (Which I think requires you to have a business account at PayPal).

Thx.

jdixon567's picture
Offline
Joined: 10/25/2009
Juice: 76
Re: Is IPN Only for "PayPal Express Checkout"?

I believe if you go to Admin > Store Administration > Conditional Actions you can add a predicate with the trigger "A payment gets entered for an order".

Then you need to link an action such as "Change users role" to the conditional action under "Actions". Unfortunately no such action exists so you'd need to create it yourself, or get a web developer to do it. It requires some coding. Here's a post which shows how they did it:

http://www.ubercart.org/forum/development/11728/how_do_i_create_conditio...

jozzhart's picture
Offline
Joined: 02/11/2011
Juice: 7
IPN not working for manual payments

Hello,

I'm having trouble with the payment process when a user manually enters their credit card details into Paypal (as opposed to using an existing Paypal account). When the user has completed the payment process on Paypal, they are then required to manually click a button to return them to the Drupal site (if they're logged in with a Paypal account, it auto-redirects). If the user doesn't click this button, then the rest of the Ubercart process isn't completed. Ie. Email invoice isn't sent off and the order status isn't updated to active/pending. It's stats is "In checkout". Isn't IPN meant to notify Ubercart as soon as the payment is successful, so we're not relient on the user returning to the Drupal site?

Thanks,
Joel

jdixon567's picture
Offline
Joined: 10/25/2009
Juice: 76
Re: IPN not working for manual payments

Hmm that is really strange. Make sure you have Payment Action set to "complete sale" in PayPal Website Payment Standard Settings from Admin > Store Configuration > Payment Settings > Payment Methods.

Also from your Paypal Account, try going to Profile > Website Payment Preferences and turn on "Auto Return" and set the return url to yourubercartsite.com/cart/checkout/complete.

That failing, these guys had a slightly different problem, but some of the info might help:

http://www.ubercart.org/forum/support/17260/ubercart_not_receiving_notif...

Good luck!

James

jozzhart's picture
Offline
Joined: 02/11/2011
Juice: 7
Still not working

Thanks for your reply James.

Auto return has been turned on and set to yourubercartsite.com/cart/checkout/complete and still now luck. I've attached a screen shot of the issue. I guess it has to do with paypal trying to capture the new user's details, and not allowing the auto return.

My question is should Ubercart be using IPN to pass the successful transaction back to Drupal, or is it only passed in the URL when Paypal redirects to the Drupal CMS.

Thanks,
Joel

AttachmentSize
paypal.png 41.31 KB
Plato1123's picture
Offline
Joined: 10/02/2010
Juice: 60
Re: Still not working

I'm having the same problem, the order status doesn't get updated to "complete" unless the user clicks the links to return to the site. In my case the order stays in "Pending Paypal" status and in the order properties a message that may or may not be related appears: "Payment is pending at PayPal: Customer did not include a confirmed shipping address per your address settings."

drubage's picture
Offline
Joined: 02/17/2011
Juice: 12
Re: Re: Still not working

We are seeing the same thing. Some orders are coming in okay so we figured it had something to do with not clicking back to our site. Others still say "In Checkout". All settings are correct and IPN is disabled in PayPal. Is there a fix for this? Another PayPal payment method perhaps?

Plato1123's picture
Offline
Joined: 10/02/2010
Juice: 60
Re: Re: Still not working

My version of the problem ended up being a setting in paypaly's config that required users to have a use a confirmed shipping address (even though this seller was only selling digital products). This setting was holding up the paypal IPN and keeping the store from completing the order *unless* the user was patient and followed the links back to the store. Probably spent 10 hours on just this one issue.

Coolof's picture
Offline
Joined: 02/22/2011
Juice: 24
Re: Re: Re: Still not working

thx plato, saved me a lot of time!

rbonja1's picture
Offline
Joined: 04/12/2011
Juice: 13
Re: Still not working

hi jozzhart, did you ever find a solution to this problem, i am trying to figure out the same thing, i have auto return on but im having the problem with paypal trying to capture the new users details also.

liquidcms's picture
Offline
Joined: 09/13/2010
Juice: 31
any solution

this seems to be a pretty big deal; surprised it is still without a solution.

@plato you sort of suggest there was a setting (that was set wrong) in paypal config. what setting was it? and if you change setting did it fix the issue reported here?

Plato1123's picture
Offline
Joined: 10/02/2010
Juice: 60
Re: any solution

Yes! If you log in to your paypal account (at paypal.com, not through your ubercart store) there is a setting of whether to require the buyer must have a confirmed shipping address. People change addresses so often, many of your legit buyers will not have bothered to confirm their new addresses, so you want this setting to be off (I suppose unless you only ship $10,000 items). In my case we were selling digital downloads at a few bucks a pop so this was a huge problem.

Fred's picture
Offline
Joined: 04/14/2010
Juice: 47
PayPal Identity Token?

What about PayPal Identity Token? On the PayPal Website Payment Preferences page there is an identity token to be put on the website. I guess it's for added security to be sure that the returning "all clear" comes indeed from PayPal. But, I could not find a place to put it in.