WP Manifestindependent plugin directory
manifest / ecommerce / download-manager-for-woocommerce

Download Manager for WooCommerce

Diagnose, repair, and manage download permissions for WooCommerce products. Fix broken UUID mismatches, track file versions, and notify customers of updates.

by Shameem Reza · github.com/shameemreza/download-manager-for-woocommerce · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/shameemreza/download-manager-for-woocommerce/archive/refs/heads/main.zip

Readme

=== Download Manager for WooCommerce === Contributors: shameemreza Donate link: https://ko-fi.com/shameemreza Tags: woocommerce, downloads, permissions, digital products, download manager Requires at least: 6.0 Tested up to: 6.9 Requires PHP: 7.4 Requires Plugins: woocommerce Stable tag: 1.0.0 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html

Fix broken WooCommerce download links, manage software licenses, and protect digital products with smart permission repair tools.

== Description ==

Download Manager for WooCommerce helps store owners fix a frustrating problem: customers losing access to downloads after product updates.

= Why Downloads Break =

WooCommerce generates a unique ID (UUID) for each downloadable file. When you edit or re-upload a file, WooCommerce creates a new UUID. The old permissions in your database still reference the old UUID, so customers see "Download not found" errors even though they paid for the product.

This happens more often than you might think:

  • Updating a PDF with corrections.
  • Re-uploading a software zip file.
  • Using bulk edit tools or import/export plugins.
  • Migrating between staging and production sites.

= What This Plugin Does =

Find Broken Permissions

The scanner checks every download permission in your database and compares it against current product files. You see exactly which orders are affected and why.

Fix the Problem

The repair tool matches old permissions to current files using URL patterns and file names. One click fixes permissions that can be auto-matched. Manual review options exist for edge cases.

Prevent Future Issues

Enable UUID Protection to get a warning before saving changes that would break existing customer access. You decide whether to proceed or cancel.

Track File Changes

Every time you add, update, or remove a download file, the plugin logs it. See who changed what and when. Useful for teams managing the same products.

Notify Customers

Turn on per-product notifications to email customers when you update their purchased downloads. They get a link to download the new version.

Manage Software Licenses

Generate and manage license keys for your digital products. Set activation limits, validity periods, and track activations. Customers can view and manage their licenses from their My Account page.

Protect Downloads

Secure your download files with link expiration, IP restrictions, download rate limiting, and hotlink prevention. Stop unauthorized file sharing.

REST API for Developers

Integrate with your software using the built-in REST API. Activate, deactivate, and validate licenses programmatically.

= Works With All Product Types =

  • Simple downloadable products.
  • Variable products with downloadable variations.
  • Grouped products with downloadable items.
  • WooCommerce Subscriptions.
  • Variable subscriptions.
  • WooCommerce Product Bundles.
  • WooCommerce Composite Products.
  • Any third-party product type that uses the WooCommerce downloads system.

= Command Line Support =

Run scans and repairs from WP-CLI:

  • wp wcdm scan - Find broken permissions.
  • wp wcdm repair - Fix broken permissions.
  • wp wcdm regenerate - Rebuild permissions for an order.
  • wp wcdm log - View activity logs.
  • wp wcdm activity - View download history.
  • wp wcdm versions - View file change history.

= Requirements =

  • WordPress 6.0 or newer.
  • WooCommerce 8.0 or newer.
  • PHP 7.4 or newer.

== Installation ==

  1. Upload the plugin files to /wp-content/plugins/download-manager-for-woocommerce or install through the WordPress plugin screen.
  2. Activate the plugin through the Plugins screen.
  3. WooCommerce must be installed and activated first.
  4. Go to WooCommerce and click Download Manager to open the dashboard.
  5. Configure settings at WooCommerce, Settings, Products, Download Manager.

== Frequently Asked Questions ==

= Will this fix my broken download links? =

Yes. The plugin scans your permissions table and finds mismatches between stored download IDs and current product files. It suggests repairs based on file matching.

= Is the auto-repair feature safe? =

The auto-repair only runs on permissions where the match confidence is high. You can preview changes with dry-run mode first. All repairs are logged so you have a record.

= Does it work with WooCommerce Subscriptions? =

Yes. The plugin handles subscription products and respects subscription status when managing permissions.

= Can I get warned before breaking customer access? =

Yes. Enable UUID Protection in WooCommerce, Settings, Products, Download Manager. You will see a warning when editing download files that have active customer permissions.

= Does it work on Multisite? =

Yes. You can activate the plugin network-wide. Each site gets its own settings and data tables.

= How do I notify customers about file updates? =

Edit the product and check "Notify customers on update" in the downloadable files section. When you save changes to the files, customers with permissions receive an email.

= Can I use WP-CLI? =

Yes. The plugin registers commands under wp wcdm for scanning, repairing, and managing permissions from the terminal.

= Will this slow down my store? =

No. The plugin loads assets only on its own admin pages. Background tasks like file checks run on WordPress cron schedules.

= How does the License Manager work? =

Enable licensing on a product, choose a key format and activation limit. When a customer completes an order, the plugin generates a license key and emails it to them. They can view and manage their licenses in My Account.

= Can I integrate licenses with my software? =

Yes. Use the REST API endpoints to activate, deactivate, and validate licenses. Your software can call these endpoints to check license validity and track activations.

= Does the License Manager work with WooCommerce Subscriptions? =

Yes. License status automatically syncs with subscription status. When a subscription is cancelled or expires, the associated license is updated accordingly. On renewal, the license expiry extends.

== Screenshots ==

  1. Dashboard showing permission health and recent activity.
  2. Tools page with the permission scanner.
  3. Scan results with repair options.
  4. File version history list.
  5. Customer download activity feed.
  6. Activity logs with filters.
  7. Download Manager settings under WooCommerce Products settings.
  8. Product edit screen with notification toggle.

== Changelog ==

= 1.0.0 =

  • Added Software License Manager.
  • License key generation with UUID or serial formats.
  • Per-product license settings (enable, format, activation limit, validity).
  • Auto-generate licenses on order completion.
  • Admin license management with list table, filters, and bulk actions.
  • Customer license portal in My Account.
  • REST API endpoints for activate, deactivate, and validate.
  • License Delivered and License Expiring email notifications.
  • WooCommerce Subscriptions integration for license status sync.
  • License settings in WooCommerce Products settings.
  • Download link expiration support.
  • IP restriction for downloads.
  • Download rate limiting.
  • Hotlink prevention.
  • Email queue for notification management.
  • Network admin page for Multisite.

= 1.0.0 =

  • Initial release.
  • Permission scanner finds UUID mismatches.
  • Repair engine with confidence-based matching.
  • Bulk permission regeneration.
  • UUID protection warnings.
  • File version tracking.
  • Customer download activity feed.
  • Email notifications for file updates.
  • WordPress Multisite support.
  • WP-CLI commands.
  • Activity logging.

Read the full README on GitHub →