Skip to main content
Easy Digital Downloads Changelog

Version 3.2.11 — March 29, 2024

  • Orders: When searching orders, a Product ID was being erroneously added to the filter arguments when it shouldn’t have been.

Version 3.2.10 — March 28, 2024

  • Downloads: Improved performance when creating and managing download directories.
  • Discounts: Start and End dates are properly handling the timezone.
  • Discounts: Improved the accuracy of the check for if a store has active discounts.
  • Discounts: A background upgrade process will be run to ensure all discounts have valid start and end dates.
  • Dev: Debug log is now being managed within EDD’s upload directory.
  • Payments: Improved the detection and handling of purchase sessions when displaying the Receipt and Confirmation pages.
  • Performance: Optimized the amount of data stored in the options table related to changelogs.
  • HTML: The Product Dropdown could be forced to include items that were not products.
  • HTML: The Product Dropdown has had its placeholder value improved.
  • HTML: The Product Dropdown could have an unexpected empty option in the list of options.
  • HTML: The Textarea HTML field could add empty content to the value.
  • Checkout: The Privacy Policy checkbox may not always show when expected.
  • Blocks: Improved loading of Easy Digital Download blocks.
  • Blocks: Improved the handling of Easy Digital Download blocks when using a classic theme.
  • Orders: Manually creating orders in the admin could fail to save the order due to a capability check.
  • Migration: Improved the reliability of the EDD 3.0+ migration routine for possibly corrupt serialized data.
  • Migration: Improved PHP 8.0+ compatibility for the EDD 3.0+ migration routine.

Version 3.2.9 — February 27, 2024

  • Stripe: Resending the purchase receipt could fail if including the Stripe statement descriptor in the email template.
  • Settings: Improve the reliability of determining the timezone settings in WordPress.
  • Reports: When using custom dates for reporting, some timezone settings could make the dates show incorrectly.
  • Emails: Adjusted when the deprecation notices will be shown for the legacy email hooks.

Version 3.2.8 — February 16, 2024

Pro

  • Checkout: The visitor location detection now handles just country and region, to avoid inconsistent results for postal code.
  • Checkout: The visitor location detection can be configured to be used for All Users, Logged-Out Users, or Disabled.

Lite & Pro

  • Stripe: Resolved an issue that could cause card payments to fail when providing a Bank statement description with the statement_descriptor parameter.
  • Stripe: IMPORTANT! The Statement Description settings in the Stripe gateway settings are no longer editable. The description is now automatically pulled from the Stripe account settings.
  • Stripe: Buy Now buttons could throw a PHP deprecation notice.
  • API: Added an option to enable logging public API queries (API Requests without a key & token) for the EDD API.
  • Downloads: Improved the reliability of the download file access checks.
  • Downloads: Searching downloads via the dropdown could return incorrect results.
  • PayPal: Improved the reliability of the PayPal Merchant Account Connection process.
  • Taxes: Improved the reliability of the tax calculations for orders with multiple items.
  • Checkout: The Legend for checkout form elements could display incorrectly in Safari.
  • HTML: Introduced a new Toggle Checkbox Class.
  • Reports: A fatal error could occur if you supplied an invalid Download ID to the reports URL.
  • System: Prevent a fatal error and improve the gathering of site system information.
  • Compatibility: Improved checkout compatibility with Wordfence.

Version 3.2.7 — February 1, 2024

  • Admin: Improved validation of saving some settings.
  • API: Improved API Key management for admins, including showing the last time a key was used.
  • Customers: Prevent updating a customer to have no email address.
  • Downloads: Improved the consistency of the results of setting and getting a price option name.
  • Downloads: Searching the downloads dropdown was not working correctly for international characters.
  • Downloads: Improved download access validation.
  • Fees: Improved the reliability of the fees and tax calculations.
  • Orders: The Order Status Badge API now includes the order as a parameter on filters.
  • Reports: Download Taxonomy reports have been improved for large data sets.
  • Reports: Some timezones and date calculations were getting incorrect date ranges.
  • Stripe: Improved mixed cart messaging.

