Recurring Payments has been a staple in our extensions catalogue since it was released almost exactly three years ago. When first released, it provided some of the basic and necessary functions for processing recurring subscriptions through Easy Digital Downloads.
It was not, however, without its limitations and shortcomings. Today, I would like to show you a preview of the next version of the Recurring Payments extension that is the result of reevaluating the platform from the ground up and building the plugin how we wished it had been built from the beginning.
With this next version of Recurring Payments, we took a good, hard look at what the existing plugin offered and what we wished it offered. The end result is, to put it mildly, enormously improved.
As one of the single most commonly requested features, we are thrilled to announce that Recurring Payments 2.4 introduces support for multiple subscriptions on a single account. This means customers can have 1, 2, 3, or any other number of separate subscriptions on their account.
Improved Payment Gateways
Being one of the most widely used extensions by people from all parts of the world, we receive a lot of requests for support of particular payment gateways in Recurring Payments. With the version 2.4 update, we are adding support for 4 additional payment gateways:
- PayPal Express
- PayPal Website Payments Pro
These new gateways are being added on top of the ones we already supported:
- PayPal Standard
Note: the Paymill payment gateway is no longer going to be supported with Recurring Payments 2.4. If you use Paymill, we highly recommend that you migrate to Stripe.
We have also completely rebuilt the way that payment gateways interface with Recurring Payments, making it dramatically easier for us to add support for even more payment gateways in the future. After 2.4, we plan to add support for Braintree, Amazon Payments, and possibly more in version 2.5 or soon after. A complete developer guide to building new payment gateways for Recurring Payments is also going to be available soon.
Complete Subscription Management Interface
One of the largest limitations of Recurring Payments since its introduction was the lack of an interface to view the subscriptions on a site. With 2.4, we have built a complete interface that allows you to view and modify subscriptions.
Better Integration Between Extensions
Here at Easy Digital Downloads, we constantly strive to make all of our products work seamlessly together. Some extensions work better together than others but it is our goal to make all of them behave as a single, cohesive system. Recurring Payments 2.4 is a great example of that. It is integrated perfectly with some of the other most widely used extensions, including Software Licensing, Auto Register, Content Restriction, and others. Note: integration with Frontend Submissions is not yet supported but is on our todo list for 2.5 or soon after.
We are most excited about the improved integration with Software Licensing, which lets you easily set it up so that license keys can be tied to a subscription and automatically renew when renewal payments are processed. The Software Licensing integration also allows customers to upgrade from one subscription level to the next.
Another element of Recurring Payments that has always been lacking is the customer dashboard. In 2.4, we have completely revamped the customer views and controls, allowing site admins to give customers full access to view their subscriptions, update payment methods, and even cancel subscriptions if they wish.
Configurable emails for various subscription events has been another of the most commonly requested features for Recurring Payments. With the upcoming 2.4, we are happy to say advanced email control is now included.
There are configurable emails for:
- Renewal payment received
- Subscription expirations (expiring soon, expired recently, etc)
- Upcoming subscription renewal
- Subscription cancellations
To say that this update is anything but small would be an understatement. Version 2.4 is the result of over 6 months of active development and it was largely made possible through collaborative development.
GiveWP is a wonderful plugin from the folks at WordImpress that was partially based on a fork of Easy Digital Downloads. They approached us about working together to build EDD Recurring Payments 2.4 and Recurring Donations for GiveWP. Since our two platforms shared so much in common, it was a perfect match.
The development cycle of Recurring Payments 2.4 was also assisted by Bruce Lance, a developer for the WP Ninjas. James and Kevin of WP Ninjas were incredibly gracious and donated numerous hours of Bruce’s development time to help make Recurring Payments 2.4 a reality.
This 3-way development collaboration allowed us to make huge strides in improving Recurring Payments for Easy Digital Downloads and we are incredibly excited to release the update in a few weeks.
Version 2.4 is very, very close, but not quite ready. We have a few more items to shore up before we release it. At this time, we hope to have a final release ready within a few weeks. Before the final release, we will release a private beta to a few select customers in order to get their feedback and ensure everything runs smoothly on their systems.
We have been beta testing the 2.4 update on our own sites for several weeks already and are very happy with where it is.
Questions? Comments? Let us know below!
Will rest API finally available for recurring payment plugin? So we can build mobile app with EDD and Recurring as backend. A way for us to use web api to see if the current login user (maybe with email as the key) subscription status – active, expired, or cancel. And return a promise. EDD core has this function but not Recurring and I think this feature is badly needed for us to extens EDD and Recurring.
Yes! That’s a feature we forgot to include in the post 🙂
Version 2.4 includes a REST API endpoint for retrieving subscription details.
Well. Then this might be the best news I have heard this year! Great job guys! Can’t wait for it to release.
Awesome improvements. ¡So exited to try them! Everything backwards compatible, I suppose? Will work with PHP 5.3? I have some clients running on that, yet. And happy to see the Frontend Submissions integrations on the roadmap!! 🙂 Kudos to you, guys!
This update will require PHP 5.3.3 or later.
We’ve worked hard to make this 100% backwards compatible. There are a few caveats though. We will be documenting those on our developer blog before the final release goes out. If you haven’t, I would recommend subscribing there: https://easydigitaldownloads.com/development/
The client is on 5.3.29-1~dotdeb.0 so it’s not going to work, right? I’ll try to update to PHP 7.
Subscribing right now!
Specifically, it’s the Stripe payment gateway that requires 5.3.3 (that’s the version required by their PHP library). If you’re not using Stripe, any version of 5.3 should work fine.
I’m using your Stripe Extension too. Thanks to letting me know. I’ll update to PHP 7 then.
There will be an update to the Stripe gateway rolled out at the same time.
Ok! Thanks Pippin. Great work 🙂
5.3.29-1~dotdeb.0 is greater than 5.3.3 (29 > 3) so it should work just fine.
Haha, you are so right. My fault. Somehow I thought it was 5.3.30. Thanks, Chris!
Another features that I hacked around using EDD recurring is “Free trial” option. The old way is to have negative initial amount, but still larger than the minimal amount Stripe or PayPal require for transaction to create a First Month Free Trial. Will this problem be solved so we can truely have “Free Trial” option to let user try before they buy?
Not 100% yet but it’s closer than before.
I have an entire new product launch waiting on this so I’m very excited for it! 🙂 This update is going to solve every major issue we have with recurring payments today. Thank you for doing this!
Any update on when the beta will be available?
We’re sending it out by tomorrow or early next week to select testers.
In this new release will be also the possibility to choose “Trial version” where you can configure the trial period (14 days for instance) and only after this period “take the money” from the credit card of the customers?
Will be also a way to “cancel” the subscription if during the trial the users does not like the product for instance?
Could we be included inside the “private beta”?
Thanks, Alex (IntellyWP).
Advanced trial periods are on our todo list for the next version, not yet in 2.4.
Our beta list is full at the moment but if we do a second trial period, we can get you included 🙂
Awesome news. Will there be an option to have quarterly or half year subscriptions?
I noticed you had a $45 days access on priority support and wondered how you did that.
Not yet but we have setup the underlying infrastructure to make that trivial to add in the next release.
The Priority Support is handled through Restrict Content Pro: http://restrictcontentpro.com
Oh cool, so in the next 2.4.x update there’ll be the ability to offer quarterly subscriptions?
Will this work via PayPal?
Hi Pippin, great news! Im looking forward to it.
Will it be possible to upgrade to a better licence (trough the upgrade path) and automaticly cancel the renewal of the old license?
Yes, that is fully supported.
Does this work with PayPal recurring subscriptions or just licenses?
It requires Software Licensing since that is where upgrade paths are configured.
This is great news. I have been eagerly waiting for the inclusion of more payment gateway options. This will be the silver bullet for selling my new SaaS product.
How to show the subscription dashboard? Any knowledge base for that?
A full new set of documentation will be published at the same time that covers all details of this.
Great new features, already love it? Will it support Reference Transactions in PayPal ? Or do you how it can be done otherwise?
We hope to add Reference Transaction support in 2.5 or soon after. They are not supported in 2.4
Any new yet regarding reference transaction?
We have a problem with recurring payments in with customers from Germany when using PayPal Express.
As I understood from PayPal it’s a known problem as most PayPal accountד in Germany does not have a credit card associated with them as a primary funding resource, so recurring payments will only work when using reference transactions.
Really hope that it’s coming soon as new customers can’t purchase and existing customers can’t renew.
Unfortunately, no. We don’t have an update on reference transactions yet.
For the issue with German customers, see this plugin we built for the problem: https://github.com/easydigitaldownloads/edd-remove-german-subscriptions
I particularly like that this is a collaborative effort across companies. Great stuff. Can’t wait to hit ‘update’
We will actually be disabling automatic updates from 2.3.x to 2.4 due to significant changes that could potentially cause unexpected effects. We’ll have more information about how to upgrade to the new version soon though.
Very excited to see this update nearing completion, it’s solving almost all of my issues with recurring payments currently which is awesome.
By the way, will this allow for “Times” (duration) to be set on Stripe subscriptions?
No but we have laid the ground work to make that possible in the next update.
Exciting times ahead! Thank you for all of your great and hard work!! // Quesrion: will this version work with the Volume Diaccounts add-on?
Volume Discounts is not yet supported but Discounts Pro is.
Excellent, Smithers… Ex-cel-lent! (-;
If you’ve got a rest API I have several clients that could certainly be interested in using EDD.
Pippin said it will have the rest API function. So excited to make some mobile app using EDD backend!! Can’t wait~~~
Will 2.4 support annual renewals? For example, there is a higher initial price and then a smaller renewal price yearly.
Yes it does!
Any news on the ETA?
We’re looking at a release mid to late next week.
Thanks very much!
Well, I installed the new plugin, but I don’t see any ways to do this.
There are two ways:
1. If you’re using Software Licensing, the “Renewal Discount” option applies automatically.
2. The “Signup Fees” option lets you add or subtract from the initial payment amount.
If I use the second option, it will subtract the signup fee on the first purchase too.
The signup fee only applies to the first payment, so simply adjust your product price to be what you want the recurring amount to be and then use the signup fee to define what the initial amount is.
That’s not a very elegant way to do that.
With the software licensing plugin, is it possible to only display my initial price to the customer, but when they renew their licence, they automatically pay the lower price?
It actually works out very well and you can even display the additional amount for the initial price on the product and on checkout.
With Software Licensing, the higher price can be part of the standard product price since the renewal discount can be applied to the followup payments automatically.
“It actually works out very well ”
I don’t think it does because it’s not clear to the customer what fees they have to pay. It could very well discourage them to make a purchase. When i look at this solution as a customer, I would think that I have to pay the standard price and the signup fee every time.
I purchased the software licensing plugin, but it has its drawbacks in this matter too.
I think it’s a very important feature when it come to selling digital products so these plugins should handle this better.
The exact amounts are shown to the customer on the product page. There is an option in the Recurring Payments settings to enable the display of signup fees on purchase buttons. Enable that and then all amounts are shown on the product and in the cart.
My developer is building a service and we have need recurring payment but service can finsh before expiration date.
Can i synch with api the move up date?
Could you elaborate a little bit more on your exact needs?
Say the service is provided thro. a page in wordpress and assume this page lets users to do searches as part of the service. Now if there is a subscription that renews monthly but also limits the number of searches within a month to a certain pre-determined number and the user had exhausted the allowed number of searches much before the month gets over, we will then need to mark the subscription as expired and trigger him an email to renew his subscription. is this possible?
so the idea is to use EDD recurring payment and EDD content restriction plugins to manage the service provided via the wordpress page.
Restricting the content on the page will be supported with Recurring Payments and Content Restriction. Limiting the number of searches is not a feature we provide.
I quoted search as an example. Our code will limit the number of searches but my question is would it be possible to integrate our code with recurring payments plugin (say thro. a filter) to set the subscription status as complete though the subscription is for a month and the subscription period isn’t completed yet?
I would also like to use the content restriction plugin to limit the pageview once our code has detected that the allowed number of searches have been exhausted.
I would like to integrate our code with recurring payment and content restriction plugin to achieve the above, say through a wp filter. How easy will it be?
Yes there are filters and actions available for you to modify the behavior through your own custom code.
Ok, sounds great…awaiting the release…
Can a system be setup up using this and the points and credits plugin to create a membership site where recurring payments can be charged monthly in exchange for credits that are automatically applied to a users account that can be used to download digital products from the site? would i also need an additional plugin to setup different membership levels and pricing?
Do you want new points to be added to the customer’s account with each renewal payment that is processed?
Hi, any update on the launch date for Recurring Payments module? Or is there a beta we can take a look at? We’ve decided not to use s2member for a project we’re building and really need to get a handle on the new features/functionality.
Look forward to hearing back!
It’s planned for release later this week.
I am also interrested in this.
Will the products still need to be purchased separately or can multiple renewal products be placed in the cart and processed?
It depends on the payment gateway being used. Some payment gateways allow multiple products in the cart at once and some restrict it to one. Notices are shown on the cart accordingly.
Thank you. Can you tell me which gateways will allow multiple renewal products at the same time?
Stripe, PayPal Website Payments Pro, 2Checkout, and Authorize.net.
So excited to start setting this up!
I don’t admit defeat easily, but I can’t seem to find where in the Dashboard the Customizable Emails are. Been through every EDD page and yes, Settings > Emails. And the sub-tabs.
Any help from anyone?
Otherwise, successful update. The Subscriptions section is great!
Forget to toggle on “Notify me of follow-up comments by email”. Doing so now.
Yeah, that happens. There should be a way to subscribe to comments without commenting 😉
At least I got that notification. Thanks for testing that Joan. If you’re using Recurring Payments, are those new Email options visible in your account?
You’re welcome! I didn’t upgrade yet, just waiting a little bit so see if a bug shows up. Excited about the changes, but scared of major updates, haha! But i wold guess they are on
Found out with the help of Barbara on their stellar support staff. Go to Settings > Extensions > than Recurring Payments.
If you have a lot of EDD extensions, (Commissions, Mailchimp, etc) the link to go to the Recurring Payments section gets pushed off a bit, but look for it, its there!
There are a few other important settings other than just mail, so thats why its not only in the Emails tab.
Hope that helps someone else!
I’m looking to simplify getting payments from my hosting clients. I’ve got a very manual system now. This plugin seems very robust, but my question is…what do you do about clients who don’t pay or are late? I currently add late fees every week…can the plugin add late fees? And what does this plugin do to keep getting payments if they fail?
We do not support charging late fees but we do include support for automatically sending customers emails when their payment fails. Customers also receive the option to update the credit card associated with their subscription, so when it fails, they can log in and update it. If the customer fails to update their credit card, the subscription can be automatically cancelled.
Exciting times ahead! Thank you for all of your great and hard work!! // Quesrion: will this version work with the Volume Diaccounts add-on?