Product Icon

Software Add-on for WooCommerce

Sell License Keys for Software

Software licenses that are feature based

In conjunction with other addons like “product addons” for example a single software product will have a license but the license will be derived based on features. So entering license key “ABC” doesn’t unlock the entire software product only specific features. Instead of creating multiple products for a single software product, as a developer we need a way in our product to enter in the license key, check it, but verify what features it is good for based on order information.

One simple suggestion is to provide additional meta data back over the API calls for checking / activating a software license and depending on which additional addons are installed order meta data can come back over the API so the software on the other side of the license check can do the work. In woocommerce dashboard order information including extensions installed like product addons are already available so it just needs to also be communicated back over the API. IE license check = success + order meta data API payload in response.

So license check -> Yes + order details (including information from any order addons installed like product addons for example).

Otherwise a more complex approach is to make the license generation and checking more complex in woocommerce and able to handle generating licenses by product addons, checking it based on product addons, and giving back responses of what features can be unlocked on the application side. But this may be overkill compared to just leaving everything the same and giving back order details in the API response so a devleoper can decide what parts of the software to unlock inspecting the order details and say “If addon A” is in the response unlock feature A.

This greatly simplifies and allows a single product to be created and then a developer to license the software accordingly using online license validation and order meta data to unlock pieces of the application vs the whole application.



Current Status


Last updated: October 5, 2022


Log in to comment on this feature request.