Skip to main content
Recurring Payments Changelog

Version — August 7, 2023

  • Fix: Revert cancelled subscriptions past their expiration date from having their status updated to ‘expired’ to avoid possible looping of status updates.

Version 2.11.11 — July 26, 2023

  • Fix: One time discounts did not correctly update the cart total.
  • Fix: Stripe actions could run for subscriptions for other gateways.
  • Dev: After payment actions are updated to use new functionality scheduled for EDD 3.2.

Version — July 21, 2023

  • Automatic license renewals could incorrectly cancel subscriptions.

Version 2.11.10 — July 19, 2023

  • Important: Recurring Payments now requires a minimum of WordPress 4.9 and Easy Digital Downloads 3.0.
  • Improvement: PayPal Commerce subscriptions have be updated to correctly cancel the subscription after two failed payment attempts. Existing subscriptions will be updated accordingly.
  • Improvement: Recurring reports in EDD 3.0+ have been updated to accurately group orders based on the store time zone.
  • Improvement: Cancelled subscriptions past their expiration date will now be marked as expired. Developers using the edd_subscription_expired hook will want to check their code.
  • Fix: If edd_get_receipt_page_uri is available, the transactions shortcode did not link to the correct receipt.
  • Fix: Existing users who were not already customers were prevented from purchasing in some scenarios.
  • Fix: Refunding a subscription would send a cancellation email.
  • Fix: Expiration notices were still emailed when a subscription was refunded.
  • Fix: The Content Restriction integration could allow users to all variations rather than those expressly set.
  • Fix: Recurring discounts now work with free trials.
  • Fix: Stripe cancellation errors no longer show markup in subscription notes.
  • Fix: A failing subscription that is cancelled in Stripe was not correctly cancelled in EDD.
  • Fix: Cancelling a subscription in Stripe did not update the subscription in EDD.
  • Fix: Querying subscriptions with a null price ID did not return subscriptions for single-price products.
  • Fix: If a free trial was in the cart and a discount was added, the cart total was incorrect.
  • Fix: Upgrading or renewing a licensed product could cancel the existing subscription prior to the new subscription being created.
  • Fix: Some users were incorrectly denied access when limiting downloads to active subscribers.
  • Dev: get_page_by_title was deprecated in WordPress 6.2; Recurring now uses WP_Query directly.
  • Dev: The plugin installation and upgrade process has been improved to reduce the load on a website.
  • Dev: edd_recurring_add_payment_pre_args has been added for developers who need to modify payment details before adding renewals to the database.
  • Dev: The database query methods have been updated to ensure consistency between getting and counting subscriptions.

Version 2.11.9 — February 9, 2023

  • New: Recurring now registers subscription specific capabilities to allow for better role management and access to subscriptions.
  • Improvement: Allow dates to be defined when adding a new renewal order.
  • Improvement: Software Licensing discount calculations have been revised to be correct and work with cart discounts.
  • Fix: Currencies were not always properly displayed in the order details on sites with multiple currencies.
  • Fix: Renewal orders were not always linked to the correct email after a customer updated their email address.
  • Fix: The subscription order status has been added to the list of deliverable order items statuses.
  • Fix: An error could occur on the order details screen if orders were considered part of a subscription but a subscription did not exist.
  • Fix: The license renewal link on the subscription details screen did not display correctly.
  • Dev: An unneeded legacy filter for PDF Invoices has been removed.

Version — November 11, 2022

  • Improvement: It is now possible to manually add a subscription with a $0 initial amount.
  • Fix: The Stripe express checkout could cause PHP notices when Recurring loaded.
  • Fix: The discount check could error in EDD 2.x.
  • Fix: The updated admin script might not have loaded due to caching.
  • Fix: The Stripe gateway could cause a fatal error with one time trials.
  • Dev: Unnecessary files have been removed from the vendors directory.

Version 2.11.8 — November 9, 2022

  • New: Subscriptions can now be exported to a CSV file.
  • New: The subscriptions table now has a filter bar to filter by product or subscription status.
  • New: The subscription_details email tag has been registered for purchase receipt emails.
  • New: subscription_details, subscription_period, and subscription_term email tags have been registered for the renewal and expiration emails.
  • New: One time discounts can be enabled on an individual discount basis.
  • Improvement: The admin subscription forms have been completely rewritten to be more accessible, responsive, and intuitive.
  • Improvement: The subscriptions tables have been updated to be more consistent with WordPress and EDD.
  • Improvement: Subscriptions now have their own tab when viewing customer details.
  • Fix: In EDD 3.0, updating the customer for an order did not update the related subscription.
  • Fix: The Content Restriction integration could have had an undefined variable.
  • Fix: In certain cases, the order items migration appeared to never stop, even though it was done.
  • Fix: It is now possible to purchase a product with a free trial using PayPal Commerce.
  • Fix: When erasing a customer’s data, active subscriptions are now cancelled automatically.
  • Dev: The minimum PHP version is now 5.6; the minimum EDD version is 2.9.
  • Dev: How the plugin loads has been updated.

