Plugin Directory

Easy Digital Downloads

The easiest way to sell digital products with WordPress.

2.6.10, October 21, 2016

  • Fix: JavaScript error when removing a product from a payment that does not contain a fee.

2.6.9, October 20, 2016

  • Fix: Negative fees associated with cart item do not affect cart item earnings.
  • Fix: Z-index of tooltips needs to be increased.
  • Fix: Products endpoint returns empty response on v2 of the API.
  • Fix: Email property set twice in edd_insert_payment().
  • Fix: "Email already in use" error if capitalization does not match.
  • Fix: Chosen dropdowns cause a horizontal scroll bug in RTL.
  • Fix: record_fees() clears fees in the session before purchases are completed.
  • Fix: New user email strips login link on plain text email.
  • Fix: Country and state chosen fields on view order details broken.
  • Fix: Billing address fields are not saving in the payment details page when edited.
  • Fix: Not all settings and data removed when uninstall is run.
  • Fix: Don't output a label if one isn't set for text and select HTML elements.
  • Fix: Date in payment_meta should match the payment date when modified.
  • Fix: The edd_get_random_download() should return an item.
  • Fix: Potential PHP warning when using EDD_Payment->save().
  • Fix: Payment date is not included in the payment history export.
  • New: API sales endpoints now include both user_id and customer_id.
  • New: Add user_dropdown to HTML elements that support chosen.
  • New: Add support for product variations in the HTML elements product_dropdown.
  • Tweak: Change "Disable Guest Checkout" to "Require Login".
  • Tweak: Typo "assocaited" in error messages when adding emails to a customer.
  • Tweak: Resend Receipt button allows selecting which associated customer email address to send receipt to.

2.6.8, September 26, 2016

  • Fix: Category earnings report does not recover when the site has no download categories.
  • Fix: PHP notice caused by localized script loader.
  • Fix: CSV Product exporter/importer does not honor file conditions for variable pricing.
  • Fix: CSV importer improperly started variable pricing IDs as 0 instead of 1.
  • Fix: Repeatable rows not properly adding data-key attribute for variable price select boxes.
  • Fix: Undefined index warning when adding download details widget within the customizer.
  • Fix: edd_update_payment_status() creates new blank payment record if given an invalid payment ID.
  • Fix: REST API Products endpoint doesn't take into account search parameter API.
  • Tweak: Correct typo in country list for Philippines.
  • Tweak: Upload file text is misaligned within the input field.

2.6.7, September 14, 2016

  • Fix: Improved CSV file type detection to avoid 'invalid CSV' error.
  • Fix: The edd_payment_meta filter was not respecting values modified during the filter when saving a payment.
  • Fix: Redirect to Checkout setting was not keeping custom query string variables when direct cart URLs.
  • Fix: Cart Widget did not properly refresh the page when purchase links were present on the page.
  • Fix: Categories/Tags not created and assigned during product import.
  • Fix: Remove discount cron which could cause discount codes incorrectly changing to inactive without warning.
  • Fix: Can't Uncheck All Checkboxes in Multi-Check.
  • Fix: Verify discount is in array before unsetting the discount.
  • Fix: edd_stats_{key} transients causing performance issues.
  • Fix: Undefined Indexes when assigning new user ID to customer details.
  • Fix: Purchase Email Subject ampersands getting improperly HTML encoded.
  • Fix: Local files not being properly found when on a Windows server.
  • Fix: Properly catch default case for license activation callback.
  • Fix: Sequential payment number not assigned when creating payments with EDD_Payment.
  • Fix: Tax calculation should only run on values greater than 0.
  • Fix: Fix variable name in customer recount tool for post status array.
  • Fix: Discount functions not always having user_info array key.
  • Tweak: Rename Download List Table Taxonomy Headers.
  • Tweak: Fix horizontal alignment of items in the dashboard widget.
  • Tweak: Update codex link in readme.txt.
  • Tweak: Update EDD_SL_Plugin_Updater.php to latest version.
  • Tweak: Correct references of 'short code' to 'shortcode'.
  • Tweak: Filter "edd_get_cart_discounts_html" does not pass relevant arguments for developers.
  • Tweak: Update payments export to use EDD_Payment.
  • Tweak: Return null for all empty data returned from the API instead of an empty array.
  • Tweak: Update readme.txt with new donate link.
  • Tweak: Allow custom Arguments for Settings API Callbacks.
  • New: Accepted payment method icons have been updated to PNGs with transparent backgrounds.
  • New: Update MasterCard Logo.
  • New: Add filters to API endpoints.
  • New: Added actions to the adding and removing of fees.
  • New: Buy Now button option on Add/Edit Download now always shows, but is disabled when requirements are not.
  • New: Customer address can now be edited for customers who do not previously have an address on file.
  • New: Add edd_get_php_arg_separator_output on System Info.
  • New: Linking a Customer to a WordPress user now allows login or email address as a valid input.

2.6.6, August 1, 2016

  • Fix: Discount codes being marked as inactive
  • Fix: Incorrect state/province used in tax calculations in certain scenarios
  • Fix: Incorrect placeholder for Select Customer drop down
  • Fix: Incorrect redirect URL for [edd_login] shortcode
  • Fix: Spelling errors in internal documentation
  • New: Added $items parameter to edd_post_add_to_cart action

