Configuring & Troubleshooting with PayPal Pro

IMPORTANT: PayPal Pro is no longer a supported payment gateway by MemberPress

This documentation is left here for those on legacy PayPal accounts who still have access to use this integration. However, we will no longer be supporting this integration or issues that arise with it. We recommend looking to  Stripe or Authorize.net as Credit Card alternatives for your website.

PayPal has deprecated the API this gateway integration relies on. In order to use PayPal Pro in MemberPress you'll need a legacy 2.0 account with DPRP enabled. This is something PayPal support will need to help you determine if your account qualifies for or not.

Setting up PayPal Pro

To get started configuring PayPal Website Payments Pro, navigate to "MemberPress" -> "Options" and select the "Payments" tab.

  1. Click the plus button and select the gateway "PayPal Payments Pro"
  2. Label it whatever you want.  This is the name that your users will see when they go to select how to pay.
  3. Log in to your PayPal account to obtain the necessary information: API Username, API Password, and Signature.
  4. Go into your Profile and select "Selling Tools".
  5. Select update on the API Access option.
  6. Select Option 2: View API Signature.
  7. Copy and paste the credentials into your MemberPress Settings.
  8. Copy the PayPal IPN URL from MemberPress.
  9. Go back to "PayPal" -> "Profile" -> "Selling Tools," just like before.
  10. Select update on the "Instant Payment Notifications" option.
  11. Select Choose IPN Settings
  12. Paste the URL into the Notification URL box
  13. Check the "Receive IPN Messages (Enabled)" option.
  14. Click Save
  15. Go back to MemberPress and click Update Options to save your changes.

To use the Sandbox mode with this gateway, you will need to have a developer account setup at developer.paypal.com. Once you're done testing in sandbox mode, be sure to update your API credentials and IPN URL to reflect the live account.

Important Note about Pausing/Resuming with PayPal:

When using PayPal as a gateway, we recommend that you disable the ability to Pause/Resume subscriptions. This can be disabled in your MemberPress > Options > Account tab > Permissions section > checking the option entitled "Allow Members to Pause & Resume their own subscriptions". This is because the PayPal gateway currently only resumes subscriptions on the subscriptions renewal date, NOT the day they click resume. For example: if the subscription is monthly, and the user purchased on the 1st, pauses on the 15th of the month, and later resumes on the 2nd, then their subscription wouldn't renew until the 1st of the next month. The result will be longer if the billing term is longer, like in the case of a yearly subscription. For this reason, we highly encourage our users to disable the ability to pause and resume recurring subscriptions.

Pausing & Resuming Subscriptions With PayPal.

PayPal doesn't send out an IPN when a Subscription is resumed. Because of this, we strongly recommend that you don't resume a subscription from within PayPal itself -- rather always resume your Subscriptions from within the MemberPress admin interface. If a member resumes a Subscription within their own PayPal account, MemberPress will NOT be notified and the Subscription will still show as "paused" in your dashboard - so be aware that there may be cases when you would need to manually change a Subscription's status back to "enabled".

Troubleshooting Recurring Payment Issues

PayPal Payments Pro must have the Recurring Payments Module (DPRP) enabled in order to process recurring subscription profiles. You may need to contact PayPal support to get this module enabled on your account as it appears there is no longer an option to do so from within their new UI. Also, you must be using Website Payments Pro 3.0 on a legacy PayPal account as DPRP does not appear to work with newer PayPal Pro accounts.

How to Test with PayPal

To test with PayPal, you are required to set up a Sandbox Account. For detailed instructions on how to do this, please visit this page.