Version 2.11.7 — May 31, 2022

  • Improvement: The payment method update form now uses the Stripe action hook to load the credit card form instead of calling it directly.
  • Change: The EDD Subscriber role will not be registered for new installs.
  • Change: Renewal orders will now be assigned a unique payment key.
  • Fix: The EDD Subscriber role capability was not correctly registered.
  • Fix: Manually creating a subscription for a single price product could throw a PHP notice.
  • Fix: If a renewal transaction failed in PayPal Commerce, it was not marked as failed in EDD.
  • Fix: Manually creating a subscription did not set the correct payment mode when test mode was enabled.
  • Dev: The subscriptions count method used an ambiguous column reference for the primary key.
  • Improvement: EDD 3.0 – subscription information will be moved to the order details tabs.
  • Fix: EDD 3.0 – the Stripe gateway now checks for the `complete` order status when checking if a subscription can be reactivated.
  • Fix: EDD 3.0 – Renewal orders were setting an incorrect price ID for single price products.
  • Fix: EDD 3.0 – Renewal orders no longer run ledger functions to update download/customer statistics.
  • Fix: EDD 3.0 – The edd_subscription order status has been added to the arrays of complete, refundable, net, and gross order statuses.
  • Fix: EDD 3.0 – Manually added subscription orders did not set the correct order item status.
  • Dev: EDD 3.0 – Order items in will be migrated to have the correct status. This affects existing 3.0 installs only.
  • Dev: EDD 3.0 – Unit tests have been updated for EDD 3.0 compatibility.

Version 2.11.6 — February 8, 2022

  • Fix: The transaction list in the edd_subscriptions shortcode now shows the correct date.
  • Fix: Content Restriction — The active subscription check for a specific product in the shortcode attributes has been fixed.
  • Change: Content Restriction — When the subscription parameter is added to the shortcode, the Content Restriction messages are used if a user does not have access to the content.

Version 2.11.5 — January 26, 2022

  • Improvement: The “View Invoice” link on the front-end subscription page has been replaced with a “View Transactions” link. This allows the customer to view all transactions associated with a subscription, instead of just the first one.
  • Improvement: Stripe – Activate EDD subscriptions via webhook. This fixes an edge case scenario where the Stripe payment was taken but the EDD subscription was not activated.
  • Fix: Content Restriction – When using the edd_restrict shortcode, the message parameter was ignored when subscription check is set.
  • Fix: Content Restriction – The edd_restrict shortcode wasn’t working well when using a mixture of recurring and non-recurring products.
  • Fix: PayPal – Subscription status incorrectly changed to “expired” after subscription has completed. (When using the “Times” field.)
  • Fix: Renewal payments don’t show the subscription status on the admin Payment Details page.
  • Fix: Add an additional check to ensure renewal reminders are not sent for cancelled subscriptions.

Version 2.11.4 — December 7, 2021

  • Refactor: Recurring email settings have been moved to the “Emails” tab in their own section.
  • Refactor: Recurring settings have been moved to the “Payments” tab if you’re on EDD 2.11.3 or higher.
  • Improvement: Allow all email template tags (including ones from EDD core and other extensions) to be used in recurring payment emails.
  • Improvement: When viewing a payment that has an associated subscription, the status of that subscription is now shown next to the ID.
  • Improvement: Better error message logging when the PayPal Commerce PAYMENT.SALE.COMPLETED webhook fails.
  • Fix: Potential undefined index error when calling edd_get_settings_tabs().
  • Fix: The cron job that auto updates subscription statuses to “expired” now also checks for “trialling” subscriptions in addition to “active” ones.
  • Fix: PHP notice when downloading a file under certain circumstances.
  • Fix: PHP warnings when viewing a subscription whose parent payment has been deleted.
  • Dev: Refactor how licensing gets instantiated.

Version 2.11.3 — September 28, 2021

  • New: When signing up for a free trial, the renewal amount is now displayed before the submit button.
  • Fix: Refunding a subscription payment in PayPal not updating the status in EDD.
  • Fix: Trial subscriptions created before the PayPal subscription was activated.

