Just been trying to find the new IPN History link on the new PayPal website and I can't see it anywhere.
Are they still supporting this?
The current PayPal for Business interface only provides a way to access IPN History if you have manually configured IPN in your PayPal account settings. In this case, you'd go to [your name] > Account Settings > Notifications > Instant Payment Notifications (click Update here), then the explanatory text there will include a link to the IPN History page.
However, that link would not appear if you have not manually configured IPN -- e.g., when your ecommerce platform automatically transmits IPN parameters to PayPal for each checkout. While you could manually enable IPN with a dummy Notification URL in order to get the IPN History link, this could result in PayPal completely disabling IPN for your PayPal account if they try sending any actual notifications to that dummy URL.
In that case, you can use this link to access IPN History directly once you're already logged into PayPal:
https://www.paypal.com/cgi-bin/webscr?cmd=_display-ipns-history
Note that if you have not manually configured IPN in PayPal, you will see a notice in IPN History saying, "The IPN feature is turned off. You must turn on IPN in order to create history data." That notice is irrelevant if your ecommerce platform specs IPN dynamically for each checkout; in that scenario, you can still view/search your IPN History without manually turning on IPN there.
More menu -> Site map -> Transactions -> IPN History
2020
Sitemap (Footer) -> Instant Payment Notification (IPN) history (under "Transactions")
It's still available in the same place. If you want to navigate to it
Log in
Profile link (white bar up top)
IPN settings
History link on this page
Currently it's directly at https://www.paypal.com/us/cgi-bin/webscr?cmd=_profile-ipn-notify (provided you're logged in)
In the latest UI: Settings > My Selling Tools > Instant Payment Notifications click "Update". You will see a link there called "IPN History page".
As of May 2022, it's still convoluted.
TL;DR:
For IPN History, try https://www.paypal.com/us/cgi-bin/webscr?cmd=_display-ipns-history
For IPN Settings, try https://www.paypal.com/cgi-bin/customerprofileweb?cmd=_profile-ipn-notify
Also, a few reminders:
PayPal IPN is a completely separate feature from PayPal Webhooks.
Even though it's the exact same concept (argh!).
PayPal IPN is associated with your normal/business PaypPal account. It is is not a part of the PayPal Developer experience.
Also, PayPal IPN is now clearly deprecated, if not effectively obsolete, so if your application code is still reliant on PayPal IPN you really should update it to use PayPal Developer APIs and the Webhook service instead.
Anyway, here's the steps I took to find it today on 1st May, 20222:
Start off on your PayPal Business Account Dashboard page:
https://www.paypal.com/mep/dashboard
It should look like this:
Don't confuse this with the Developer Not
Use the top-left menu to go to Account Settings:
https://www.paypal.com/businessmanage/account/accountAccess
On the Account Settings page, look for "Notifications" in the left-side menu:
https://www.paypal.com/businessmanage/account/notifications
Then you'll see the link to PayPal Instant Payment Notifications.
Annoyingly, they don't use the term "IPN" so Ctrl+Fing for that won't work.
Click the "Update" link (even though we aren't updating anything: we just want to see IPN History), and you'll be taken to a page belonging to Olde PayPal just with a new header:
https://www.paypal.com/cgi-bin/customerprofileweb?cmd=_profile-ipn-notify
And the link to the History page is disguised in the page's text:
https://www.paypal.com/us/cgi-bin/webscr?cmd=_display-ipns-history
And you'll be welcomed back-in-time to 2005 with a page that looks like this:
Related
I have implemented Paypal Express Checkout on my website. So far everything seems to work in my sandbox, except that the payments are not processed. Every payment is "pending".
The only reason I get is
RECEIVING_PREFERENCE_MANDATES_MANUAL_ACTION
in the API response after executing the payment via API.
I cannot find any documentation on the reason, does anyone know how to fix it?
You have probably already solved the problem, but maybe someone else has similar problem.
I believe the reason for this is because the payments are in a currency that you do not hold, you need to configure your Payment Receiving Preferences in your PayPal account. Otherwise, your payment status might be pending until you manually approve the payment in your PayPal account.
Log in to your PayPal business account at www.paypal.com. Click the profile icon (Profile menu) on the top right side of the page. From the Business Profile menu, select Profile and Settings. (Note: If you do not see the profile icon on the top right, select Profile which appears in the top menu when the My Account tab is selected.)
From the left menu, click My selling tools.
In/under the Getting paid and managing my risk section, click the Update link for the Block Payments item.
Update Allow payments sent to me in a currency I do not hold to "Yes, accept and convert them to U.S. Dollars") and click Save.
Because of some reason, I lost a PayPal IPN data log. Does PayPal have an option to resend the ipn data or what can I do? Is it possible at all?
Yes, as long as it's been less than 28 days since the IPN was generated. Log in to your PayPal account; then, depending on what your account layout is, do one of the following:
(Most business accounts in the live environment) Click on Profile >> Profile and settings >> My selling tools. Find Instant payment notifications and click the Update link directly to the right of it. Then, find the link that says IPN History page and click on it.
(Older Website Payments Pro accounts) Click on Profile, then click Instant Payment Notification preferences (under the Selling preferences heading). Find the link that says IPN History page and click on it.
(Most business accounts in the sandbox, some business accounts in the live environment) Go to History >> IPN History.
This will bring you to a page that will let you search for any IPNs that were generated for your account within the last 28 days. Once you find the IPN in question, click the checkbox to the left of it, then click "Resend Selected".
A couple of things to note:
PayPal will only resend the IPNs to the same endpoint they were originally sent to. If you screwed up the URL, too bad.
The IPN may not be sent instantly. The resend request is placed into a queue (like all other IPNs) and processed later. In most cases, you should see the IPN sent within a few seconds to a few minutes.
I can log into the developer.paypal.com site with my PayPal credentials. When I then enter the sandbox as my seller account, all of the links in the menu system takes me to the live PayPal site, instead of the sandbox. I have been able to hack the url and prepend "sandbox." and in some cases that gets me into the IPN history and Recurring Payment Profiles. I can live with that work around if I need to.
My main issue right now is that I can't access any transaction history for my seller account. It goes to the transaction history on the live PayPal site, and shows me the transaction history for the PayPal account that I initially used to log into the developer site.
This is really holding up my project.
Any one have any insights?
I've tried things like deleting cookies, but nothing has worked so far.
It is (unfortunately) common for the sandbox to be broken in the ways you describe. However, this should not be holding up your project -- the sandbox is mainly useful for checkout/API testing, and there is very little need to review transaction history in the web interface.
I too have the same very annoying problem. I need to list the transactions because sometimes I want to delete them (they are recurring payments) so I am in control of which IPNs actually go to my test website.
After playing around with the sandbox, I have found that at first, the "history" link will send you directly to the live paypal site but if you first select "Withdraw", then the nav menu will display the correct "history" link (i.e. https://www.sandbox.paypal.com/fr/cgi-bin/webscr?cmd=%5fhistory&nav=0%2e3)
The screen will give you access to the 20 latest transactions; I haven't found yet how one moves to the next page without being sent to the live Paypal site.
If I delete the seller test account, will it cancel all the existing future recurring payments?
Cheers.
After adding stuff in shopping cart, clicking some Pay Now with PayPal button, and successful PayPal payment (PP or CC), it is logically possible that a user stays on PayPal website, if for example the Auto Return option isn't activated (or it is but it doesn't work because the user is a guest user without PP account)
The user can return to the site by clicking a link, but doesn't have to. My question is: if he doesn't, how will the site owner be aware that the user paid so that he can now send the items by post? That the site owner gets informed of being paid seems elemental to me, so I find incomprehensible that such elemental thing be left to some obscure Auto-Return option.
Please can somebody explain this to me?
This is a common challenge with any redirected payment gateway, and it's the reason most (if not all) of them implement some sort of asynchronous notification that a payment has been completed. In PayPal, this is the Instant Payment Notification (IPN). You must setup on your site either a generic IPN listener that you link to from your PayPal account profile settings or you can create a more targeted IPN listener specifically for your transactions and use the NOTIFYURL (or related) parameter in the form or API request you use to redirect to PayPal to send IPNs to that listener.
In my integrations, I never perform any order update or transaction logging when the customer returns from the site, preferring instead to wait for the IPN that I can validate and ensure came from PayPal as opposed to a spoofed return from someone trying to hack my checkout process.
For more information, see the IPN documentation: https://www.x.com/developers/paypal/documentation-tools/ipn/integration-guide/IPNIntro
Paypal provide IPN for this purpose through which we paypal send request asynchronous to your site and you can perform whichever action you want
I think the point may have been missed here. Or a problem does exist. If the purchaser uses CC, even if you have IPN set up and it works, but if the purchaser uses CC and does not click a button on the last page, which is not presented when using PP account, it is possible for the funds to go through, but no IPN, and so your website is unaware of the purchase. This last page, is an extra page that CC user gets after the page with the Pay button on it.
In this state, you can even go into IPN history, and the IPN is there, says it is sent, but it hasn't been. It does not get sent until after the purchaser clicks the button on the extra page and then they are taken to the auto return page.
we plan to change the domain name for our service. Therefore we need to update the IPN-url for our existing customers. I have tried googling a solution on how to change the IPN-url for current subscriptions, but I haven't been able to find anything.
Any help is appreciated.
best regards
Thomas
I ran into this problem today.
Folks who are saying that you can change the IPN URL on an existing Paypal recurring payment are incorrect; you can't, you can only change the IPN URL for future notifications.
To resolve this, I used an Apache rewrite:
RewriteRule ^sites/all/modules/civicrm/extern/ipn.php$ https://example.org/wp-content/plugins/civicrm/civicrm/extern/ipn.php [R=307,L]
The magic is the R=307. A 307 redirect indicates that a POST request must be resent as a POST. Otherwise you lose the IPN data.
I had exactly the same problem .... I had to move servers which meant my IPN url changed.
I have spoken to 3 different paypal reps and even had a meeting with a tech support guy from there.
Unfortunately, there is NO WAY to change the IPN url for existing customers/subscriptions.
I have been advised that all existing customers/subscriptions would need to be setup again, your customers would then need to start a new subscription based on the new IPN url.
This is a right PITA ... I have just over 1500 customers I need to do this for, and I can guarantee I will lose some due to the hassle of this.
Sorry this wasn't the answer you were looking for :(
If you need to chnage IPN Url make sure that it is still turned on check from History>IPN History and turn it on.
IPN can be enabled in one of 2 ways.
In the PayPal account Profile
Passing an IPN URL as a parameter in an API call or button code.
To enable IPN in your account profile follow these steps:
Log into your account at https://www.paypal.com
Click on the Profile
subtab In "My selling tools" click Update in the Instant Payment Notifications section.
Click the Edit button or Choose IPN settings
Enter your IPN URL in the Notification URL field Make sure the radio button for 'Receive IPN messages (Enabled)' is selected
Click Save
IPN can be enabled directly in this section of the account: https://www.paypal.com/ie/cgi-bin/webscr?cmd=_profile-ipn-notify-edit (access requires login)
To pass an IPN URL as a code-level parameter you should refer to the documentation of the feature you are implementing. Typically the API variable you would pass is 'NotifyURL' but it can differ based on the API call, if the API is Name-Value-Pair (NVP) or SOAP format or if you are using non-hosted PayPal Standard button code. For standard buttons the variable is "notify_url".
This profile setting is frequently overridden by shopping carts. Still, IPN should be enabled in the account.
It's 1 May 2013 & PayPal has changed the location for the IPN.
Login, go to Profile -> My selling tools ->Instant Payment Notifications...(Update)
This shows your current IPN URL, and there is an EDIT button.
In the absence of a solution from Paypal, I would encourage anyone to submit a support ticket requesting a manual change. If enough of us do this, they will have to provide this option eventually.
Contact Paypal Technical Support here.
EDIT: I managed to successfully change all my prior IPN URLs via a ticket with Paypal Support. They told me it has to be done manually, but obliged my request. It took about a week. They were very helpful. Hope this helps someone.
Dec 2022 update:
There is IPN URL settings at https://www.paypal.com/merchantnotification/ipn/preference . I changed the IPN URL and since then all IPN notifications are coming to the new IPN URL. I do not know if super old subscription notifications will also come to this URL or not, but I can confirm that 1.5 year old subscriptions are going to this new URL now.
I have just done it.
Login, go to Profile -> My Account Settings ->Instant Payment Notifications...(Update)
This shows your current IPN URL, and there is an EDIT button, which works.
This is April 2013, so PayPal might have changed since this question was posted