Version 3.2.6 — December 11, 2023

  • Checkout: Improved checkout block field handling for guest customers.
  • Checkout: Login fields on checkout were incorrectly trying to process the checkout when hitting the ‘Enter’ key.
  • Admin: Better compatibility when loading EDD footer and documentation links for non-store admin pages.
  • Admin: Custom EDD admin pages could throw an error if incorrectly filtered.
  • Downloads: Improved handling of detecting download variable prices.
  • Downloads: Custom product dropdown could incorrectly exclude the download being edited.
  • Reports: The store dashboard widget revenue and sales stats sometimes parsed dates with an incorrect offset.
  • Reports: Pie charts for revenue currency values were not correctly applying the currency symbol.
  • Reports: Improve Export Product Sales accuracy.
  • Compatibility: Further improve PHP 8.0+ support.
  • Shortcodes: Some shortcode attributes were hardened before being output.
  • Orders: Better handling of refunding orders.
  • Stripe: Better error messages when some cart contents are not compatible with the Stripe gateway.
  • Discounts: Ensure store discounts recorded for orders are unique.

Version 3.2.5 — November 9, 2023

  • Compatibility: Improved compatibility with servers not configured with mbstring.
  • PayPal: Improved detection of PayPal order session handling and processing.

Version 3.2.4 — November 6, 2023

  • Compatibility: Adds support for PHP 8.2.
  • PayPal: Improve error handling of PayPal API responses.
  • REST API: Download terms now have the featured images in the JSON response.
  • Checkout: Improved the checkout block login and registration handling.
  • Checkout: The legacy shortcode properly handles required fields.
  • Emails: Improved sample data for the purchase confirmation preview.
  • Refunds: Improved refund status handling and validation.
  • Downloads: Bulk editing no longer clears prices.
  • Downloads: Improved the ability to filter the ‘supports buy now’ for a download.
  • Downloads: Reliability of the file download limits was improved.
  • Store: Encourage store owners to set a country to help prepare for upcoming features.
  • Privacy: Enhanced the integration with the WordPress Privacy tools.
  • Reports: Improved chart sizing to prevent overlap and overflow.
  • Dates: Added a polyfill for servers without `mbstring`.
  • Support: Made links to support and documentation more accessible.
  • Taxes: Corrected an issue with subscription updates when taxes are enabled.
  • Registration: Fixed an issue with Recaptcha on the registration form.

Version 3.2.3 — October 2, 2023

  • Blocks: The user registration forms and lost password feature have been updated to allow customization via hooks.
  • Stripe: Refunded payments initiated within the Stripe Dashboard now create a refund order in EDD.
  • Cart: Improved product validation when adding an item to the cart.
  • Emails: Admin payment & order notifications have been updated to allow further customization.
  • Block Editor: Improved compatibility with themes and page builders.
  • Payments: Ensure that tax rates are accurately stored when using legacy payment creation processes.
  • Customers: Improved the performance and accuracy of checking if a user has previously made purchases.

Version 3.2.2 — September 21, 2023

  • PayPal: The IPN Backup for PayPal was fixed to prevent a fatal error.
  • PayPal: Improved the Buy Now with PayPal payments to bypass Checkout only when Buy Now is fully supported.
  • PayPal: Improved the reliability of the PayPal IPN listener.
  • Stripe: Improved the Buy Now with Stripe payments to bypass Checkout only when Buy Now is fully supported by the product.
  • Stripe: The State/Region ensures that it is updated when the Country field is changed.
  • Emails: Further improved the reliability of payment emails and admin payment notifications.
  • Customers: Migrating the customer data from EDD 2.x to EDD 3.x is now more reliable.
  • Customers: Existing guest customers can now use the EDD Registration form to create a user.
  • Customers: Improved the customer email address detection and reliability.
  • Payments: Updated the customer recent payments list to use the correct date format.
  • Blocks: Improved the reliability of checkout when EDD Blocks or Gutenberg are disabled.

Version 3.2.1 — September 11, 2023

  • Stripe: We’ve improved the error handling and informational messaging related to the Stripe Payments integration.
  • PayPal: When new features are added to the PayPal integration, a background process attempts to register new payment endpoints automatically.
  • API: Accessing the file download logs via the EDD API now supports querying by both customer ID and customer email address.

Version 3.2.0 — September 7, 2023

Pro

  • New: Added the ability to generate unique discount codes when creating new discounts.