2.6.5, July 25, 2016

  • Fix: Incorrect parameters passed to edd_is_checkout()
  • Fix: Some records skipped during CSV import
  • Fix: update_option() cannot be used to update EDD settings
  • Fix: Incorrect date format used in CSV payment import
  • Fix: Product-specific sales / earnings graphs show no earnings
  • Fix: Spelling errors in PHPDocs
  • Fix: Resend Receipt box visible even when payment is not Complete
  • Fix: File URLs split on / during product import
  • Fix: Setting display:none on variable price options breaks add to cart processing
  • Fix: Prices can be set as negative
  • Fix: edd_get_variable_prices() returns prices even when variable prices are disabled
  • Tweak: Added filters to payment gateway labels on checkout screen
  • Tweak: Modified how metadata is registered in anticipation of WordPress 4.6
  • Tweak: Changed role required for deleting payment records to delete_shop_payments
  • New: Added Remember Me option to log in form
  • New: Added /info/ endpoint to REST API

2.6.4, July 6, 2016

  • Fix: Negative fees getting included twice with PayPal Standard
  • Fix: Non-standard status in the product import caused silent failure.
  • Fix: Rely on Customer's User ID when EDD_Payment::setup_user_id has incorrect data.
  • Fix: Date strings are not properly parsed in product import.
  • Fix: PHP notice is triggered when using purchase_link shortcode with an invalid SKU attribute.
  • Fix: PHP warning when activating on Multisite due to roles not being correcly instantiated.
  • Fix: It is possible for edd_get_ip() to return a CSV of IP addresses.
  • Fix: Products deleted after being added to the cart creates invalid cart data.

2.6.3, June 30, 2016

  • Fix: Product name needs to be trimmed during payment import to prevent duplicate products being created
  • Fix: Discount codes getting erroneously marked as Inactive
  • Fix: Importing settings causes a fatal error
  • Fix: Address Line 2 erroneously marked as required in some cases
  • Tweak: Improved inline documentation for edd_get_download_file_url()
  • Tweak: Add-on updater updated to 1.6.4

2.6.2, June 28, 2016

  • Fix: Existing guest customers cannot register a user account on checkout using the email address associated with their existing customer profile.
  • Fix: DocBloc for edd_delete_option function is incorrect.

2.6.1, June 24, 2016

  • Fix: PayPal Standard transaction ID links don't link to PayPal Sandbox when payment was made in test mode.
  • Fix: Opt-in tracking not sending after initial activation.
  • Tweak: Welcome page not showing on upgrade.
  • Tweak: Only show welcome page on major versions.
  • New: If enabled, send checkin data when Easy Digital Downloads is upgraded.
  • New: Add a filter for edd_price_options() that allows adding classes to the output.

