You must install and activate these plugins:
Set up groups and access restrictions as needed with Groups. Please refer to the Groups plugin page and Documentation for details.
If you want to send out notifications, also install the Groups Notifications plugin.
From your WordPress dashboard, go to Groups > PayPal to adjust your settings.
You can use the sandbox mode for testing purposes. Enter your PayPal Sandbox email address in the field provided and check the Work in sandbox mode option to enable Sandbox mode.
To go live, you must disable the sandbox mode and input the email address for the PayPal account that should receive payments.
The Instant Payment Notification (IPN) URL
The IPN URL is indicated for your site, make sure that you do not get any warnings related to your security certificate when using secure URLs.
If this option is checked, the IPN URL will use HTTPS (Hypertext Transfer Protocol Secure) instead of HTTP. It is recommended to use secure URLs, but your web server must use a valid security certificate.
Notifications will fail if secure URLs is enabled and an invalid security certificate is used.
Return and cancel URLs
Note that indicating these URLs is optional, but it may improve the purchase experience of your clients.
Create a new Page on your site and place the
[groups_paypal_return] shortcode on it. Along with it, you may place any additional information you would like to provide to your clients after checkout. For example, a link to instructions for new members could be appropriate.
Copy the URL of that page and paste it into the field labeled Return URL.
Note that you must enable Auto Return in your PayPal profile if you would like clients to be redirected to your site automatically after they have made their payment.
For buyers who have abandoned the checkout process before making their payment, you can create a page that provides useful information and alternatives, while informing the potential customer that payment has not been made. Paste the URL of that page in the field labeled Cancel URL.
Other settings can be adjusted as required. This includes:
The option for the buyer to input a note with their payment.
Three options to prompt for a shipping address:
- prompt for an address, but do not require one
- prompt for an address and require one
- do not prompt for an address
The locale of payment pages presented to buyers. The locale of the login or sign-up page, which may have the specific country’s language available, depending on localization. If unspecified, PayPal determines the locale by using a cookie in the subscriber’s browser. If there is no PayPal cookie, the default locale is US. Please refer to HTML Variables for PayPal Payments Standard for allowed values.
Follow these steps to allow visitors to subscribe on your site:
- Add a New Subscription: from your WordPress dashboard go to Subscriptions > Add New.
- In the Price panel, fill in the subscription price details.
- Check the groups that the subscription should grant access to in the Groups panel.
- Allow users to purchase the subscription, there are basically two options:
- Use the
[groups_paypal_subscription]shortcode on a subscription page to allow users to purchase the subscription.
- Alternatively, to allow users to purchase a subscription on any page, use the
[groups_paypal_subscription id="x"]shortcode, where x is the post ID of a Subscription.
- Use the
- You should also add a link to your subscription page on a prominent place, for example add a link to the subscription page to a menu or insert a link to it on a page where you provide information about your membership and subscription plans.
Troubleshooting and Debugging
Add these lines to your
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false ); define( 'IX_PAYPAL_DEBUG', true );
Under Groups > Subscription Settings, check the option to Enable logging.
Test and review entries in your site’s
debug.log which you will usually find in the
Usual causes for trouble:
- Conflicting plugins or badly coded templates that interfere with intercepting PayPal IPNs.
- Insufficient PHP memory limits.
- Invalid SSL certificate for the site.
- PayPal account or sandbox account issues, e.g. not eligible for subscriptions.
- Temporary issues with PayPal’s IPNs, including IPNs not being sent.