nathan.dth wrote: This is because IPN is only needed when the user chooses to close the browser after payment or to NOT click to return to your website. Most of the time, this does not happen. People return to your site and there is no issue. But in the cases where they do not, that is when IPN is needed to communicate back to your site. That is why the issue only happens a small percentage of the time.
Nathan,
I tested this theory several years ago and retried the test again this morning. I registered, paid with paypal on my CC, and did not return to our web site but instead directly went to another web site from the Paypal confirmation page. The registration record was created correctly.
I do think that there is something that users can do that interferes with the creation of the registration record. I've seen the same person have a missing record on successive events which would be highly unlikely given our ~1% failure rate. I just can't figure out what they do that prevents the record from being created.
The fact that I can not return to our site and still get the record created seems to be evidence that this is not just a misconfigured IPN. I also double checked the IPN history in Paypal and it shows this transaction generating an IPN and Paypal receiving an HTTP 200 return from
components/com_dtregister/success.php?return=28460&Itemid=9&task=notification.
Finally, it seems that every Paypal transcation generates an IPN not just when users don't return to our web site. I see a one-to-one mapping for all of our recent transactions. So, our 1% failure rate is not due to a failed IPN.
I wish you guys would acknowledge that there is an intermittent failure mode that is not due to a misconfigured IPN. Until that happens we will never get a fix.
I may switch to Stripe for payments and see if it improves anything.
Mike Regan