Lite & Pro

  • Important: This release requires PHP 7.4 or higher and WordPress 5.8 or higher.
  • Important: Amazon Pay has been formally deprecated and is no longer available for new installs. Existing stores using Amazon Pay are encouraged to explore other options.
  • New: PHP 8.1 is now fully supported.
  • New: Discount codes can now be applied to specific price variations.
  • New: A discount code can now be set to include or exclude specific download categories.
  • New: Store owners can now archive discount codes, to make managing their promotions simpler.
  • New: The discount list now has improved visibility for the status and usage of discounts.
  • New: A new ‘Service’ product type was added to the Product Type dropdown, to allow for non-downloadable products.
  • New: Disputed payments in PayPal and Stripe set the order to a new ‘On Hold’ status, and restrict access to downloads.
  • New: When a payment is disputed with PayPal or Stripe, a link to the dispute is added to the view order details in the admin along with order notes.
  • New: The date that the completed order actions were run is now stored as part of the order itself, not as metadata, and will be displayed more clearly on the order details screens. Existing meta will be migrated in the background; notifications will be updated to keep store owners advised of progress.
  • Improvement: Purchase receipts are now sent using deferred actions, to improve the performance of the payment processing.
  • Improvement: The bundle product metabox has been improved for performance on sites with many products.
  • Improvement: The query for non-bundled products has been updated to be more performant, specifically when editing a download product.
  • Improvement: Improved performance of checkout and customer lookups by conditionally running legacy hooks and filters that contained payment objects.
  • Improvement: Site Health and telemetry now check the health of the REST API via a test endpoint.
  • Improvement: The application fee for Stripe payments is removed for pass holders who have access to the Stripe Pro extension even if they do not have Stripe Pro installed.
  • Improvement: Easy Digital Downloads’ block styles have been updated for non block themes to load only when the block is rendered.
  • Improvement: The EDD Products block now allows products to be filtered by author.
  • Fix: Update Stripe’s non-licensed application fee to 3%.
  • Fix: Stripe Payment Elements no longer supported a theme of ‘none’, and ‘stripe’ has been defaulted.
  • Fix: Added hardening around viewing the adjustments list table.
  • Fix: To avoid conflicts with other plugins, critical vendor libraries have been moved to the EDD namespace.
  • Fix: Regional support for Stripe now checks the Stripe account country before checking the store country.
  • Fix: PayPal Commerce orders where not always being completed when using the confirmation page.
  • Fix: The Stripe Payment Element now uses the browser’s locale for localization.
  • Fix: Using the Import tool could produce a fatal error.
  • Fix: Discount codes resulting in a 100% discount could restrict the cart from allowing the user to complete the purchase.
  • Fix: Saved carts were not correctly saving for some users.
  • Fix: When saving a cart with Stripe as the active gateway, the message stating the cart was saved was removed prematurely.
  • Fix: Recalculating a customer’s stats was not always being scheduled correctly.
  • Fix: Malformed add to cart URLs could result in a PHP warning being thrown.
  • Fix: Flat discount can result in an incorrect rounding total depending on the cart conditions.
  • Fix: Viewing the order details of a migrated order that had its discount deleted looked incomplete.
  • Fix: It was possible for sites with incompatible MySQL versions to not see the appropriate warnings.
  • Fix: Attempting to activate a pass with an empty license key could appear to be stuck.
  • Fix: The Stripe JavaScript has been improved to be more efficient, remove only error messages, and only run when the Stripe gateway is selected.
  • Fix: Stripe could attempt to update a property that is not supported by the Stripe API.
  • Fix: New PayPal Commerce subscriptions might not be correctly marked as complete.
  • Fix: EDD Blocks placeholder styles could interfere with WordPress Core placeholders.
  • Fix: Additional, not officially supported fee data is now stored as order adjustment metadata.
  • Dev: Many filters and hooks that passed EDD_Payment objects now have a complimentary hook or filter that uses EDD\Orders\Order objects.
  • Dev: Easy Digital Downloads is no longer registering the edd_payment and edd_discount post types.
  • Dev: Easy Digital Downloads – Core now holds the Stripe base code, and Stripe Pro 3.0.0 only contains pro features.
  • Dev: Code for old, unsupported versions of PHP has been removed.
  • Dev: A new edd_after_order_actions hook has been introduced to manage all events which should happen when an order is created. This uses the order object for improved performance and any usage of edd_after_payment_actions should be updated accordingly.
  • i18n: 141 Additions, 199 Removals/Location Changes, 17 Differences (counts are approximate).

Version 3.1.5 — July 21, 2023

  • Fix: India Regions were not being properly loaded.
  • Fix: Fixed compatibility with PHP 7.1 when adding a new discount.
  • Dev: Tax settings tab was overriding the base class method for getting the ID.