2.6, June 23, 2016

  • New: Added filters to process the earnings as they are updated.
  • New: Profile Editor state field shows as dropdown when possible.
  • New: Public API query mode to allow extension developers the ability to create API endpoints that do not require API keys.
  • New: Add/Improve inline help throughout the plugin with UI Tooltip.
  • New: Purchased Products column in payment export improved for better parsing.
  • New: Filters added to EDD_Customer increase and decrease methods.
  • New: Introduce Version 2 (v2) of the REST API.
  • New: (API v2) Products endpoint supports category and tag filtering.
  • New: (API v2) Customers endpoint supports filtering customers by creation date.
  • New: (API v2) Support searching products.
  • New: (API v2) Improve discount code reporting.
  • New: Add price(s) to oEmbed output for downloads.
  • New: Remove comment/trackback counts from oEmbed output for downloads.
  • New: Add new edd-table class to all tables outputted by Easy Digital Downloads.
  • New: Improve discount code status updates by setting inactive when usage reaches max.
  • New: Add daily cron to mark expired and discount codes at max usage as expired or inactive.
  • New: Add get_payments() method to the EDD_Customer class.
  • New: Make download ID more visible on the downloads list table.
  • New: Add filters to the add_fee() and get_fees() methods of EDD_Fees class.
  • New: Add price_id support for the Fees API.
  • New: PayPal Standard payments are now able to be refunded within the WordPress admin.
  • New: Deprecate edd_get_success_page_url().
  • New: Add default redirect option to [edd_login] and [edd_register] shortcodes.
  • New: Introduce customer meta table.
  • New: Add JavaScript trigger to edd_load_gateway() for 3rd party hooks.
  • New: Support post__in as an argument in [downloads] shortcode.
  • New: Final declaration removed from EDD_Payment class.
  • New: Allow edd_get_payment_status to also accept a payment ID.
  • New: Support additional email addresses for customers.
  • New: Add actions into the increase/decrease sales/earnings methods of the EDD_Download class.
  • New: Added CSV Import functionality.
  • Tweak: Use internal methods when getting sales counts and files in EDD_Download class.
  • Tweak: Add campaign tracking to links in the contextual help menus.
  • Tweak: Improve edd-admin.css coding standards.
  • Tweak: Update translation .mo files and add development tool for downloading translations from Language Packs.
  • Tweak: Improve EDD Licenses tab in settings.
  • Tweak: Improve edd_object_to_array method.
  • Tweak: Improve mobile breakpoints for customer details view.
  • Tweak: Remove pagination when [download] shortcode uses 'random' for the sort.
  • Tweak: Use existing function to build {receipt_link} email tag.
  • Tweak: PayPal Standard Buy Now was updated to use EDD_Payment.
  • Fix: New User Email alerts have incorrect header.
  • Fix: Transient being bypassed in EDD_Payment_Stats::get_earnings().
  • Fix: Remove unused variable and duplicate post_where filters in EDD_Payment_Stats.
  • Fix: Correct spelling error in edd_get_paypal_redirect().
  • Fix: Improved cache key generation in EDD_Payment_Stats::get_earnings().
  • Fix: Remove deprecated constructor method in System Info browser class.
  • Fix: Negative cart fees should not have tax charged on them.
  • Fix: Roles are being initialized on every admin request.
  • Fix: Negative item fees did not alter the taxation on the item.
  • Fix: System info shows Must-Use plugins when none are present.
  • Fix: Cart position (key) is not passed to the hooks in the cart.
  • Fix: Product dropdown search never shows the current download in results.
  • Fix: Trim response from country state lookup.
  • Fix: Update subscribe link in Welcome screen.
  • Fix: edd_get_users_purchased_products() can sometimes try an array_mege on a non-array value.
  • Fix: PayPal IPN Verification forced to HTTPS.
  • Fix: Incorrect earnings across a custom date range report.
  • Fix: Flat rate discounts can apply an amount larger than the cart total.
  • Fix: Improve performance of transient deletion when uninstalling Easy Digital Downloads.
  • Fix: Sales logs show incorrect item amounts with variable pricing sales.
  • Fix: (a11y) Customer details page icons are not focused.
  • Fix: (a11y) Removed title attributes.
  • Fix: (a11y) Focus is lost when removing price option.
  • Fix: (a11y) Make Add New Price a button when working with variable pricing.
  • Fix: (a11y) Repeatable field link to remove row should be a button.
  • Fix: Creating a payment sometimes doesn't save the correct user_id or customer_id.
  • Fix: Remove old WordPress version compatibility checks for WordPress versions less than 4.0.
  • Fix: Preview emails use default gateway.
  • Fix: EDD_API hooks for API key generation fire when extending the base class.
  • Fix: Remove incorrect messaging on profile editor related to password changes.
  • Fix: HTML validation fails if schema.org itemtype is missing.
  • Fix: Clicking 'Complete Purchase' button multiple times can result in Empty Cart error.
  • Fix: Replace calls to global settings variable with edd_get_option().
  • Fix: Duplicate get_post_meta calls in EDD_Download class.
  • Fix: Amazon Payments address field not showing with AJAX disabled.
  • Fix: Reporting is incorrect when changing predefined dates where year_end changes.
  • Fix: Allow no gateway to be enabled when purchase is free.
  • Fix: Item fees not taken into account when using EDD_Payment_Stats::get_earnings() for a specific download.
  • Fix: Subtotal and Total data attributes using incorrect amounts.
  • Fix: Taxonomies with numeric slugs are assumed to be the term_id in [downloads] shortcode.
  • Fix: Multiple instances of variable pricing output for a single product causes label target issue.
  • Fix: Correct schema.org structured data for items with variable pricing.
  • Fix: Correct HTML validation for the legend tag on forms by removing span wrappers.
  • Fix: Schema.org markup missing priceCurrency attribute.
  • Fix: Use tel input type and patterns to force numeric keyboard on checkout for card number and CVC inputs.
  • Fix: Settings sanitization for subsections unsets tax rates when a subsection is registered under taxes.

2.5.17, June 3, 2016

  • Fix: Discount codes are not always sent when opt-in tracking is enabled
  • Fix: Correct a capitilzation error in EDD_Customer class usage during edd_insert_payment
  • Fix: Correct error in the System Info browser detection

2.5.16, May 18, 2016

  • Fix: Checkboxes cannot be unchecked in the settings screens of some extensions if only one extension is activated

2.5.15, May 11, 2016

  • Fix: Removed unused variables and typos in unit tests
  • Fix: Non-standardized display of file names for items in bundles on receipts
  • Fix: Downloads not always removed from payment records when removed from the View Order Details screen
  • Tweak: Introduced new edd_checkout_user_error_checks action during purchase processing
  • Tweak: Placeholders on product dropdowns improved to help indicate searchability

2.5.14, May 5, 2016

  • Fix: New user emails do not have the proper heading
  • Fix: Opt-in tracking not always sending when allowed
  • Tweak: Added Locale to opt-in tracking

2.5.13, April 21, 2016

  • Fix: User info data not properly populated from customer record when missing in payment meta
  • Fix: filesize() run on external files during download process
  • Tweak: Changed log in form label to include email address
  • Tweak: Added PHP version, EDD version, install date, and WordPress version to opt-in tracking payload

2.5.12, April 14, 2016

  • Fix: Removed incorrect title attribute from Send Test Email button
  • Fix: Made add to cart AJAX action Accessible
  • Tweak: Added Delete Payment option to View Order Details screen
  • Tweak: Moved Resend Receipt button to separate box on View Order Details screen

