You should always set the IPN URL in your PayPal settings when using Paid Memberships Pro with any of the various PayPal gateways. Continue reading to better understand why you need to set an IPN URL in your PayPal settings.

How to set your IPN URL in PayPal

Time needed: 15 minutes.

Follow the steps below to configure your PayPal IPN URL:

  1. Log in to

    Enter your account email address and password to log in to PayPal.Screenshot of the PayPal log in page

  2. Go to “Account Settings” > “Website Payments”.

    In the dropdown menu under your account name in the upper right, select “Account Settings”. The Account Settings page has a left side navigation bar. Select “Website Payments” (located toward the bottom of this menu.In your PayPal Account, navigate to Account Settings in the upper right menu

  3. Under “Instant Payment Notifications” click “Update”.

    In the main area of the “Website Payments” page, scroll down to the “Instant Payment Notifications” section. Click “Update”.Click the link to Update in the Instant Payment Notification section

  4. Click “Edit Settings”.

    Once on the IPN page, click the button to “Edit Settings”.
    Click the button to Edit settings on the IPN page of your PayPal Account

  5. Set your “Notification URL” and Enable “IPN Messages”

    Your site’s “Notification URL” can be found in the WordPress admin under Memberships > Settings > Payment Gateway & SSL. Confirm that the setting for “IPN Messages” is set to “Receive IPN Messages (Enabled)”. Save settings.
    Edit and Enable your PayPal Instant Payment Notification URL

Verify IPN Settings in PayPal

After completing the steps above, the PayPal Instant Payment Notifications page should look like the image below.

  • The “Notification URL” is set and exactly matches that in your membership site under Memberships > Settings > Payment Gateway & SSL > IPN Handler URL
  • Message delivery is Enabled.
  • The button is “Turn Off IPN” is greyed out. You can confirm that IPN is On.
PayPal Instant Payment Notifications Settings Page
This is how your PayPal account’s Instant Payment Notifications Settings Page should look.

If you are still having IPN issues, this may be due to something with your hosting or WP setup or a bug in our code. We have some IPN troubleshooting tips here. And if you open a new ticket in the private support area, we can follow up with you to get it resolved.

This is what you should expect to see when accessing the URL directly. One thing to make sure of is that the timestamp increments every time you refresh. This means that the URL is not being cached.

When PayPal hits the IPN URL, it sends the necessary data to validate back with PayPal and continue processing the message.

Use this code in your wp-config.php to turn on debugging so that you get emails with further details whenever PayPal hits the IPN URL. If you get no emails after doing that, then maybe the IPN is not set with PayPal or your host is blocking it.

define( 'PMPRO_IPN_DEBUG', true );

Seems that now Paypal will not SAVE the IPN setting unless there is something IN the URL field. Try it, can not save the setting with an “empty” field.
If I select: TURN ON IPN
and then: “Do not receive IPN messages (Disabled)”

We get this error:
“You must enter a properly formatted URL into the Notification URL field in order to activate Instant Payment Notification.”

And IPN remains OFF.

After weeks of being unable to determine why Paypal wasn’t hitting the IPN URL, I went into the Paypal account, enabled IPN and put in the IPN URL, and it WORKED!! This is for Paypal Standard, one-time payment.

Hi ,
I tried same way, but now it keeps retrying for all payment via Paypal Standard with status code of 500.

Also I enable the IPN log to be sent to my email, but I receive one only when I hit the URL directly, not the payment from Paypal.
Do you have any idea on this?

Thanks a lot for your help

We troubleshoot gateway issues as part of a support level membership. Please open a new ticket after purchasing your Plus level membership and we will look into this for your project.

You wrote “If you also set an IPN URL in the PayPal settings” but that isn’t clear. The next sentence assumes that said IPN URL is for PMPro, but it needn’t be, and if it isn’t, then it causes no problems with PMPro because only payments that PMPro did NOT initiate will be notified at that URL. It’s actually ideal to get notice of any NON-PMPro payment. If I understand correctly. Just thought this clarification might be useful.

This may help.

I have experienced my own trouble with PayPal and IPN.

Here are my notes:

Golden Rule: Use a sandbox account to test.

1. I found no need to set any url in PayPal to have it work with PMPro because the url is hard coded into the plugin.
2. this was also true for my recurring payments, I do NOT have a url set in PayPal.
3. PalPal took 10+ hours to update my initial payments, but the recurring payments processed faster (weird right?)
4. PayPal is slow, and you should wait a couple days before deciding if your changes worked…I wasted time on wrong assumptions simply because I wasn’t patient enough with PayPal.
5. I used PayPal Express as this is the best PayPal option for future proofing your site.
6. I switched to Stripe, and wow brother what a difference!
7. Reading PayPal IPN documentation has been known to cause migraines.
8. the IPN url in PayPal can be used to send to only 1 url (only 1 IPN handler)…that’s probably why the best plugins hard code their IPN into the plugin code. Try deleting the IPN url setting in PayPal and seeing what happens over the next 2 or 3 days. Be patient.

Look into Stripe if you haven’t yet. They have some big momentum and seems to me they might crush PayPal sooner than later. Does tell you to use an IPN url? If so, I’d use that in the PayPal settings asking for the url. PMPro communication with IPN is all handled in the code… In any case, I’d recommend you give 48 hours between changes minimum to trouble shoot your installation. Good luck!

Thanks a lot for detailed experience.

So I enabled the IPN and deleted IPN handler URL, but since PayPal needs a valid URL anyways, I just left in it. However when I go to IPN History, I see that Status of notifications as Disabled. Is it normal?

I think you guys (Colemans) know the answer to a question I have regarding Paypa’s IPN feature and one URL overshadowing another. Here it is:

First, is this true and accurate? If “Message delivery is Disabled”, then IPN messages will only get sent for payments which specifically request that they be sent, as ALL PMPro charges do, and recurring payments will be notified via IPN through the URL registered by the charge when the subscription was set up.

If I’m wrong about the above, please clarify.

If I’m right, then is this also true? If “Message Delivery is NOT Disabled”, then IPNs will still be sent to the URL specified, but only in initial payments, but recurring payments will be reported to the URL specified in the Paypal settings.

If you confirm my conclusion, then we here at The Dollar vigilante will be happy, as that explains everything. If I’m wrong, then perhaps you can help explain why some IPNs, as reported by Paypal’s history page, go to our WP site, and some go to a URL at (which we set up thinking it would help us track stuff).


Hi XBT, They never replied. I suspect Paypal is not very tolerant of or responsive to the kind of testing required to really nail down the answers. Anyway, someone else has taken over that work for me, so I didn’t and won’t follow up much.

Hi Jason,
Quick question, I’m setting up PMPro to manage the membership for a local non-profit. They have existing recurring subscriptions on Paypal. I’ve already imported the members into WordPress/PMPro. For those members that have existing recurring payments established in PayPal I’m wondering the following: If I do a second import to overlay/add the membership_payment_transaction_id and membership_subscription_transaction_id to those members with existing PayPal subscriptions, will the PayPal IPN report future payments for those members to PMPro, and PMPro subsequently update the member’s records? Or do I need to somehow tell PayPal to start reporting those member’s subscriptions to the PMPro installation? Thanks!

Any reason why I would be getting the following error when attempting to hit the ipnhandler url?

Problem with the SSL CA cert (path? access rights?)

Everything else seems to work fine. If I use paypal standard everything works it’s only when using the paypal express setting

Does your SSL certificate work otherwise on the site? Can you have your host double check that it is installed correctly. (There is a step where a CA certificate sometimes needs to be installed.)

Otherwise, I can’t really tell what is going on from here. I would first make sure that the SSL cert is working in general. From there we might be able to help you in the member forums if you are still having trouble. We can get info from you to take a look at the site.

We have recurring payments setup via Paypal and I just started getting emails from Paypal:

“Please check your server that handles PayPal Instant Payment Notification (IPN) messages. Messages sent to the following URL(s) are not being received:

If you do not recognize this URL, you may be using a service provider that is using IPN on your behalf. Please contact your service provider with the above information.

Once you or your service provider fix this problem, you or your service provider can resend the failed messages from the IPN History page. If this problem continues, PayPal may disable the IPN feature for your account.”

This has come up a few times. It’s really odd. The most likely candidate seems to be hosts that are somehow blocking access from specific IP addresses (like PayPals) from the site. So maybe check with your host.

Also, if you go into PayPal, you can find the “IPN History” report (see which will give you more details on these errors. If you post this information into a post on our member forums, we can help you to figure it out.

in the plugin settings there is:
“To fully integrate with PayPal, be sure to set your IPN Handler URL to: ” and my url, i just don’t mind this?

Hi Jason, thanks for reply, on my paypal account i activated ipn with the IPN Handler URL of wordpress, and after that i checked “Do not receive IPN messages (Disabled)” option. Is this the right way of setting it up?couse members are not created after payment. Sandbox account worked like a charm

last question, if i visit “my_url/wp-admin/admin-ajax.php?action=ipnhandler” the timestamp at the beginning is updating on every page load but i get this too ” FP! VERIFIED ERROR: receiver_email (N/A) and business email (N/A) did not match” is it some kind of problem?

thanks for your help

That’s normal behavior for visiting the URL directly. The timestamp should update every visit (showing you you’re not getting a cached version) but you’ll get that error RE verification because you’re not sending the data that PayPal sends. PayPal will also send info about the transaction, including the receiver email, and if it all matches, it will process the request. If you see the “receiver_email (N/A) and business email (N/A) did not match” in your IPN reports emailed to you which have other PayPal info in them, then you might have a problem.

Hi Jason, i’m trying to enable ipn on my account, but i could only find the “Edit Instant Payment Notification (IPN) settings” page, where i have a blank url and “Do not receive IPN messages (Disabled)” checked;
i can’t find the other page to enable ipn, can you help please?

I believe you can put any URL in there (maybe just the main site URL) and then leave the “Do not receive IPN messages (Disabled)” option checked) and click save. If you lave the URL blank, it won’t let you turn IPN. This way you should get the magic setup of IPN turned on but disabled. 🙂

Hi again Jason. I already had a PayPal IPN set up for aweber because of an item I have available for purchase on my site that is not connected to the paid memberships, which added the email addresses to a special list for those folks who purchased that item. I did add the AWeber/PMP integration plugin, which seemed to cause some problems (which I’m still in the middle of sorting out), but I wondered how you would recommend I go about this so that I’m collecting email addresses of my paid subscribers on one aWeber mailing list, and purchasers of a separate product to another… I suppose I could NOT use the AWeber/PMP app/plug in but by the sounds of it any kind of PayPal IPN is NOT a good idea with PMP? Please advise as soon as possible! I’m still on a time crunch here, so thanks in advance.

I am having IPN issues and I tried this, but PayPal doesn’t allow me to clear out the url field. They want me to put a vaild url in the field. Any suggestions?


I would like to know between free and paid difference. Some source prefer to use free version and keep stick for simple membership purpose because it’s worth and suit to startup. But I have simple website to provide sports betting picks on different membership plugin than yours but I don’t know what plugin they use on their platform.

Please let me know your thought

Leave a Reply

For faster support related to issues on your specific site please open a ticket in our members support area.

Your email address will not be published. Required fields are marked *