Plugin info

Total downloads: 7,104
Active installs: 70
Total reviews: 10
Average rating: 3.8
Support threads opened: 0
Support threads resolved: 0 (0%)
Available in: 1 language(s)
Contributors: 3
Last updated: 4/5/2021 (1731 days ago)
Added to WordPress: 8/19/2015 (10 years old)
Minimum WordPress version: 3.5.1
Tested up to WordPress version: 5.7.13
Minimum PHP version: f

Maintenance & Compatibility

Maintenance score

Possibly abandoned • Last updated 1731 days ago • 10 reviews

24/100

Is WooCommerce Software License Manager abandoned?

Possibly abandoned (last update 1731 days ago).

Compatibility

Requires WordPress: 3.5.1
Tested up to: 5.7.13
Requires PHP: f

Similar & Alternatives

Explore plugins with similar tags, and compare key metrics like downloads, ratings, updates, support, and WP/PHP compatibility.

No similar plugins found yet.

Description

Seamless integration between WooCommerce and the Software License Manager Plugin. Originally adopted from EDD Software License Manager, thanks to flowdee ([email protected]).

Github repository

https://github.com/shamloo/wc-software-license-manager

Features

  • Automatically creates license keys for each sale with WC
  • Licensing is optional and can be activated/deactivated individually
  • Send generated license keys to your customers within your existing email notifications

Sample code

';
    echo '

Sample License Management

'; /*** License activate button was clicked ***/ if (isset($_REQUEST['activate_license'])) { $license_key = $_REQUEST['sample_license_key']; // Send query to the license manager server $lic = new youlice_class($license_key , YOUR_LICENSE_SERVER_URL , YOUR_SPECIAL_SECRET_KEY ); if($lic->active()){ echo 'You license Activated successfuly'; }else{ echo $lic->err; } } $lic = new youlice_class($license_key , YOUR_LICENSE_SERVER_URL , YOUR_SPECIAL_SECRET_KEY ); if($lic->is_licensed()){ echo 'Thank You Phurchasing!'; }else{ ?>

'; } class youlice_class{ public $lic; public $server; public $api_key; private $wp_option = 'product_1450'; private $product_id = 'My_product_name_OR_ID'; public $err; public function __construct($lic=false , $server , $api_key){ if($this->is_licensed()) $this->lic = get_option($this->wp_option); else $this->lic = $lic; $this->server = $server; $this->api_key = $api_key; } /** * check for current product if licensed * @return boolean */ public function is_licensed(){ $lic = get_option($this->wp_option); if(!empty( $lic )) return true; return false; } /** * send query to server and try to active lisence * @return boolean */ public function active(){ $url = YOUR_LICENSE_SERVER_URL . '/?secret_key=' . YOUR_SPECIAL_SECRET_KEY . '&slm_action=slm_activate&license_key=' . $this->lic . '®istered_domain=' . get_bloginfo('siteurl').'&item_reference='.$this->product_id; $response = wp_remote_get($url, array('timeout' => 20, 'sslverify' => false)); if(is_array($response)){ $json = $response['body']; // use the content $json = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', utf8_encode($json)); $license_data = json_decode($json); } if($license_data->result == 'success'){ update_option( $this->wp_option, $this->lic ); return true; }else{ $this->err = $license_data->message; return false; } } /** * send query to server and try to deactive lisence * @return boolean */ public function deactive(){ } }

Theme & Plugin Integration

Please Note: The license validation part for your distributed plugins and themes is not part of this plugin. More on this can be found in the Software License Manager documentation.

To implement License Key validation in your plugin or theme, please check out the sample code in Maddison Designs’ Github repo.

Attention
Known incompatibility issue with iThemes Security
If you have installed “iThemes Security”, uncheck Long URL Strings where the Software License Manager plugin is installed

Credits

Translates

Configuration

The plugin is really simple and well structured so you don’t have to prepare a lot in order to get it working.

  1. After the successful installation you will find a prepared options page here: “WooCommerce” > “Settings” > “Products” > “License Manager”
  2. Enter your Software License Manager API credentials
  3. Go to your Products and activate licensing where it’s required

Installation

The installation and configuration of the plugin is as simple as it can be.

Using The WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Search for ‘wc software license manager’
  3. Click ‘Install Now’
  4. Activate the plugin on the Plugin dashboard

Uploading in WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Navigate to the ‘Upload’ area
  3. Select plugin zip file from your computer
  4. Click ‘Install Now’
  5. Activate the plugin in the Plugin dashboard

Frequently Asked Questions

Is it necessary to install both plugins on the same WordPress installation?

No! That’s one of the biggest benefits of this integration. WooCommerce and the Software License Manager can be installed on different sites.

Can I use this plugin to validate the generated license keys?

No! The license validation part for your distributed plugins and themes is not part of this plugin. Therefore please take a look into the Software License Manager documentation.

Review feed

nasimnet
9/3/2016

Good

thank you !
PersianScript
9/3/2016

good !

;) thank you!
michelve
7/19/2017

Not creating new licenses on new orders