2.5.11, April 7, 2016

  • Fix: Non-complete payments permitting file downloads
  • Fix: Double POST requests for plugin update checks
  • Fix: Missing validation for discount code ID in edd_decrease_discount_usage()
  • Fix: Default view of Sales / Earnings graphs for individual products not working
  • Fix: Download Details widget will not save "Current" display option
  • Fix: Sessions should never start on RSS feeds
  • Fix: Missing screen reader text for Default Price Option radio buttons
  • Fix: Incorrect heading size for some admin screens
  • Fix: Payment History Search results now stay after performing actions on shown payments
  • Tweak: Added new filters to recount stats tool for customers to allow support for other payment statuses
  • Tweak: Added new filters to allow URIs to be added to the session blacklist to prevent sessions from starting on those URIs
  • Tweak: Added filter to permit disabling wpautop() in emails
  • Tweak: Set "filter_items_list", "items_list_navigation", and "items_list" labels for Download post type
  • Tweak: Added new "edd_payment_advanced_filters_row" filter

2.5.10, March 24, 2016

  • Fix: Fatal PHP error when adding multiple price IDs to the card when same item is already in cart
  • Fix: New user registration notification email does not support HTML
  • Fix: {receipt_link} HTML stripped from plain text emails
  • Fix: fees_total property not set up in EDD_Payment object
  • Fix: Payment History not properly setting end date filter
  • Fix: filesize() being run on external files during file download
  • Fix: Symlinked file downloads result in 0 byte files
  • Fix: 100% discount codes with taxes enabled fail to allow purchase
  • Fix: Extraneous hyphen after product name for products without price options
  • Fix: Payments cannot be searched by user ID
  • Fix: Undefined index "download_method"
  • Fix: Ajax Download search excludes bundles improperly
  • Fix: Custom date range over multiple years does not work well in earnings reports
  • Fix: HTTP/HTTPS protocol stored on file URLs in database, resulting in failed downloads if site protocol changes
  • Fix: Extensions settings tab displays empty Main section in some cases
  • Fix: "No checkout page has been configured" notice cannot be dismissed properly
  • Fix: EDD transients not deleted during uninstall
  • Fix: Sales logs not deleted when payment is changed from Complete to Pending
  • Fix: Inconsistent formatting in Dashboard stats widget
  • Fix: About and Welcome pages not compatible with Admin Menu Editor plugin
  • Fix: State / Province field not populating saved country / state / province when shown as text field
  • Fix: discount_dropdown() method of EDD_HTML_Elements does not support non-item label
  • Fix: widgets.php page dies if site has large number of products
  • Fix: Form to create new API key not shown
  • Tweak: Re-adding support for retrieving card item price without tax

2.5.9, February 18, 2016

  • Fix: Settings cannot be saved

2.5.8, February 18, 2016

  • Fix: Transaction ID detection not working properly for old payment records that stored transaction ID in notes
  • Fix: 100% discount codes not properly removing billing fields when decimal separator is not a period
  • Fix: [edd_receipt payment_key="false"] results in error retrieving receipt message
  • Fix: Unused variable in Javascript
  • Fix: File downloads failing with Force download method on nginx
  • Fix: Undefined variable $file_path during file downloads on some servers
  • Fix: Incorrect inline PHP documentation
  • Fix: Settings with some non-alphanumeric keys not saved properly
  • Fix: Price override in add_download() method of EDD_Payment does not respect price of 0
  • Fix: Dash incorrectly shown after product name on the receipt page
  • Fix: Missing P tag on View Order Details screen
  • Tweak: Replace usage of $edd_options with edd_get_option() helper function
  • Tweak: URL in New User Notification email now linked
  • Tweak: edd_price() now displays the value of the Default price option
  • New: Introduced edd_payment_currency_default filter

2.5.7, February 10, 2016

  • New: Added refund() method to EDD_Payment class
  • New: Added filters to enable/disable product and customer stat adjustments during refunds
  • New: Addded new hooks to EDD_Payment class that run before payment is setup
  • Tweak: Improved taxonomy labels for categories and tags
  • Tweak: Automatically flush permalinks when a 404 is detected on EDD archive pages
  • Tweak: Add proper 403 headers to REST API
  • Tweak: Removed usage of soon-to-be-deprecated function get_currentuserinfo()
  • Tweak: Improved CSS formatting for edd.css
  • Tweak: Improved label/field HTML markup on checkout
  • Fix: Store earnings reports can cause memory problems when store has only 0.00 sales
  • Fix: Incorrect query arguments when redirecting back to checkout with ?payment-mode if query args are already present
  • Fix: Maybe unserialize user_info array in EDD_Payment
  • Fix: Recalculate Totals button ignores item quantities
  • Fix: Incorrect item price stored in sales log when adding item to existing payment
  • Fix: .jpeg files blocked by .htaccess file
  • Fix: Product search on customer export returns customer names instead of products
  • Fix: Editing items on payment do not save properly in some instances
  • Fix: File download links fail with qTranslate-X plugin active
  • Fix: Admin notice about expired and invalid keys should show only to site admins
  • Fix: Cart widget cannot be shown on checkout screen
  • Fix: Incorrect date format when viewing Last Week report
  • Fix: PHP notice when sending test payment receipt
  • Fix: edit_date not passed in when updating payment record
  • Fix: Unneeded product query on discount add/edit screen
  • Fix: Profile editor does not update customer name
  • Fix: Price not formatted in placeholder for price field
  • Fix: Unnecessary paragraph tags inside of form elements on Export screen
  • Fix: Payments list filters are off by one day
  • Fix: File download links break if UTM variables are added to them
  • Fix: pagination=false parameter in [downloads] shortcode does not work
  • Fix: Coupon code use count not decremented when payment marked as failed
  • Fix: Username field not validated before submitting form to generate new API key
  • Fix: Download Details widget requires settings to be saved before it displays

