Description
Digital License Manager is licensing plugin that allows you to efficiently sell and manage license keys that also supports bulk import, export, stock synchronization, separate activations table and much more.
The plugin is actively maintained, secure, well documented and very extendable.
?? Core Features
- Manage Licenses efficiently (Read more)
- Manage License Activations – See activation ip, useragent, label… (Read more)
- Manage License Generators – Customize the look of the licenses (Read more)
- Supports Simple and Variable products for License key delivery (Read more)
- Deliver License key on product purchase from stock (Read more)
- Deliver License key on product purchase based on the Generator (Read more)
- Synchronizes stock with licenses assigned to product (Read more)
- Configure the order status on which License is delivered (Read more)
- Show purchased Licenses in WooCommerce > MyAccount ( (Read more)
- Singe License page in WooCommerce My Account page (Read more)
- Activate License from WooCommerce MyAccount page (Read more)
- Allow/Disallow Customers to download PDF License Certificate (Read more)
- Adds purchased License Keys in the Order Confirmation email (Read more)
- Manually re-send License Key to customer via email (Read more)
- Rest API endpoints for working License. (Read more)
- Rest API endpoints for working Generators. (Read more)
- Rest API endpoints for working Software. (Read more)
- Rest API protected by API Key & Endpoint permissions (Read more)
- Option to Import Licenses (Read more)
- Option to Export Licenses (Read more)
- Effortless migration from License Manager for WooCommerce (Read more)
- Support for “WooCommerce PDF Invoices and Packing Slips” (Read more)
- Licenses List Block – Lists licenses assigned to the current user (Read more)
- License Check Block – Show a form for checking license key (Read more)
- Licenses Shortcode – Lists Licenses assigned to the current user (Read more)
- License Check Shortcode – Show a form for checking license key (Read more)
- Customizable WooCommerce templates (Read more)
For a full list of features, please check Documentation.
? Pro Features
Our PRO version focuses on support for WooCommerce Subscriptions, detailed software showcase in the product page tabs, software update delivery through special REST API endpoints and more.
List of features:
- WooCommerce Subscriptions Support (Read more)
- Subscriptions for WooCommerce support (Read more)
- Register License Keys in WooCommerce > My Account (Read more)
- License Revealing (Read more)
- WPML Translation Plugin support (Read more)
- Software Management – Set up gallery, support, documentation… (Read more)
- Software Releases – Publish releases for each software (Read more)
- Software Product Details – Assign software to products. (Read more)
- Software Product Details – Show last updated, version, etc. (Read more)
- Software Product Details – Show gallery, support, docs, changelog (Read more)
- Software Download Page in WooCommerce My Account (Read more)
- Software Download RestAPI endpoint (Read more)
- Software Details RestAPI endpoint (Read more)
- License Activation Enable/Disable in WooCommerce > My Account (Read more)
- WordPress Premium Theme & Plugin Updater (Read more)
- Software Analytics (Coming soon)
For a full list of features, please check Documentation.
?? REST API Documentation
The REST API is one of the crucial features that this plugin provides.
It allows developers to create, update, activate, deactivate, validate licenses through the API.
The full REST API documentation can be found on the link below:
?? Complete Documentation
The complete documentation can be found on the link below:
?? Client Libraries
The following client libraries and integrations are available:
- PHP Library
- C++ Client (Libcurl) / C++ Example
- C# Library
- Python Library
- Premium WordPress Updater (Requires PRO)
- Premium Plugin Example (Requires PRO)
- Premium Theme Example (Requires PRO)
? Issues / Feature Requests
The development can be tracked on our Github Repository.
Any contributions are welcome! Feel free to submit pull requests or report issues.
?? Acknowledgements
This plugin was early fork of License Manager for WooCommerce by Drazen Bebic and WPExperts. However, nowadays, the code has been completely rewritten in order to modernize it and provide better support, stability and new features.
Other acknowledgments: Micromodal, Tom-Select, Flatpickr, defuse/PHP-Encryption, spipu/html2pdf, tecnickcom/tcpdf, 10quality/wp-query-builder, ignitekit/wp-notices.
Props to @pondermatic for contributing to our plugin.
?? Important Note
The plugin will create wp-content/uploads/dlm-files
directory which stores the cryptographic secrets that are required to decrypt the licenses. If you lose this file, you will lose your license keys as well. Make sure you backup those files!
Screenshots
Blocks
This plugin provides 2 blocks.
- DLM: Licenses Table
- DLM: Licenses Check Form
Installation
Manual installation
- Upload the plugin files to the
/wp-content/plugins/digital-license-manager
directory, or install the plugin through the WordPress Plugins page directly. - Activate the plugin through the Plugins page in WordPress.
- Use the License Manager Settings page to configure the plugin.
Installation through WordPress
- Open up your WordPress Dashboard and navigate to the Plugins page.
- Click on Add new
- In the search bar type “Digital License Manager”
- Select this plugin and click on Install now
Important
The plugin will create wp-content/uploads/dlm-files
directory which stores the cryptographic secrets that are required to decrypt the licenses. If you lose this file, you will lose your license keys as well. Make sure you backup those files!
FAQ
-
Does it work without WooCommerce?
-
Yes it does.
-
How License Activations work?
-
The License activations are stored as a separate database entries and not using a counter. This allows easier management of License Activation per device/installation/etc.
-
I am using “License Manager for WooCommerce”, how to migrate to Digital License Manager?
-
Looking to migrate from License Manager for WooCommerce? Read more!
-
How to create a license through the REST API?
-
To create a license through the REST API, please follow this guide.
-
How to activate a license through the REST API?
-
To activate a license through the REST API, please follow this guide.
-
How to deactivate a license through the REST API?
-
To deactivate a license through the REST API, please follow this guide.
-
How to validate a license through the REST API?
-
To validate a license through the REST API, please follow this guide.
-
Can I assign license keys to past WooCommerce orders that were placed before i installed Digital Licnese Manager?
-
Yes, you can do this by going to Settings > Tools > “Generate Licneses For Past Orders”. You must select a Generator that will be used to generate keys for the orders.
Reviews
Contributors & Developers
“Digital License Manager” is open source software. The following people have contributed to this plugin.
Contributors“Digital License Manager” has been translated into 2 locales. Thank you to the translators for their contributions.
Translate “Digital License Manager” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.7.1
Release date – 26 Nov 2024
- Add proper CSS classes to WooCommerce views to make restyling easier
- Add refund handling when refunding Order’s line items that contain License.
- Add refund handling behavior configuration in WooCommerce Settings
- Add _dlm_license_id to order item metadata so developers can easily identify the license id tied to particular order item during purchase
- Add dlm_files_dir filter for changing the default files directory
- New Tool: Add Order Item Licenses for setting _dlm_license_id for historical order items.
- New WP-CLI command
wp dlm:add_order_item_licenses
for setting _dlm_license_id for historical order items. - Upgraded ignitekit/wp-query-builder to v1.2
- General codebase improvements
- Re-sync the .pot template
- Test with WordPress 6.7+
- Confirm compatibility with WooCommerce 9.4+
Note: It’s recommended to run either the tool or WP-CLI command “Add Order Item Licenses” to add the newly introduced _dlm_license_id meta data to WooCommerce order items.
1.7.0
Release date – 24 Sep 2024
- Improved Expired license display in WC > My Account
- Improved general code quality
- Fix status display on the single license page in WC > My Account
- Fix PDF export and missing font DejaVuSans
- Fix Issues when using CloudFlare and HttpHelper::clinetIp()
- Fix license status not centered in WC > My Account
- Add low level database actions dlm_object_{created/updated/deleted}
- Add database integrity maintenance (delete activations and other related data on license delete)
- Confirm compatibility with WC 9.3+
- Resync the .pot template
1.6.6
Release date – 05 Aug 2024
- Allow license key “copy to clipobard” on order-received confirmation page
- Fix issue on MyAccount license single page when License order is not set
1.6.5
Release date – 24 Jul 2024
- Add action hook dlm_rest_response_error to REST endpoints
- Test with WordPress 6.6
- Test with WooCommerce 9.1
1.6.4
Release date – 21 Jun 2024
- Fix broken stylesheets when plugin is translated to other language
- Fix broken My Accounts pages (404) in some instances
- Add HPOS support for the order link in the licenses table
- Blocks build process improvements
- Comprehensive test with WooCommerce 9
1.6.3
Release date – 12 May 2024
- Fix issue that prevented the license key from displaying in My Account single license page
- Test with WooCommerce 8.8.3
1.6.2
Release date – 25 April 2024
- Fix issue introduced in v1.6.1 that caused the plugin to ignore generator’s valid_for and activations_limit when creating licenses from orders
- Improved error logging for the order license creation process
1.6.1
Release date – 22 April 2024
- Fix stock syncing when license is deleted
- Deprecated method LicenseService::saveGeneratedLicenseKeys() in favor of LicenseService::createMultiple()
- Deprecated method LicenseService::saveImportedLicenseKeys() in favor of LicenseService::createMultiple()
- Test with WooCommerce 8.8
1.6.0
Release date – 15 March 2024
- Add filter dlm_license_certification_logo_width for changing the logo width in PDF certificate
- Add filter dlm_license_certification_title for changing the title in PDF Certificate
- Add support for hashed license keys in RestAPI (Read more)
- Add plugin deactivation feedback form
- Fix $order null access that triggered an error in My Account
- Fix conflict with Download Manager
- Fix issues related to .csv import
- Improved Admin UI
- Improved PDF Certificate display
- Improved WooCommerce “My Account” templates
- Improved license delete operation handling, remove database relations
- Renamed Activations “activate/deactivate” buttons to “enable/disable” in Admin screen
- Update default plugin settings
- Confirm compatibility with WP 6.5.0
- Confirm compatibility with WC 8.6.2
- Resync the .pot template
1.5.9
Release date – 17 Feb 2024
- Fix API last access date
- Fix duplicate license keys in PDF invoices
- Fix delete confirmation dialog issue in API keys settings
- Fix delete button on single api key edit page in settings
- Add improvements to the Rest API permissions check
- Resync the .pot template
1.5.8
Release date – 23 Jan 2024
- Fix PHP warning in My Account page
1.5.7
Release date – 22 Jan 2024
- Fix fatal error reported by customer
- Add copy to clipboard functionality
1.5.6
Release date – 01 Dec 2023
- Fix the License Activations table display in My Account
- Fix issues related to API calls
- Improvements to single License/Generator UI
- Improvements to the uninstallation cleanup procedure
- Removed unused wp_ajax endpoint
1.5.5
*Release date – 27 Nov 2023
- Fix issue related to notice display
1.5.4
Release date – 27 Nov 2023
- Improvements to the migration tool from License Manager for WooCommerce
- Add Compatibility layer for the REST API for License Manager for WooCommerce
- Add public helper functions that can be used to interact with the plugin’s database
- Add migration notices
- Fixes various smaller issues here and there
- Improves the unit tests collection
1.5.3
Release Date – 22 Oct 2023
- Fix activating license as customer “permission denied” from My Account page
- Update block dependencies
- Test with WooCommerce 8.2
1.5.2
Release Date – 20 Sep 2023
- Fix High-Performance-Order-Storage compatibility issues
- Fix issue when generating bulk licenses from the Generators > Generate page
- Add filter to allow adjustments to the WooCommerce product edit tab classes
- Fix confusing logic on the dlm_validate_product/order_id filters
1.5.1
Release Date – 16 Sep 2023
- Fix issue that caused no license key to be sent via email/order thank you page
- Add Gutenberg Block: “DLM: Licenses Table” -> The block lists the licenses owned by the current user
- Add Gutenberg Block: “DLM: Licenses Check” -> The block provides a form where user can check validity of a license key
- Add Shortcode: “[dlm_licenses_table]” -> The shortcode lists the licenses owned by the current user
- Add Shortcode: “[dlm_licenses_check]” -> The shortcode provides a form where user can check validity of a license key
- Add support for “WooCommerce PDF Invoices and Packing Slips” by WP Overnight. License key will be displayed in the invoice.
1.5.0
Release Date – 01 Aug 2023
- Add copyright information to the files, a nice welcome screen.
- Add more unit tests
- Improvements to the data api
- Improvements to the order_complete meta saving
- Improvements to the license stock database query
- Fix PHP warnings, improve PHP 8.2 compatibility
- Fix generator crud bugs
- Test with WordPress 6.3
- Test with WooCommerce 8.0
1.4.4
Release Date – 25 Jul 2023
1.4.3
Release Date – 03 May 2023
- Do not enforce expired license validation when deactivting token through the REST API
- Add option in Settings > WooCommerce to enable masking the license keys on the public facing pages like Order Received” page
- Show My Account licenses status as Expired when license is expired
- Fix issue when clearing Generator valeus in edit page
- Move “Max Activations” at the bottom before expiresIn in Generator edit
- Add support on the dropdown search endpoint for generators
- Add “Past Orders License Generator” tool in Settings > Tools that allows users to generate licenses for past orders by selectting Generator.
- Add UI improvements to the styling of the Tools page
- Add unit tests for orders/products
1.4.2
Release Date – 22 Mar 2023
- Fix for PHP wranings caused by the new activations table revamp reported here
- Various improvements to the source code for flexibility
- Minor improvements for the License Service
1.4.1
Release Date – 13 Feb 2023
- Hotfix for Product Edit page issue in the License Manager tab, conditionals were not working
1.4.0
Release Date – 13 Feb 2023
- Add support for WooCommerce High Performance Order Storage
- Add support to filter /licenses and /generators GET REST API endpoints with query parameters
- Add Manual License Activations to allow customers enter manual activations, feature enabled from Settings
- Refactored My Account’s single license activations table actions, allow developers to add custom actions here
- Add Delete button on the Activations that were added manually in My Account’s single license activations table
- Removed jQuery relience, refactored all the javascript to get rid of jQuery completely
- Replaced Select2 (jQuery) with Tom-Select, a native JS library for select dropdowns with ajax support
- Replaced jQuery UI’s datepicker with flatpicker, a native JS library for date/time picker input
- Refactored and simplified license reveal functionality in WooCommerce single order page in admin
- Add a filter dlm_woocommerce_order_item_actions for managing the order item actions in the WooCommerce single order page in admin
- Fixed issue introduced in v1.3.9 that thrown error when updating a license from admin
- Tested compatibility with WordPress 6.2
- Tested compatibility with WooCommerce 7.3
- A lot of other small code quality improvements
1.3.9
Release Date – 08 Jan 2023
- Add Generators Abstraction layer/hook and Abstract class. Read more
- Add “Max Activations Behavior” option to “Product Edit” > “License Manager” to make the purchased quantity of the product to be used as max activations limit, by default the old behavior will be preserved and the limit will depend on the Generator/Stock
- Add
$orderItem
parameter to thedlm_skip_licenses_generation_for_order_product
filter - Add services layer, move business logic code form Utils\Data to Core\Services, mark the old ones as deprecated and keep it backwards compatible
- Fix PHP warnings on certain actions
- Update i18n .pot template
1.3.8
Release Date – 16 Dec 2022
- Fix possible fatal error when using kadence woocommerce email customizer
- Test compatibility with WooCommerce 7.2
1.3.7
Release Date – 12 Dec 2022
- Fix logic error that made the order note when no licenses in stock found incorrect
- Add action hook
dlm_stock_delivery_assigned_licenses($assignedLicenses, $neededAmount, $availableStock, $order, $product)
that is triggered once licenses from stock assignment finished. Useful to notify third party something based on the delivered licenses or if no licenses were delivered due to empty stock - Add duplicate check to Licenses import based on plugin settings for allowing duplicates
- Add duplicate check warnings into admin notices when importing licenses
- Fix issue in Licenses import that allowed empty lines to be imported as empty licenses from clipboard or file
- Refactor file import process, moved temporary import file path from plugin folder to uploads
- Refactor order licenses resend email/action, the resend was not working on some environments
- Make use of ‘paginate’ property for wc_get_products in dropdown search fields
- Code quality and formatting improvements
1.3.6
Release Date – 24 Nov 2022
- Add code and status to error when license key is not found via rest api.
- Refactor Migrator class for better flexibility and reusability, fixes issues related to migrations.
1.3.5
Release Date – 14 Nov 2022
- Add support for assinging product variations to Licenses when selling from stock
- Rewrite stock syncrhonization functionality
- Test with the latest WooCommerce version
- Test with the latest WordPress version
1.3.4
Release Date – 04 Oct 2022
- Fix conflict with WooCommerce subscriptions in the product editor
- Add valid_for that tells how many days the license will be valid after purchased from stock
- Improve license create/edit screen field labels wording
- Fix invalid markup on the generator create/edit pages in admin
- Fix generator title badges in the generators list table in admin
- Fix license import functionality, do not set expiry date immediately and make use of the valid_for property
- Fix potential issue with stock decreasing and set validFor=null in save license procedure in admin
- Fix issue warning thrown when deleting licenses in the admin side, props @pondermatic
- Replaced WordPress meta function calls with WooCommerce product/order meta functions calls to comply with upcoming WooCommerce custom tables database implementation
1.3.3
Release Date – 20 Aug 2022
- Added option to specify license expiration date/time format in Settings. Props @pondermatic
- Fixed issues related to license expiration date/time output consistency. Props @pondermatic
- Fixed issues with PHP warnings. Props @pondermatic
- Fixed issues in “License Manager for WooCommerce” data migration tool, related to unhandled PHP exceptions.
- Fixed several typos in “License Manager for WooCommerce” data migration tool.
1.3.2
Release Date – 26 Jul 2022
- Fix typo in the migration file
1.3.1
Release Date – 26 Jun 2022
- Fix PHP warning on Admin > Activations page
1.3.0
Release Date – 25 May 2022
- Added Support for WordPress 6.0 and WooCommerce 6.5
- Added License Certifications feature in PDF format (integrates in WooCommerce and Licenses table admin screens)
- Added RestAPI optional ‘token’ parameter to the /activate endpoint to reactivate existing license token and not create new one if needed
- Added Single License page in My Account
- Added License Activation log in My Account single License page
- Added Migration tool for migrating from “License Manager for Woocommerce”
- Added permalinks flush mechanism to flush permalinks after plugin activation. Fixes issues with 404 pages in WooCommerce “My Account”
- Added “Help” page in “Settings”
- Removed redundant valid_for column in the licenses table in favor of expires_at
- Fixed issue with the pagination and filters on the License Activations page
- Fixed a problem that caused admins not able to clear activation limit on a license (set unlimited activations)
- Refreshed admin edit/create screens style
- Refreshed admin settings screens style
- Simplified the Licenses list table in admin screen
- Simplified the WooCommerce templates directory tree
- Improved the css/js resource queuing
- Improved PHP 8.1 compatibility
- Refactor the Abstracts/Interfaces naming to support PSR standard
- Upgraded jQuery UI css version to v1.13.1
1.2.2
Release Date – 23 Mar 2022
- Fix various notices found
- Fix license/validate endpoint. It was returning error response when activation token is deactivated. It should return the activation object with the populated deactivated_at prperty.
- Re-write the license generation in WooCommerce
- Improve code, add various hooks for better extendibility.
1.2.1
Release Date – 03 Mar 2022
- Fix Multisite database/fileystem initial setup. Run the database/filesystem setup on each blog once the plugin is activated network wide.
1.2.0
Release Date – 15 Dec 2021
- Complete rewrite of product edit data DLM fields
- Added error display when validation fails upon product save
- Added welcome notice
- Fix admin dropdowns product search
- Fix admin dropdowns order search
- Fix license update process that removed expiration date
- Fix purchased licenses display in the order page
- Fix Generator REST API problems related to the delete endpoint
- Fix API key last access date/time display
- Fix a problem that skipped the creation of the product_downloads table
- Fix activations limit calculations
- Imrpoved REST API validation and handling
- Improved the license expiration display in license table
- Updated the product fields. Instead of use stock and use generator this is now a single dropdown.
- Code style improvements
1.1.1
Release Date – 10 Oct 2021
- Add PRO version references
- Minor bug fixes
1.1.0
Release Date – 24 Sep 2021
- Add delete rest endpoint for Licenses and Generators
- Fix license activation validate endpoint
- Fix dlm_rest_api_pre_response filter
- Fix Generators update endpoint
- Improve “Re-send licenses” button in order screen
- Improve Customer delivery email
- Code style improvements
1.0.0
Release Date – 19 Jul 2021
- Everything is new