PayPal Setup

Easy Digital Downloads version 2.11 comes with a brand new PayPal integration built in. This gateway uses the latest PayPal checkout experience, utilizing smart buttons and a "Pay with PayPal" modal that keeps users on your site through the whole payment process.

Upgrading from a different PayPal gateway? See our upgrade notes.

NOTE: This PayPal integration requires an SSL certificate. If you do not yet have one, see our article on how to set up SSL.

Configure PayPal

You will need a PayPal account in order to accept payments using this gateway. If you do not already have an account, you will be given the option to create one during the onboarding process.

1. Connect to your PayPal account

Log in to your WordPress admin and go to Downloads → Settings → Payment Gateways → PayPal. You will see a button to connect to PayPal in your store's current mode (either sandbox or live).

Connect with PayPal in sandbox mode.

Click the button to open up a PayPal modal. This will prompt you to enter your email address and country. Proceed through the steps to either log in to your existing account or to create a new one.

Important: You need to have browser popups enabled in order for the PayPal page to open up in a modal. If you do not see a modal, please check your browser popup settings and try again.

If you're connecting in test mode, you will need to log in with your sandbox account credentials. If you don't yet have a PayPal sandbox account, see our article on how to create one.

PayPal connect modal with log in form.

After completing all of the steps, you should see this success message:

Make sure you click the button to return to your store. If you don't click this button, we will not be able to complete the onboarding process and you will have to begin again.

2. Check your account status

Back in the EDD admin settings, the "Connection Status" area will check your connection to PayPal. There are three possibilities:

Success

Your account was successfully connected, you're ready to accept payments, and EDD created a webhook on your behalf. You can read more about the webhook in the webhook section.

PayPal account successfully connected.

Success, with webhook warning

This means your PayPal account has successfully been connected, and you may start taking payments. However, EDD failed to create a webhook on your behalf. This is not something you need to worry about in a local environment, but if it happens on your live site then contact EDD support for assistance. You can read more about what the webhook is for in the webhook section.

Error

You may also get an error message like this. Most errors in "Payment Status" mean something about your PayPal account is not ready for receiving payments. This means you have to either contact PayPal customer support or do something inside your PayPal account, such as confirm your email address.

Once you've corrected any errors, click "Re-Check Payment Status" to verify your account with PayPal again. All errors need to be resolved before you may being accepting payments.

3. Enable the PayPal gateway

Once you're connected, be sure to enable the gateway in general gateway settings:

PayPal gateway checked on.

Repeat in live mode

If you initially connect in test mode, you will need to repeat this connection process once you switch your store to live mode.


Webhook

Easy Digital Downloads will automatically attempt to create a webhook on your behalf. The webhook is primarily used for conveying actions that occur within the PayPal dashboard back to EDD. For example: if you refund a payment inside PayPal, then EDD will pick up on that and automatically update the payment status in EDD for you.

Webhooks are not required to process payments, but they are recommended for the most complete integration.

Checking webhook status

You can check the status of your webhook at any time by going to Downloads → Settings → Payment Gateways → PayPal. The webhook status will be listed, along with the registered events.

PayPal account successfully connected.

The "Sync Webhook" button will simply check the status of the webhook again, and register any missing events. You typically should not need to click this unless:

  1. You've changed your site's URL; or
  2. You see a warning message about the webhook not being fully configured, or a warning about missing events.

PayPal Commerce Pro

PayPal Commerce Pro is a paid extension that allows customers to pay via credit or debit card directly on your site.

Once installed & activated, a new setting, Enable Advanced Credit and Debit Card Payments", will exist in in the PayPal settings located in Downloads → Settings → Payment Gateways → PayPal

Once enabled, the "Debit or Credit Card" and "Pay Later" (if supported by your PayPal account) buttons will appear on your checkout page, along with the PayPal button.


Checkout experience

This payment gateway uses PayPal's modern checkout buttons. Instead of a normal "Purchase" button, your customers will see this at the end of the checkout form:

PayPal purchase button

After clicking the button, a modal opens up to PayPal.com, prompting the user to log in to their PayPal account. The customer can complete the entire checkout process without leaving your site.

'Pay with PayPal' modal with log in form.


Recurring payments integration

This PayPal gateway has complete support for the Recurring Payments extension. See the Recurring Payments PayPal setup documentation for configuration instructions.


Browser support

Support is guaranteed for the following desktop browsers. For any browsers not on this list, the buttons could continue work, but compatibility is not guaranteed.

  • Chrome version 41 and later
  • Firefox version 43 and later
  • Safari version 8 and later
  • Opera version 12 and later
  • Edge version 14 and later
  • * Internet Explorer version 11 and later

* Note: While the buttons should work on IE11, we have to load several polyfills in order to make it compatible. For the best checkout experience, we recommend using a more modern browser. If you would prefer to not load the IE11 polyfills, you can disable them by adding this custom code to your site:

add_filter( 'edd_load_ie11_polyfills', '__return_false' );

If you add this code snippet, the PayPal gateway will not work in IE11.

For more information about PayPal Checkout browser requirements, see PayPal's Browser Support page.


Upgrading from other PayPal gateways

Upgrading to the new PayPal gateway is simply connecting, following the configuration steps above then disabling the old gateway(s).

If you previously used one of our old PayPal integrations, such as PayPal Standard, PayPal Express, PayPal Pro, or PayPal Payments Advanced, you will be prompted to switch over to this new gateway after updating to Easy Digital Downloads version 2.11.

How does the upgrade work?

Until you connect to the new gateway, payments will continue to process through your site using the existing gateway you've selected. When you connect to the new PayPal integration, you should connect using the exact same PayPal account you used before. Once the connection process is complete and you've enabled the new gateway, payments will start processing via the new PayPal integration. Be sure to disable the old gateway so that only the new one is active.

Inside PayPal itself, you won't notice any difference. Payments will still come in the same way as before. Only the checkout experience on your site has been updated.

What about Recurring payments?

If you use the Recurring payments extension, you can safely switch over to the new PayPal gateway without affecting existing subscriptions. Old subscriptions will continue to process and renew as normal. However:

  1. Once the new gateway is set up, you can uncheck the old gateway from the list of enabled payment gateways.
  2. For PayPal Express and Pro, you do need to keep your old PayPal IPN configured (Express / Pro IPN Doc), as subscriptions that were created with the old gateway will continue to use IPN to let EDD know about renewal payments. PayPal Standard doesn't rely on IPN, as the URL is hard set in the IPN. If you don't use your PayPal Account with multiple stores, we recommend setting it in the event PayPal changes functionality in the future (Standard IPN Doc), but it's not required.
  3. If you're using PayPal Express or PayPal Pro, you do need to keep that plugin activated. The gateway itself should not be enabled (Downloads > Settings > Payment Gateways), but the plugin should be. This is to ensure that the gateway can continue to process old IPNs, as noted in step 2.

Note: Using Aelia Currency Switcher?
PayPal will need to be re-added in Aelia Payment Gateways Settings for the currencies supported on your site. Otherwise, PayPal will no longer be a gateway available on checkout.

Do I have to upgrade to the new integration?

All old PayPal integrations will be deprecated. They will no longer receive updates moving forward. Additionally, many of the old integrations are deprecated on PayPal's end too, and represent older checkout experiences.

Old integrations should continue to work in EDD 2.x, but we recommend switching to the new gateway before 3.0, as old PayPal add-ons will not be updated to become 3.0 compatible.