Seeking Xojo solution for using in-app Paypal Payment

So, here’s another curious thing: I currently simply run a cgi that logs every request and then returns status 200 with a brief html text as content.

I’ve assigned its URL as the IPN “Notification URL”. And I already receive a call to my cgi for every time I receive money on my Paypal account.

What strange about this:

  1. I do not do any validation and do not respond back in any special way.
  2. When I try the IPN Simulator with the same URL, nothing is received by my cgi, and the Simulator always says “IPN was not sent, and the handshake was not verified. Review your information.” - and no indication what’s wrong.

So, should I even bother with the Simulator and the handshake when it works just as well without it, apparently?

If you do not send back, Paypal will eventually turn off IPN for your account.

You really want to validate, and make sure it works in the IPN simulator.

Thanks for clarifying that, Michel.

How do you do the validation? In Xojo or some other way? If Xojo, would you be willing to share the basics of the code?

The php code looks rather non-trivial to me, and it seems to be difficult to get this working in Xojo code if you (I) don’t know exactly how this is supposed to work. And there is no real debugging - it’s just Paypal saying “ok” or “wrong”. Looks tedious.

Actually, @Michel Bujardet, Paypal gives at no point an indication that not doing the verification callback from my end to Paypal would be an issue with them. It seems to be necessary only for my own safely, to make sure no one is sending me fake IPNs. What made you believe I need to do this?

Also, I am currently always getting this error when I try to use the IPN Simulator:

Could anyone here who uses IPN please try the IPN Simulator with their own IPN URL and see if it works for them?

Even on StackOverflow I found several questions, with no answers to this same issue in the past months. So I like to know if this happens for everyone, which would clarify that this is not error of mine.

Actually, I summarized my findings here. Would be nice if someone could prove me wrong: https://stackoverflow.com/a/46522783/43615

Oh my - I think I figured it out what I get the error with the IPN Simulator: It doesn’t like my server that’s outside the U.S. If I put the IPN hander on a U.S. based server, then it says “IPN was sent and the handshake was verified.”. WTF, Paypal - couldn’t you give a clearer error message for that? Oh well, who am I complaining to? They don’t care.

Also, @Michel Bujardet: The IPN Simulator now verifies my handler even though it does nothing more than return a near-empty page with status 200. I don’t do any extra validation callbacks and it’s just as happy.

Aaand another update: Nope, it’s not US vs. EU, either. It’s something about the URL I was using before. It doesn’t seem to like something about the path in the URL… More to follow soon

Oh thanks, Xojo Forum, for letting me edit my previous msg, then telling me on submit that I’m not allowed to, AND deleting my entry so that I have to start again. Jeez.

To recap: I can’t figure out what Paypal does not like about my one URL but about the other.

Funny thing: Even “https://www.macintouch.com” can be entered in the IPN simulator and it happily reports a success.

So, I’m good now, using my other domain.