2.5.6, January 13, 2016

  • Fix: Payment dates recorded with incorrect dates depending on the timezone selected in settings
  • Fix: Download links missing from purchase receipts for some sites

2.5.5, January 12, 2016

  • Fix: Timezones still not set properly for some sites. This resulted in download links missing from purchase receipts.

2.5.4, January 12, 2016

  • Fix: Timezones set improperly sometimes when payments are created
  • Fix: PHP notices in edd_process_add_to_cart() when AJAX is disabled
  • Fix: PHP warning in Recount Single Customer Stats tool
  • Fix: Payment date cannot be changed in the admin
  • Fix: Currency code not properly returned if payment is missing currency metadata
  • Fix: "Sorry trouble retrieving payment receipt" error shown occasionally
  • Fix: Sanitization process for settings breaks some extension's settings
  • Fix: Download links blank for some customers
  • Fix: Prevent default placeholder from showing as an option in multi-select fields

2.5.3, January 9, 2016

  • Fix: Status passed to edd_insert_payment() not respected. Caused subscription payments to be marked as pending
  • Fix: edd_is_payment_complete() returns false improperly
  • Fix: Buy Now links going to empty checkout screen when customer is not logged in
  • Tweak: Removed redundant Max Uses column on Discounts screen

2.5.2, January 8, 2016

  • Fix: Item specific fees applying twice

2.5.1, January 7, 2016

  • Fix: Infinite loop in some instances where add_filter() is used by extensions
  • Fix: Deactivate License button missing on valid license keys
  • Fix: Payments not properly attached to customer records if last name is not supplied during checkout while logged out
  • Fix: Item amounts not saving properly when adding new Download to payment record
  • Fix: PHP warning on explode() due to empty customer notes field

2.5, January 7, 2016

  • New: Improved settings organization with subsections
  • New: Product export to CSV tool
  • New: Recount stats tool
  • New: EDD_Payment class for developers
  • New: Credit card fields now include HTML5 attributes
  • New: Improved license key fields for extensions
  • New: Discount codes can now be sorted
  • New: 0.00 value sales can now be excluded from sales graphs
  • New: File download history now available in REST API at /edd-api/file-download-logs
  • New: Quantities now included in payment history export
  • New: Payment History can be searched by discount code
  • New: File Downloads on products can now be re-ordered with drag-and-drop
  • New: Added filter to disable "edd_items_in_cart" cookie
  • Tweak: Improved customer options in purchase history export
  • Tweak: All meta keys now registered with WordPress
  • Tweak: EDD_API now runs on wp hook for improved performance
  • Tweak: Show item price instead of sale price in sales log
  • Tweak: Post type labels now used for Featured Image labels
  • Tweak: Inline styles have been removed from [downloads] shortcode
  • Tweak: Improved labels for checkbox options in Emails settings tab
  • Tweak: Improved SSL detection
  • Tweak: Improved abstraction of Customer UI so it can be re-used
  • Tweak: edd_get_cart_contents() standardized
  • Tweak: Set minimum WordPress version to 4.0
  • Tweak: Customer name on Payment History now goes to Customer details screen
  • Tweak: Properties in EDD_Amazon class are now public
  • Fix: Bulk actions not shown when list tables have no items
  • Fix: Fatal error in earnings by category reports
  • Fix: edd_maybe_remove_menu_profile_links() breaks some AJAX actions
  • Fix: PHP notices in PayPal if cart_details is not an array
  • Fix: "This Week" reports fail when crossing a month or year boundary
  • Fix: Deleting non-complete payment updates customer stats
  • Fix: inline-edit-post loaded when it shouldn't be
  • Fix: PayPal IPN listener using deprecated mc_gross key
  • Fix: PayPal listener not properly decoding data keys in some server environments
  • Fix: Downloads cannot be sorted in DESC order
  • Fix: User verification URL missing from email when plain text template is used
  • Fix: Incorrectly spelled UTM tags in Add Ons page
  • Fix: CSS for Welcome Page affects other pages
  • Fix: Properly run install routine when network activating EDD
  • Fix: Remove use of WP_CONTENT_URL constant
  • Fix: North/South Korea country codes reversed
  • Fix: WordPress 4.4 tab styles fix
  • Fix: Extension updates do not display if license key is not entered
  • Fix: Undefined variable $payment_id when seding test email
  • Fix: Cart widgets break add to cart button
  • Fix: edd_render_receipt_in_browser() outputs invalid markup
  • Fix: Parameters for [edd_receipt] shortcode not working properly
  • Fix: Payment Method fields not hidden when 100% discount code is applied
  • Fix: Running EDD_Payment_Stats::get_earnings() twice gives inconsistent values
  • Fix: Running EDD_Payment_Stats::get_sales() twice gives inconsistent values
  • Fix: AJAX call to load dashboard sales widget fires on all admin pages
  • Fix: Quantity not added with variable prices and multi-purchase mode when AJAX is disabled
  • Fix: user_id field not removed when customer's user account is deleted
  • Fix: Symlink File Download option not functioning
  • Fix: Order of bundled products not kept when saving Download product
  • Fix: Ugly display of long transaction IDs in View Order Details
  • Fix: File download links break when language parameter from qTranslate and WPML are present
  • Fix: Excluded products improperly count towards minimum purchase total of discount codes
  • Fix: Incorrect dates displayed when using custom date ranges in earnings reports
  • Fix: Subtotal should be removed from checkout when prices are inclusive of tax
  • Fix: price="0" fails when price_id="x" is used in [purchase_link] shortcode
  • Fix: Pagination fails when searching Payment History by download ID

