Can you generate new PayPal IPNs for past (IPN-less) transactions? - paypal

So I'm working with a system that uses the legacy NVP/IPN thing from PayPal. The IPN listener URL wasn't set up properly and so they ran a couple weeks worth of transactions with no IPN data coming back. I've set it up properly now, but I'm wondering if there is a way to regenerate that last couple weeks that never had any. Whenever I go to the IPN history page, I just get a this feature is not available message. I know it's now working because I can see three transactions in our database (that come through the IPN listener)
On another note, if I go to the download history page and try to click download, the page refreshes but nothing happens. I don't get a report or anything, any idea why?

It sounds as though you're looking for the IPN history page, where you can resend IPNs: https://www.paypal.com/us/cgi-bin/webscr?cmd=_display-ipns-history
Late edit: changed title to better reflect the true question (it's not about regenerating IPNs). And the answer is it's not possible. Instead, for past IPN-less activity one must manually import a CSV obtained from www.paypal.com account home -> Reports -> Activity Download
This is the URL: https://business.paypal.com/merchantdata/reportHome
If once in the Activity Download, "Create Report" does not work properly (e.g. "nothing happens"), contact PayPal's support for assistance as that is not normal.

Related

Paypal IPN Simulator (Different Sites, different results)

This is leading me into confusion only. After reading Paypal's documentation for Paypal IPN, I know how to get to the Simulator page and trigger an IPN test. Reading throughout PP's documentation, the page I am lead to is:
https://developer.paypal.com/developer/ipnSimulator/
Now, on my server side, I have used one of PP's Listenter example file in which I've implemented my own class to log everything I need into text files, and, I know that my IPN Listener is up, running and receiving requests from the IPN Simulator because I can see it all beeing logged.
Now the intriguing part is that, as I said before, i'm lead to the aforementioned page, which triggers an INVALID response from Paypal every single time I simulate a payment. Afters dozens of forums read, including SO, I have seen some people using https://developer.paypal.com/webapps/developer/applications/ipn_simulator instead of the former one.
If I use this latter URL, the simulation works without a hitch and I get the "VERIFIED" response, everytime. At this point, the question I cannot answer is "Why?". Why does this only works on the latter URL, and not on the URL that I am redirected to from within my paypal account, which is the one I think it was supposed to work from? And this constitutes by itself another problem. I cannot access this latter URL from anywhere within my paypal account, unless I manually enter it. You may question how did I get to this second URL. Well, I got it from other people's posts, otherwise I didn't even know it existed. So, right now I am completly lost and with this said,
Is there anyone that can explain me the difference from both URLs, and why is the second one not available inside my PP account?
If you can also explain me why the simulation works from the second URL only, that would be a bonus
NOTE: By the way, I've tried it and I know that in Live mode it works also, and I get the VERIFIED response.

paypal express checkout digital goods testing in sandbox

I used PayPal's Integration Wiz to generate the code (PHP) for the Express Checkout Digital Goods functionality. I'll admit, I made a few minor changes to it so that it could work with my site... My site is a single page Angular.js app - so I need to pass back parameters to the app, and not go back to a different page (as it is, I'm not keen on leaving the page at all, but I'm not ready to shell out for a business pro account yet.. the PCI compliance is something I don't relish being on the hook for...but maybe one day... certainly not until I know I can get "basic" things working).
I would not expect any of my changes (basically changing the hardcoded URLS to being PHP session vars) to interrupt any of the flow of the Integration Wiz's processing.
However, when I test things in the sanbox, the process stops at the point of redirection to:
https://www.sandbox.paypal.com/incontext?token={somevariabletokenconent}
The token always starts with "EC-" so I'm assuming this is telling me I've been able to successfully start the Express Checkout process.
All I am seeing is a blank page, with Chrome telling me I'm getting:
Failed to load resource: net::ERR_CONNECTION_RESET
AFAICT my sandbox account is set up for EC/DG:
Your payment solution: PayPal Digital Goods (Express Checkout)
I HAVE updated my sandbox details in paypalfunctions.php
And other than the changes in checkout.php, I havent messed with any other code from the integration wizard... should this not "just work" ??
Or have I missed something else?
[Edit]
Update a few hours later...
I actually was able to get things to progress end to end. Once. But no record of the transaction can be seen on either side of the sandbox accounts. It did sit thinking for a long time... so I'm not sure what it was doing, but the final redirect was back with a success parameter, so I have to think that something behind the scenes must be having issues...
But now its not working anymore. Its stopping in the same spot again.
For the life of me, I don't believe I made any code changes to the PP wiz produced code prior to it working, or prior to it not working again.
I have logged into the sandbox to check the transaction as I mentioned. Both accounts are showing nothing. And the transactions are not processing.
[EDIT 2]
Ok - strange things are afoot. I know I did absolutely no changes since my last test...I havent even been at the keyboard. And upon trying again, the test proceeds to allow me to log into the sandbox, and approve a payment, but gets stuck processing at
https://www.sandbox.paypal.com/webapps/checkout/webflow/sparta/expresscheckoutvalidatedataflow?execution=e1s2
with the PayPal "Loading" icon spinning...
Is this a configuration issue on my side? With the Integration Wiz writing all the Express Checkout code, there's not to change, but it seems really flakey to me.
[EDIT3]
I've been hanging my head on this for about a day now, and got nowhere. My App is a single page Angular.js site, and triggers the PayPal purchase out of a Bootstrap Modal popup window.
As mentioned above, my process would get to the point of approving and confirming payment, then spin wildly at the point it should be redirecting back to the success (or failure) page.
Using the PP integration Wiz, the form code that was produced (and used) was:
<form name='ppcheckout' action='checkout.php' METHOD='POST'>
And it fails to proceed to the final redirect.
However, if I change the code to:
<form name='ppcheckout' action='checkout.php' METHOD='POST' target="_blank">
The processing occurs as expected.
Is there some interaction between PayPal's JS and Angular (or Bootstrap) that I'm not aware of? It seems strange that it "just works" when the target is added.

PayPal Sandbox history redirects to REAL history

In the new PayPal Sandbox, we want to test the IPN, with a payment_status of denied.
The old PayPal sandbox used to allow us to view the transaction history and Accept/Deny a transaction.
Seems the new Sandbox account hierarchy seems to be confused. When clicking History it redirects back to the REAL paypal.com site, not sandbox.paypal.com, and hence shows the wrong history.
Steps to reproduce:
log via developer.paypal.com
go to "Enter sandbox site" under Applications, now logged into https://paypalmanager.sandbox.paypal.com with the correct account showing, great
Click history, redirected to https://history.paypal.com/us/cgi-bin/webscr?cmd=_history, which shows the REAL history. Grrr.
Any ideas? Happy for a hack, just want to fire a deny request for a sandbox transaction so we can test.
It's a known issue - sorry. Trying to change the URL to the Sandbox one still redirects you to the Live site and, occasionally for whatever reason, a security certificate page. A fix is coming soon.
If you want to be updated on the issue as it goes on you create a ticket at PayPal.com/mts, let me know what the ticket number is, and I can grab it.
Edit:
This should be resolved now. I cleared my cache and cookies, closed the browser, and tried it out. I was able to view the transaction history in the Sandbox.
we're having the same issue on our end. What works for us is firing up an incognito window in Google Chrome and login via there. It's a hack, but it works.

Open cart, Orders not showing up in dashboard. Using paypal

Hi Im using paypal on open cart.
Followed the installation guide completely. but orders arent showing up on dash board.
I have to go Sale> Orders> Sort by Hidden and they show as cancelled.
I then manually change them to pending/complete and then it will show on dashboard
Ive checked the IPN too
All my sort orders are correctly named.
What else could i be missing?
This generally happens if you're
password protecting your website using a .htaccess/.htpasswd method
testing locally
Basically paypal needs to access your server to send the IPN. If you're doing either of the above, then it can't. If both the above don't apply, then this can sometimes be due to paypal sandbox being slow (if you're using that rather than live PP)
I faced similar problem and it helped me:
http://forum.opencart.com/viewtopic.php?t=41841
I've had the same error for a while now. I re-uploaded the following files and it worked for me.
Sounds like your file needs updating in
CODE: SELECT ALL
catalog/controller/account/login.php
And I would also upload a fresh
CODE: SELECT ALL
catalog/model/account/customer.php

Paypal PDT - unable to get transaction ID

After a customer pays from Paypal, he can be auto-redirected back to my website with auto-return and pdt features switched on. Everything works fine when the customer waits 10 seconds for the auto-redirect, transaction id is sent via a get, but when the customer chooses to "click here" instead of waiting for 10 seconds for the auto-redirect, the transaction id is not sent.
Anyone knows of a way to fix this?
Thanks!
First, are you just trying to display the transaction ID or are you trying to add it in a database or use it for email receipts, etc?
If you're simply trying to display it then PDT is fine. Otherwise, I'd highly recommend you use IPN instead. It's very similar except that the data will always be POSTed to it regardless of whether the user makes it back to your site or not, which isn't always guaranteed, even with Auto-Return enabled.
If PDT is all you need, it really should work the same regardless of how they make it back. I use PDT so rarely, though, that I really haven't tested it much lately. I'd have to run some tests in the sandbox to see if I can reproduce that and figure out how to make it work how you want.
Let me know, though, because if IPN is the better solution I don't want to waste time messing with PDT.