Version 2.11.2 — September 20, 2021

  • Improvement: Add currency to the PayPal Commerce $plan_string logic. This ensures different PayPal plans are created for different currencies.
  • Fix: Software Licensing – when upgrading a license key via PayPal Commerce, the subscription renewal date was not matching the license key’s expiration date.
  • Fix: EDD occasionally reporting an incorrect subscription expiration date after an upgrade. (EDD’s date did not match the payment gateway’s renewal date, which was the correct one.)
  • Fix: PayPal trials occasionally being created for the wrong amount of time.

Version 2.11.1 — August 30, 2021

  • Improved: Better compatibility with caching pages when using the PayPal Commerce Gateway.

Version 2.10.5 — June 7, 2021

  • Fix: Stripe – Renewal payments not being recorded correctly for zero decimal currencies.
  • Fix: EDD 3.0 – Unable to capture Stripe payment intents with zero decimal currencies.
  • Fix: EDD 3.0 – Automatic renewal payments not inheriting tax rate from parent order.

Version 2.11 — June 7, 2021

  • New: Add support for the PayPal Commerce gateway.
  • Fix: Software Licensing – The wrong expiration date could be calcualted when using one-time trials.
  • Fix: Software Licensing – Upgrade logic now accounts for different license lengths with variable prices.
  • Fix: PayPal Express – Renweal IPN could have incorrect payment amount recorded in EDD.
  • Fix: A discount code could modify a $0 trial to a non-zero amount.
  • Fix: Tax calculations were improved when using Signup Fees.
  • Fix: EDD 3.0 – Updated more references to the `post_` function calls.
  • Fix: EDD 3.0 – Orders table viwes were still using wp_count_posts for payments.
  • Fix: EDD 3.0 – Recurring Payments may overwrite the order status parameter when querying orders.

Version 2.10.4 — May 24, 2021

  • Improvement: Added HTML IDs to Software Licensing error notices.
  • Fix: “Cancel Subscription” checkbox shows even if there is no subscription associated with the payment.
  • Fix: Undefined index error in add_subscription_cart_details() method.
  • Fix: It was possible to have a note added to a subscription about a status change, even if the actual status change failed. Now the note is only added if the database record updated successfully.
  • Fix: Fatal errors when running old database upgrades.
  • Dev: Ensure PayPal functions file is always loaded.
  • EDD 3.0: Add “Cancel Subscription” checkbox to the new refund UI.

Version 2.10.3 — April 29, 2021

  • Improvement: Template tags can now be used in the Payment Received/Failed email subjects.
  • Improvement: The width of the “Times” input box has been increased.
  • Fix: Stripe integration not properly checking zero decimal currencies when creating a Stripe plan/product.
  • Fix: Automatic license renewals not showing in Software Licensing “License Renewals” report.
  • Fix: Renewal payments weren’t setting the “completed_date”.
  • Fix: Deprecation notices in PHP 8.
  • Fix: Unnecessary files being included in build.

Version 2.10.2 — March 4, 2021

  • Fix: A customer could end up with two subscriptions if they have a failing one and then manually renew. The failing one is now cancelled when the new one is created.
  • Fix: JavaScript errors when updating a payment method for a Stripe subscription.
  • Fix: Old subscription not cancelled when upgrading via the Test Gateway.
  • Fix: Addresses for renewal payments could be empty if the customer record doesn’t have an associated address, but the original payment did.
  • Fix: Fatal error when manually creating a subscription with an invalid payment ID.
  • Dev: EDD 3.0 compatibility with earnings export.

Version 2.10.1 — February 1, 2021

  • Fix: One time trials in not honored when purchasing via PayPal Express.
  • Fix: Tax rates stored incorrectly when using tax rates with more than one decimal place.
  • Fix: “Non-numeric value” error when viewing certain subscription records.
  • Fix: Undefined index errors.
  • Fix: Invalid timestamp error when upgrading from a lifetime license to a recurring subscription.
  • Fix: Incorrectly being offered pro-rated amount when upgrading from a free trial.
  • Fix: 2Checkout off-site payments not working in sandbox mode.
  • Fix: Tax rates not being stored for renewal payments.
  • Fix: Deprecation notices when the 2Checkout gateway is enabled.
  • Fix: “unexpected output during activation” when first activating the plugin.
  • Fix: Unable to remove a trial from a variable price when it was saved previously.
  • Improvement: Replace hard-coded date/time formats with site options.
  • Dev: Compatibility with EDD 3.0 release.
  • i18n: Added German translation.
  • i18n: Allow trial duration unit string to be translated.