2.4.10, December 12, 2015

  • Fix: Security vulnerability related to session IDs

2.4.9, October 14, 2015

  • Fix: Importing payments caused payments to be associated with customer of user doing the import
  • Fix: Corrected spelling for edd_customer_recent_purchases_actions hook

2.4.8, October 12, 2015

  • New: Added option to manually verify a user account from the customer details screen
  • New: Added support for searching customer records by user ID
  • New: Added improved error logging for email sending
  • Fix: Incorrect CSS animation property
  • Fix: Removed unused code in edd_get_purchase_link() function
  • Fix: Corrected spelling error in EDD_Stats class
  • Fix: New customers improperly created when logged-in user completed purchases with a different email
  • Fix: User verification process should not run on the very first purchase by a customer
  • Fix: edd_get_current_page_url() returns improper URL when WordPress is installed in sub folder
  • Tweak: Improved formatting of the welcome screen to match the styles of WordPress core

2.4.7, September 29, 2015

  • Tweak: Changed text domain from "edd" to "easy-digital-downloads"
  • Fix: User ID not properly set on customer record when user account is created
  • Fix: Earnings / sales graph reporting 0 stats for some days incorrectly

2.4.6, September 18, 2015

  • Fix: Bug in user verification process causing redirect loop when Purchase History page is not set
  • Fix: Warning: Missing argument 3 for edd_receipt_show_download_files()
  • Fix: Quick Edits on Downloads not always expanding the form
  • Fix: Occasional redirect loop caused by edd_enforced_ssl_redirect_handler()
  • Fix: Item quantity not properly added to cart when AJAX is disabled
  • Tweak: Fix extra parameter being provided in get sales by date

2.4.5, September 16, 2015

  • Fix: Bug with AJAX URL on checkout and mixed-content error messages for sites that use HTTPS on checkout but not in /wp-admin/

2.4.4, September 14, 2015

  • Fix: Incorrectly shown "Sorry, trouble retrieving payment receipt" error
  • Fix: Credit / debit cards with an expiration more than 10 years in the future cannot be used
  • Fix: Non-object notice on /edd-api/customers endpoint
  • Fix: Javascript error on category / tag quick edit screen
  • Fix: Not array PHP error on customer details screen when customer has purchases without any items
  • Fix: Cart item quantities cannnot be changed in HTML structure of cart items is changed
  • Fix: Purchase link shortcode attributes for "text" not working properly
  • Fix: Default price ID cannot be saved with ID of 0
  • Fix: New user notifications not working properly since WordPress 4.3
  • Fix: Incorrect URl returned by edd_get_current_page_url() in some instances
  • Tweak: Improved account creation process
  • Tweak: Introduced "pagination" parameter for downloads shortcode to disable pagination
  • Tweak: Introduced edd_protected_directory_allowed_filetypes filter
  • Tweak: Add $item to edd_receipt_show_download_files filter
  • Tweak: Better error reporting when batch export process fails

2.4.3, August 18, 2015

  • Tweak: Added new action hooks to the Sales Summary widget
  • Tweak: Added new action hook that fires when an item is removed from a payment record
  • Tweak: Updated logo on PDF reports
  • Tweak: Updated logo on welcome screen
  • Tweak: Improved order of operations when updating discount codes
  • Tweak: Amazon Payments Address widget is hidden on reload when a charge is declined
  • Tweak: Only show address widget for Amazon Payments when taxes are enabled
  • Tweak: Update Amazon Payment registration URLs for EU and DE
  • Tweak: Retrieve complete billing address from Amazon
  • Tweak: Updated language files
  • Fix: Profile editor missing P tag when user is logged out
  • Fix: Email headers should only be added if header text is set
  • Fix: Undefined index "plugin"
  • Fix: Sale log entries not deleted when purchase is refunded
  • Fix: Preset discount code logic tries to run when bulk deleting discount codes
  • Fix: Adding ?discount={code} to static home page URL causes blog page to be shown
  • Fix: Ensure we have a user before trying to get purchase history
  • Fix: Properly format decimals for HUF currency
  • Fix: Prevent fatal errors when entering invalid date in start/end date of payment history
  • Fix: Removed unused function edd_add_ons_init()
  • Fix: Prevent multiple batch processes from being started at the same time
  • Fix: Re-instantiate Chosen when cloning a repeatable row with a Chosen field
  • Fix: Variable typo in edd_is_admin_page()
  • Fix: Customer name not stored properly if three names are entered when purchasing through Amazon Payments
  • Fix: Sales report column fails does not work for guest customers
  • Fix: direct="true" does not work properly if price_id="1" is also set
  • Fix: Products without a title cannot be purchased through PayPal