Version 3.1.4 — July 19, 2023

  • Improvement: The checkout cart markup is now aware if the cart is using the shortcode or the block.
  • Improvement: A filter has been added to the structured data for products to allow extensions to add additional offers.
  • Improvement: The email marker (tagging) experience has been updated to be more accessible and easier to use.
  • Improvement: EDD’s admin JavaScript has been updated to prevent deprecation notices.
  • Improvement: It is now possible to update the sequential start number as long as it does not conflict with existing orders.
  • Improvement: The current file name is now stored with the file download log.
  • Improvement: The emails on the order details screen have been updated to always include the customer’s primary address, even if it wasn’t used on an order.
  • Fix: When the “last month” had fewer days than “month to date”, reporting could incorrectly cross months.
  • Fix: The edd_link_helper function could sometimes have an empty UTM medium attribute.
  • Fix: Checkbox inputs for privacy/terms are now marked required with the HTML5 attribute.
  • Fix: The Recapture onbording process could inconsistently fail to install or connect.
  • Fix – Stripe: Recurring products with free trials were immediately creating an invoice with Payment Elements.
  • Fix – Stripe: When using Payment Elements, clicking the purchase button did not show the loading animation.
  • Fix – Stripe: Stripe data will be included in the Site Health debug information with EDD 3.1.4.
  • Fix – Stripe: The list of countries which do not allow application fees has been updated.
  • i18n: All countries and states are now translation ready.
  • i18n: We have started the process of updating strings to add comments for translators where recommended.
  • Dev: Hooks have been added to the license update/delete methods.
  • Dev: EDD’s pointer registration has been updated so that extensions can hook into it.
  • Dev: EDD now has a status badge utility class to allow order status badges to be more universally used.
  • Dev: The edd_set_upgrade_complete function is now in a file that’s loaded outside of the admin, so it can be used in cron upgrades.
  • Dev: The EDD debugging information under Site Health can now be filtered so that extensions can add key data.
  • Dev: Extensions which use the EDD extension registry will attempt to validate the pro pass license before the individual extension license.
  • Dev: The EDD debug log description has been updated to link to a support doc explaining the edd_debug_log function.
  • Dev: The edd_get_utc_date_string helper function has been created to simplify getting a formatted UTC date.
  • Dev: The EDD settings have been refactored for readability.

Version 3.1.3 — June 28, 2023

  • Improvement: Licensing messages for third party extensions no longer link to the main EDD site.
  • Improvement: The default number of tax rates to query has been increased.
  • Fix: Using a custom straight_to_gateway link did not add a product to the cart.
  • Fix: Products which are marked as having variable prices, but which don’t have any prices, could cause a PHP notice or error.
  • Fix: Duplicate purchase receipt emails could be sent when editing an order.
  • Fix: The product sales export was not respecting the end date when set.
  • Fix: The product sales export was showing incorrect amounts for orders with multiple items, or partially refunded orders.
  • Fix: For stores which collect sales tax, tax exempt fees sometimes had tax applied.
  • Fix: edd_store_discount now accepts times for start/expiration dates.
  • Fix: Users who are not also customers were unable to update their profile using the EDD profile editor.
  • Fix: The pass ID for pro licenses could be incorrect in some cases.
  • Fix: If EDD settings were removed, the telemetry data could cause a PHP notice.
  • Fix: Prevent a JavaScript error that could occur if the cart widget was present on the checkout page when taxes are enabled.
  • Dev: Third party developers who use EDD’s licensing screen can now customize licensing messages.