Great Plugin. Hopefully we can get the plugin to work flawless with the latest woocommerce release. Issues: failed to create license on new orders. failed to send emails on new orders Here is my error log: 01-Jul-2017 14:51:39 UTC] post was called incorrectly. Order properties should not be accessed directly. Backtrace: require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::do_wc_ajax, do_action('wc_ajax_checkout'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::checkout, WC_Checkout->process_checkout, WC_Checkout->process_order_without_payment, WC_Order->payment_complete, WC_Order->save, WC_Order->status_transition, do_action('woocommerce_order_status_completed'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails::send_transactional_email, do_action_ref_array, WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Email_Customer_Completed_Order->trigger, WC_Email->get_content, WC_Email_Customer_Completed_Order->get_content_html, wc_get_template_html, wc_get_template, include('/addons/woocommerce/templates/emails/customer-completed-order.php'), do_action('woocommerce_email_order_details'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails->order_details, wc_get_template, include('/addons/woocommerce/templates/emails/email-order-details.php'), do_action('woocommerce_email_before_order_table'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, wc_slm_email_content, WC_Abstract_Legacy_Order->__get, wc_doing_it_wrong. This message was added in version 3.0. [01-Jul-2017 14:51:39 UTC] post was called incorrectly. Order properties should not be accessed directly. Backtrace: require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::do_wc_ajax, do_action('wc_ajax_checkout'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::checkout, WC_Checkout->process_checkout, WC_Checkout->process_order_without_payment, WC_Order->payment_complete, WC_Order->save, WC_Order->status_transition, do_action('woocommerce_order_status_completed'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails::send_transactional_email, do_action_ref_array, WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Email_Customer_Completed_Order->trigger, WC_Email->get_content, WC_Email_Customer_Completed_Order->get_content_html, wc_get_template_html, wc_get_template, include('/addons/woocommerce/templates/emails/customer-completed-order.php'), do_action('woocommerce_email_order_details'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails->order_details, wc_get_template, include('/addons/woocommerce/templates/emails/email-order-details.php'), do_action('woocommerce_email_before_order_table'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, wc_slm_email_content, WC_Abstract_Legacy_Order->__get, wc_doing_it_wrong. This message was added in version 3.0. [01-Jul-2017 14:51:40 UTC] post was called incorrectly. Order properties should not be accessed directly. Backtrace: require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::do_wc_ajax, do_action('wc_ajax_checkout'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::checkout, WC_Checkout->process_checkout, WC_Checkout->process_order_without_payment, WC_Order->payment_complete, WC_Order->save, WC_Order->status_transition, do_action('woocommerce_order_status_pending_to_completed'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails::send_transactional_email, do_action_ref_array, WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Email_New_Order->trigger, WC_Email->get_content, WC_Email_New_Order->get_content_html, wc_get_template_html, wc_get_template, include('/addons/woocommerce/templates/emails/admin-new-order.php'), do_action('woocommerce_email_order_details'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails->order_details, wc_get_template, include('/addons/woocommerce/templates/emails/email-order-details.php'), do_action('woocommerce_email_before_order_table'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, wc_slm_email_content, WC_Abstract_Legacy_Order->__get, wc_doing_it_wrong. This message was added in version 3.0. [01-Jul-2017 14:51:40 UTC] post was called incorrectly. Order properties should not be accessed directly. Backtrace: require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::do_wc_ajax, do_action('wc_ajax_checkout'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_AJAX::checkout, WC_Checkout->process_checkout, WC_Checkout->process_order_without_payment, WC_Order->payment_complete, WC_Order->save, WC_Order->status_transition, do_action('woocommerce_order_status_pending_to_completed'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails::send_transactional_email, do_action_ref_array, WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Email_New_Order->trigger, WC_Email->get_content, WC_Email_New_Order->get_content_html, wc_get_template_html, wc_get_template, include('/addons/woocommerce/templates/emails/admin-new-order.php'), do_action('woocommerce_email_order_details'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, WC_Emails->order_details, wc_get_template, include('/addons/woocommerce/templates/emails/email-order-details.php'), do_action('woocommerce_email_before_order_table'), WP_Hook->do_action, WP_Hook->apply_filters, call_user_func_array, wc_slm_email_content, WC_Abstract_Legacy_Order->__get, wc_doing_it_wrong. This message was added in version 3.0.
Prayoga Teguh
6/29/2018

Works like a charm!

Whoever using this plugin and seems it don't work, please make sure the "downloadable" option in product is checked. Also in the plugin setting, input the creation key (not using the activation key). I use the latest WordPress, Woocommerce and Software License Manager, and every is work as it should.

Screenshots

  1. Configuration screen

    Configuration screen

  2. Activating licensing for a download

    Activating licensing for a download

  3. Output the generated license keys within your emails

    Output the generated license keys within your emails

Changelog

2.0.1

  • Updated License table styles so it matches the Order table.
  • Updated hook to insert License details after Order details rather than before

2.0.0

  • Updated plugin to work with WordPress 4.8.2 and WooCommerce 3.2
  • Fixed error from WC Order Properties being accessed directly on My Account Order View page and when generating order email
  • Added functionality to pass Product Ref to Software License Manager API when generating key
  • Added ability to enable/disable debug logging messages
  • Added logging messages throughout code which are only displayed when logging is enabled
  • Added settings option for Secret Key for Verification to enable viewing License Key Registered Domains on Order View page
  • Added the display of Registered Domains for each License Key on the WooCommerce Order View page
  • Removed code that wasn’t being used
  • Removed superfluous comments and added in lots of extra comments where needed
  • Reformatted and tidied code to WordPress Plugin Directory specifications
  • Reworded meta box labels and added input field descriptions on add/edit product page
  • Updated Version to 2.0.0

1.0.7 (20th July 2016)

  • Add Expire Date to Email and Purchase Details (Thanks to Albert Van Der Ploeg)
  • txn_id change from $product_id to $order_id

1.0.6 (8th November 2015)

  • Small fix

1.0.5 (7th November 2015)

  • has_downloadable_item and $product->has_file() removed from code, so downloadable tick is enough for working

1.0.4 (1st November 2015)

  • Small fix
  • Spanish translate added

1.0.3 (6th October 2015)

  • License details get from billing form now
  • License renewal can be set in product page
  • License details added to user account page

1.0.1 (5th October 2015)

  • Sample code was added
  • Small fix