2.4.2, July 13, 2015

  • Tweak: Allow filtering the ajax user search
  • Tweak: Send first_name and last_name to PayPal
  • Tweak: edd_filter_success_page_content() not run early enough
  • Tweak: URLs to remove fees and items should not be caught by caching
  • Tweak: Improve batch exporter extensibility
  • Tweak: Add ABSPATH check to Amazon gateway files
  • Fix: Multiple tax rates with same id in taxes settings
  • Fix: Clarified opt-in messaging
  • Fix: Microdata wrapper showing in sidebar
  • Fix: Excerpt missing from products API Endpoint
  • Fix: Customer search not working with name or email in API
  • Fix: Invalid markup on profile editor save
  • Fix: API Key fields caused fatal error when viewed in front end profile editors
  • Fix: Invalid 'for' attribute in username label for login shortcode
  • Fix: Correct edd_listen_for_failed_payments() sending post id, not WP_Post object
  • Fix: Fix tax state not saving when text field

2.4.1, July 2, 2015

  • Tweak: Updated Language Files
  • Fix: edd_get_gateway_admin_label() should use edd_get_payment_gateways()
  • Fix: Payment email in payments list table pulled from User Info, should be pulled from payment info
  • Fix: Manually added items to an order always get a price of $0.00
  • Fix: Improve Customer View CSS
  • Fix: Select Payment Method shown incorrectly when only one gateway is enabled
  • Fix: API Security Fix

2.4, June 30, 2015

  • New: Added support for Amazon Login and Pay
  • New: Added Earnings by Category report
  • New: Added batch processing to data export for handling large amounts of data
  • New: Added versioning to the REST API
  • New: Added a filter to disable redirect to checkout on per-download basis
  • New: Added method for extensions to pre-fill customer details on checkout
  • New: Added helper functions for verifying credit / debit card numbers
  • New: Added date range options to payment and file download history exports
  • New: Added options to control the text shown on Buy Now buttons
  • New: Added an action to the cart item title column
  • New: Added an action to the Actions column of the cart
  • New: Added standardized classes for error, notice, and alert messages
  • New: Added date_field() method to EDD_HTML_Elements class
  • New: Added filters for the From Address for admin sale notifications
  • Tweak: Improved performance of user validation in the REST API
  • Tweak: Improved edd_is_admin_page() helper function for detecting when on specific EDD admin pages
  • Tweak: Stylesheets are now registered before enqueued
  • Tweak: Moved Test Mode option to the Payment Gateways tab
  • Tweak: Earnings and sales states now incremented while in Test Mode
  • Tweak: Download Details widget now properly respects taxonomy labels
  • Tweak: Improved customer count functions in the REST API
  • Tweak: Default gateway now shows as first gateway on checkout
  • Tweak: Purchase link shortcode now shown in the Download Settings meta box
  • Tweak: edd_recalculate_taxes() now includes a raw amount in the response
  • Tweak: Customer export is now standarized for all export options
  • Tweak: Sequential order numbers improved to protect against race conditions
  • Fix: Opt-in tracking accidentally enabled for all installs
  • Fix: Minor security flaw with gateway selection on checkout
  • Fix: Symlink file downloads option gets hidden after reload
  • Fix: Undefined index error with banned emails
  • Fix: Notices thrown when logging API requests
  • Fix: Customer email not updated when associated user account's email is updated
  • Fix: Incorrect for attribute on checkout's password field
  • Fix: edd_items_in_cart cookie disables cache improperly
  • Fix: API keys are difficult to select on mobile
  • Fix: Tools tab displays poorly on mobile
  • Fix: Buy Now buttons not properly setting item quantity through PayPal
  • Fix: December month data is plotted in January when viewing custom date range
  • Fix: Double error message when entering discount code that has already been used

2.3.9, May 25, 2015

  • Fix: Variable price assignment options get removed from download when deleting file row
  • Fix: Pagination container still shown when no pagination is needed
  • Fix: Airplane Mode load order can cause problems
  • Fix: Rewrites hard flushed during activation instead of soft flushed
  • Fix: Log records not recording post_date_gmt
  • Fix: Slashes not stripped from customer name in Customer Details view
  • Fix: "Apply to whole country" tax setting not saved on first save
  • Fix: Trashed downloads can be purchased with custom add to cart URLs
  • Tweak: Added filters to join and where clauses in edd_count_payments()
  • Tweak: Improved logic and flexibility for Products endpoint of the REST API

2.3.8, April 27, 2015

  • Fix: Customer stats incrementing with attaching payment to customer, if payment is already attached
  • Fix: edd_get_file_download_method called too late during download process
  • Update: Translations Updated
  • Tweak: Improvements to the EDD Extensions page
  • Tweak: Corrections and updates to readme.txt

2.3.7, April 20, 2015

  • Fix: XSS security flaw

2.3.6, April 8, 2015

  • Fix: Correct issue with non-day-by-day reporting calculating earnings & sales incorrectly
  • Fix: Payment Tax backwards compatibility not working correctly
  • Fix: Always set the data-price attribute, even when price is excluded from purchase button
  • Fix: Prevent New Download Draft by using explicit create method in EDD_Download
  • Fix: Hours/Minutes on Order Details truncating leading zeros
  • Tweak: Increase the Total Price and Tax input widths on order details