Version 3.1.2 — June 7, 2023

  • New: The EDD “System Info” has been retired and instead our data is registered with WordPress Core’s Site Health.
  • Improvement: We’ve drastically reduced the possibility of a collision when using Sequential Order Numbers.
  • Improvement: We’ve changed the ‘Default’ item in the Product Type dropdown to ‘Single Product’ to avoid confusion.
  • Improvement: Gateways can now inform EDD if they are properly set up, and prevent enabling them if they are not configured.
  • Improvement: The PayPal Commerce onboarding process has been revamped for speed and reliability.
  • Improvement: The EDD 3.x migration process has been updated to defer all customer and product calculations until the migration is complete, with improved messaging.
  • Improvement – Stripe: We’ve added a filter to allow users to remove the ‘Terms’ text that shows below card fields.
  • Improvement – Stripe: When a user disconnects from Stripe Connect, Stripe is unchecked as an ‘active’ gateway.
  • Improvement – Blocks: When no downloads are created, download related blocks were not correctly showing the button to add a new download.
  • Improvement – Blocks: EDD’s blocks were not respecting custom Download labels.
  • Fix: Pass license keys did not always hold their activation status on multisite installs.
  • Fix: In some edge cases, it was possible to produce a fatal error in PHP 8.0 when adding items to the cart.
  • Fix: Improved capability checks and nonce detection on some actions.
  • Fix: Item fees could fail validation in some cases, resulting in missed fees.
  • Fix: The Payments Query class was incorrectly passing the id__not_in as id__in.
  • Fix: The AJAX cart content response was not using the new method of getting cart item names.
  • Fix: A more user friendly error message is shown to non-privileged users if no gateways are enabled.
  • Fix: The Login URL in user registration emails was not correct when the purchase was made with Stripe.
  • Fix: The calculated fees could differ from the fees that are displayed in the cart contents.
  • Fix: When importing downloads, in some cases, the images were not identified as local files.
  • Fix: The Download Tag taxonomy admin area was not being identified as an EDD Admin area.
  • Fix: There was a possibility of an undefined variable when requesting a password reset.
  • Fix – Stripe: The Recurring Payments update form could load incorrectly if split fields was enabled prior to swtiching to Payment Elements.
  • Fix – Stripe: Multiple improvements to the Stripe form load states when cart recalculations are being run.
  • Fix – Stripe: In some cases, the purchase form was not re-enabled after fixing HTML5 validation errors.
  • Fix – Stripe: Customers updating the payment method for a failing subscription could see an error message when the failed invoice was voided, even though the subscription was updated successfully.
  • Fix – Blocks: The reCAPTCHA key field is now a Password field type.
  • Fix – Blocks: The User Downloads blocks could show duplicate items.
  • Fix – Blocks: Extensions which added data to the cart could display without styling.
  • Dev: The functions to get the lowest & highest price options have been abstracted, improved, and now have unit tests.
  • Dev: Upgrade routines prior to 3.0 have been deprecated.
  • Dev: A new CLI command, recalculate_customer_values has been registered to recalculate sales and earnings for all customers.
  • Dev – Stripe: It is now possible to force ‘Card Fields’ to be available on new installs, by switching on EDD’s Debug Mode.

Version 3.1.1.4.2 — May 1, 2023

  • Security: Improved validation for edd hooks.

Version 3.1.1.4.1 — April 21, 2023

  • Fix – Blocks: Harden blocks loader to verify files exist before requiring them.

Version 3.1.1.4 — April 20, 2023

  • New – Multi Currency: Added a new Currency Switcher Block. (Pro-Only)
  • Improvement: Removed a possible unsupported PHP configuration from the email summaries.
  • Improvement: The edd_get_users_purchases function has been updated to account for customer email address changes.
  • Improvement: Reports have been updated to more accurately account for timezones and date ranges.
  • Improvement: The onboarding wizard loading was not allowing a close and exit after the first step.
  • Improvement: License key handling for 3rd party extensions has been accounted for.
  • Improvement: When using sequential order numbers, searching has been updated to account for order number.
  • Improvement – Stripe: The Payment Element has been improved to handle failed 3DS challenges.
  • Improvement – Stripe: Failed payment attempts are now more reliably accounted for.
  • Improvement – Stripe: The Payment Element billing fields can now be filtered.
  • Improvement – Stripe: The Payment Element now supports mandates, improving multi-regional payments.
  • Improvement – Stripe: The ‘Card Name’ field is re-introduced for regions that require it.
  • Improvement – Blocks: Better support for custom fields with the Checkout Block.
  • Improvement – Blocks: Developers can now register custom columns for the User Downloads block.
  • Improvement – Blocks: The Buy Now button can now have its behavior defined as Add to Cart or Buy Now.
  • Fix: The Duplicate feature for Downloads could conflict with the WooCommerce duplicate feature. (Pro-Only)
  • Fix: Discounts with high value amounts were not saving correctly.
  • Fix: Bulk Editing prices was not working with WordPress 6.1+.
  • Fix: Exporting product sales was not always respecting the date range filters.
  • Fix: Exports with date queries were not always accounting for timezones accurately.
  • Fix – Blocks: Cart section headings were not always displayed when reloading the section via AJAX.
  • Dev: New custom hooks in database row transitions have been added.

Version 3.1.1.3 — March 23, 2023

  • Improvement: The orders list table in the admin now sorts orders by date as the default.
  • Improvement: Removed unnecessary options in the onboarding wizard.
  • Improvement – Stripe: Store owners can now control which payment methods to accept within their Stripe account.
  • Improvement – Stripe: We’ve added a better explanation for the Restrict Stripe Assets setting.
  • Change: Translations are now always managed by WordPress.org.
  • Fix: Existing tables might not have been updated correctly.
  • Fix: Attempting to update the default email address from the profile editor could fail in some circumstances.