Multiple receivers for IPNs - paypal

Is it possible to receive the same IPN at multiple endpoints? I can pass a NOTIFY_URL e.g. for ExpressCheckout, but I may also setup an URL in my PayPal account. Will IPNs be send to both? Only one? Which one has preference?

If you have IPN configured in your PayPal account profile that will act as a default catch-all. If you then set an IPN URL via the NotifyURL parameter of payment requests that would override the value set in your profile.
If you need to have IPN data sent to more than one IPN URL with a single transaction you can daisy-chain the IPN scripts. PayPal would send the IPN to your URL, which could then forward that IPN data on to as many secondary URL's as you need to.

Related

PayPal IPN email issues

I've been getting daily emails from PayPal for the last week, telling me that PayPal IPN's are failing to a specific address. I've changed the listening address in the PayPal IPN panel to the one listed on my site for the plugin it communicates with. But the emails still keep coming. Can anyone offer a solution?screenshot of email here
I changed the IPN address listed in PayPal's IPN panel. This made no difference.
The IPN url configured in the account is only used if no notify_url is specified at transaction time. If all your transactions specify their own notify_url, the URL configured there has no effect.
So, for new transactions, need to change the URL your integration is specifying at checkout time when it creates the payment attempt/redirects the payer over to PayPal.
For previous transactions and subscription payments that specified a different URL at transaction time, there is no way to change nor update that URL. An old one will continue to be used for refunds and future subscription payments.

After modifying the PayPal IPN URL, still using old IPN listener URL for some notifications

I'm working on a project which has PayPal integration. We have two PayPal accounts for payment and choose the PayPal account based on the type of users. We previously had two IPN listeners for the two different PayPal accounts. Previously our IPN was pointed to "https://www.old-domain1.com/paypal/ipnhandler" and "https://www.old-domain2.com/paypal/ipnhandler". Yesterday we have updated two websites into one and we started to use a common IPN to this address "https://www.new-domain.com/paypalipn/paypal/IpnHandler" to the new project.
We have added the common IPN URL on both PayPal accounts. But we could see PayPal is still sending the IPN to the old IPN handler for the old recurring payment. Our old IPN handler URLs are not currently working and we don't have the option to update the payment if PayPal is still sending the notification to the old URL. For some users, it worked correctly. For some users PayPal still using the old IPN URL. Why does this happen?
Now we have one IPN listener for two different PayPal accounts. Is this related to the problem?
If a URL was specified as part of setting up the transaction (i.e. by the software/site when the user was redirected to PayPal), that transaction-level specification supersedes any setting in the PayPal account. It is now set in stone for anything related to that transaction/recurring profile, and cannot be changed.

Paypal notify_url if IPN not enabled

If my Paypal account does not have the IPN URL enabled, will it still be possible to receive POST data from Paypal if I use the notify_url
If the IPN is not enabled for the account and I set the notify_url, will I receive anything?
Yes, you will receive IPN.
notify_url will keep sending IPN notifications when used.
Yes, it will currently work on a PayPal account where the "global" IPN URL has never been set/enabled or where it is currently set/enabled. However, if you disable a previously enabled PayPal global IPN URL, any buttons with notify_url will stop working even if they worked before (they actually get queued in the IPN message queue but not sent like they used to). My conclusion is that the first time you enable the global IPN URL, PayPal initializes the IPN message logger/queue for your account. From there, there is no way to get back to the original behavior that I can find. On the bright side, this same logger/queue makes it really easy to inspect and troubleshoot (and even re-send) IPN messages...
Assuming you mean no IPN URL defined at PayPal, yes, provided you have IPN enabled.
You can supply the notify_url yourself in the per-button form data.

Send Paypal IPN to a secondary email (NOT the primary) How?

My developer is trying to get the instant payment notifications for one of my web products to be sent to a secondary email, not the primary Paypal one. But no luck so far -it keeps getting sent to my primary email. I'd like some help on how to get it sent to a secondary email account?
Thank you
Your email address doesn't have anything to do with where the IPN gets sent. You basically have 2 options for configuring IPN.
1) Log in to the PayPal account that is receiving the payments, go into the profile, and then into Instant Payment Notification Preferences. Enable it, and add the URL to your IPN listener. This will now act as a default IPN listener so every transaction that hits your PayPal account will send an IPN to this URL.
2) If you include a notify URL in your button code or API calls this will override what you have setup in your profile. If you need to send IPN's for a specific button or API call to a secondary IPN listener you can just add that URL to the notify value for the request and that's where the IPN's will go.
If you need IPN's to hit multiple scripts you might want to take a look at this article I wrote awhile back about daisy-chaining PayPal IPN scripts.

How to specify IPN Listener URL for PayPal MassPay Requests

I'm using the PayPal Merchant-SDK to send MassPay items. I need to listen for IPN messages returned from PayPal.
I've specified the URL in sdk_config.properties with:
service.IPNEndpoint=" ... "
but the URL is not appearing in the requests that are generated.
I've also noticed that the MassPay schema doesn't have a notify-url element as seems to be the case for other payment types such as "DoExpressCheckoutPayment".
Does anyone know what I may be missing?
Thanks.
The only way that you can set the IPN URL for MassPay would be to set it in your account. You can't set it in the code. It needs to be set in your PayPal account, under your profile.