2.3.5, March 24, 2015

  • Fix: Make home_url consistently unslashed in token generation
  • Fix: Better checks in edd_get_payment_tax()
  • Tweak: Allow clearing of edd_doing_upgrade

2.3.4, March 20, 2015

  • Fix: Cannot add new tax rates
  • Fix: Airplane mode plugin v0.1.1 causes fatal error
  • Fix: Completed payments can sometimes be marked as abandoned improperly
  • Fix: Cart widget items not fully removed when clicking Remove
  • Fix: Incorrect price assignment for files when creating new Download products

2.3.3, March 18, 2015

  • Fix: Minor SQL injection issue in the Customers DB class
  • Fix: All purchase buttons for a product displayed on a page change to Checkout incorrectly when one is clicked
  • Fix: Customer dropdown on View Order Details improperly shows first customer in the list when no customer is attached
  • Fix: Mixed-content notice on the checkout page for sites with SSL
  • Fix: Incorrect price ID gets added to the cart when multiple purchase buttons are placed on the same page with the price_id parameter
  • Fix: Removed Yugoslavia from the country list since it is not a country anymore
  • Fix: Quantity field not shown on purchase buttons with the [purchase_link] shortcode
  • Tweak: Automatically disable buy now buttons

Requires: 4.0 or higher
Compatible up to: 4.7
Last Updated: 2 days ago
Active Installs: 50,000+


4.8 out of 5 stars


13 of 33 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.

100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,4,4 100,3,3 100,3,3 100,2,2 100,3,3 100,3,3 100,2,2 100,1,1
100,3,3 100,2,2 100,5,5 100,1,1 100,3,3 100,3,3 100,1,1 100,2,2 67,3,2 75,4,3 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,2,2 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
0,1,0 100,1,1 100,1,1 100,2,2 100,2,2 100,2,2 100,1,1 100,1,1 100,4,4 100,1,1 100,1,1 100,2,2 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1
100,1,1 100,3,3 100,2,2 100,3,3 100,1,1 100,4,4 100,3,3 100,4,4 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,2,2
100,1,1 100,1,1 67,3,2 100,1,1 100,1,1 100,2,2 100,5,5 100,1,1 100,4,4 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1
0,1,0 100,3,3 100,1,1 100,2,2 100,7,7 100,3,3 75,4,3 100,6,6 100,3,3 100,1,1 100,2,2 100,2,2 100,1,1 100,1,1 100,1,1
100,1,1 100,6,6 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1
100,2,2 100,4,4 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1
100,2,2 100,1,1 100,1,1
100,3,3 100,2,2 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1
100,1,1 100,5,5 50,2,1 100,1,1 80,10,8 100,1,1
100,1,1 100,1,1
100,5,5 100,3,3 100,4,4 100,3,3 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,2,2 100,3,3 75,4,3 100,1,1 100,1,1
100,6,6 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,5,5 100,4,4 100,2,2 100,5,5 100,3,3 100,4,4 100,1,1 100,3,3 100,4,4 100,1,1 100,1,1 100,1,1 100,1,1
100,2,2 100,2,2 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,4,4 100,3,3 100,3,3 100,3,3 100,1,1 100,2,2 100,6,6 100,3,3 100,2,2 100,1,1 100,1,1
100,1,1 100,8,8 100,1,1 100,2,2 100,2,2 100,5,5 100,5,5 100,6,6 100,5,5 100,2,2 100,1,1
100,1,1 100,2,2
100,3,3 100,1,1 100,1,1 100,2,2
100,2,2 100,2,2 100,1,1 100,1,1
100,3,3 100,2,2 100,5,5 100,6,6 100,5,5 100,1,1 100,1,1
100,2,2 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1
100,2,2 100,1,1 100,2,2 100,2,2 100,1,1
100,6,6 100,6,6 100,4,4 100,2,2 100,4,4 100,2,2 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,2,2 100,3,3 100,1,1 100,1,1 100,5,5 100,5,5 100,5,5 100,6,6 100,6,6 100,2,2 100,1,1
100,2,2 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1
100,5,5 100,4,4 100,3,3 100,2,2 100,2,2 100,1,1 100,1,1 100,3,3 100,2,2 100,2,2 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1
100,4,4 100,5,5 100,3,3 100,1,1 100,1,1 100,2,2 100,1,1 100,5,5 100,2,2 100,3,3 100,2,2 100,7,7 100,3,3 100,2,2 100,2,2 100,1,1
100,5,5 100,5,5 100,4,4 100,4,4 100,1,1 100,1,1 0,1,0 100,8,8 100,7,7 100,10,10 100,1,1
100,6,6 100,3,3 100,7,7 100,3,3 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,5,5 100,7,7 100,5,5 100,4,4 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
86,7,6 100,4,4 100,4,4 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,5,5 100,5,5 100,3,3 100,7,7 100,7,7 100,5,5 100,4,4 100,1,1
100,1,1 100,8,8 100,2,2 100,2,2 100,1,1
100,2,2 88,8,7 100,9,9 100,3,3