If you sell software, apps, software add-ons, themes, plugins, or extensions on your WooCommerce store, you need a way to provide secure access to users who purchase it from you.
The easiest way to do this is by using the WooCommerce API Manager plugin. I thought about using Easy Digital Downloads but we already use WooCommerce and WooCommerce Subscriptions on our site currently for our website maintenance clients. It made the most sense to stick with WooCommerce. I will say it was hard to find a solid plugin to serve license keys for our plugin. We thought about using the Software Add-On (built by the WooCommerce team) but it only works with simple products and thus could not be used with WooCommerce Subscriptions.
WooCommerce API Manager lets you turn your WooCommerce products into API resources that can be accessed with an API key. This means that you can use the WooCommerce plugin to sell license keys for software, subscriptions, and apps directly through your WooCommerce-powered store.
And, the best part is that it enables you to deliver a secure and seamless experience to your customers. They can pay for the software or subscription and get an API key for it right away. You can also add expiration dates to the license keys and add to simple and variable subscription products. A huge benefit for recurring revenue for your plugin or digital product!
For example, here is what one of our pricing pages look like:
When customer purchases a plan they get access to a license key automatically in the Order Confirmation email. Then, they add and activate their license key on the WordPress dashboard.
In addition, customers can also find license keys in their account.
In this tutorial, we’ll dig deeper into how to add license keys to your digital products.
What Are License Keys and Why Do You Need Them?
For those unfamiliar, a license key certifies that the copy of the software you’ve installed is original. Generally speaking, a license key is a unique string of characters and numbers. Online activation is required to ensure the license key one person has isn’t being used by someone else at the same time.
If you sell software or subscription products, you need a way to ensure each customer has their own license key. This is where the WooCommerce API Manager extension comes in.
WooCommerce API Manager lets you secure your software with an API key by acting as the WooCommerce Software License Manager. Client software typically has a full range of options and functionality allowing users to activate, deactivate, and update as necessary.
Software downloads use secure, expiring URLs to ensure only customers have access to the purchased software. This means that the license will only be used by one user. The WooCommerce extension also comes with a PHP library that you can incorporate into a plugin or theme to make it API-manager compatible.
This makes the WooCommerce API Manager plugin perfect for anyone looking to sell software, subscriptions, themes, plugins, add-ons, or extensions through their WooCommerce store. It essentially turns your product into an API resource and creates an API key or a license key that lets customers access your product.
WooCommerce API Manager Key Features
Here are some of the features that make the WooCommerce API Manager a great solution for creating license keys:
- WooCommerce API Manager is pretty simple to set up and use.
- After the customer buys your product, you can allow the purchased license key or API key to have either a limited amount of activations per API key or unlimited use. Once the API resource expires, it will no longer be available for access to the end-user.
- Your customers will be able to download secure URLs from local hosts, Amazon S3, or remote hosts.
- WooCommerce store owners using the WooCommerce API Manager can have full API access control. This allows you to disable individual customer API access if needed.
- The WooCommerce API Manager comes with built-in API debugging out of the box. You are given various options for accessing debugging data that is stored in custom WooCommerce logs.
- Data and API responses are super fast thanks to the SmartCache feature of the WooCommerce API Manager plugin. This feature allows the API Manager to work seamlessly with any level of traffic load or user load.
Now that we have a better understanding of why the WooCommerce API Manager is an easy and effective way of creating license keys for your WooCommerce products, let’s move on to setting up WooCommerce license keys on your store.
Setting up WooCommerce License keys
Here, we’ll explain step-by-step how you can set up WooCommerce license keys on your store. For this tutorial, we’ll assume you already have the WooCommerce plugin installed and activated and some software products or subscriptions that you’d like to sell.
Step #1: Install and configure the WooCommerce API Manager extension
Get the WooCommerce API Manager extension and install it on your WordPress site. Once that’s done, click the Activate button to get started.
Head over to WooCommerce → Settings → API Manager from the WordPress dashboard to configure the plugin’s settings. Here, you can enter your Amazon Web Services Access Key ID to and Amazon S3 Region.
In addition to this, you can also set the URL Expire Time and Save to Dropbox App Key.
Once you’ve configured the plugin, click the Save changes button to proceed.
Step #2: Set up API Products On Your WooCommerce Store
Once you’ve configured the plugin’s settings, you can start setting up your WooCommerce API products.
Since all API products are virtual, they can be of many types including simple, simple subscription, variable, variable subscription, and grouped. External and affiliate products cannot be classified as API products as they are placeholder products that link to an external product.
So, let’s say you want to set up a simple subscription product – here’s what you would need to do.
Go to the Edit product screen and scroll down to the Product data section. Use the dropbox to select Simple subscription and tick the checkboxes next to Virtual, Downloadable, and API.
Once that’s done, fill out the setting in the General tab. You can set the subscription price, expiry details, and much more.
Once that’s done, go to the API tab. Here, you can set the API products:
- Product ID – used to identify the API resource.
- Activation Limit – allow users to activate the product a specified number of times. Even if you want to provide an unlimited number of activations, you must set the value to something other than leaving it completely blank.
Other fields that you can fill out are pretty self-explanatory. These include:
- Page URL
- Last Updated
- Unlimited Activations
- Upgrade Notice
Click the Publish button to continue.
Step #3: Set the API Key
After setting up your WooCommerce product as an API resource, you need an API key that your customers will use to access the API resource or product. There are three different types of API keys to choose from:
- Master API Key. The Master API Key is used for every API resource on your WooCommerce store. As you add or remove API resources from your website, the Master API Key keeps a track of those changes and will only allow access to the available API resources. The Master API Key is great for customers who want to have a single API key to access everything on your WooCommerce store. It is usually a great choice for subscription products.
- Product Order API Key. The Product Order API key gets its privileges from the Master API Key, but can only manage a single API resource per Product Order API Key. For instance, if a customer decides to buy your product, a new API key will be generated for the same API resource. This API key won’t work on a different order of the same API resource. This is great for WooCommerce business owners who want their customers to use separate API keys for every purchase they make.
- Associated API Key. Similar to the Product Order API Key, the Associated API Key also allows a single API resource per API key. But the Associated API key lets you control which of the products and orders the single API key is associated with.
You may also control the user Master API Key by going to “Users > User Profile”. You can replace the Master API Key, or disable it, all by ticking the two checkboxes. When you disable a Master API Key, you disable the access to API resources for your customers. Additionally, the two other keys – Product Order API key and Associated API Key – will also stop working completely when the Master API key is disabled.
Once a customer finally decides to purchase the API key in order to access the API resources, all the information related to the API access will be displayed on the Order screen as well as the My Account dashboard.
WooCommerce API Manager PHP Library for Plugins and Themes
If you sell WordPress plugins or themes, you can easily connect the theme or plugin to the API manager with the help of the WooCommerce API Manager PHP Library for Plugins and Themes. The PHP library can be used with a plugin or theme for API Key authentication and software upgrades with the WooCommerce API Manager.
WooCommerce API Manager is the best solution for anyone looking to create WooCommerce license keys for their products. It will help you secure your software from unauthorized access by allowing only customers to access your themes and plugins using API keys.
Customers will simply need to enter the API key given to them to start using the theme or plugin. And, after it’s activated, they’ll be able to see how many activations they have left.
In addition to this, orders that have API Key activations will display a key in the orders list and will be displayed on the Orders screen.
The WooCommerce API Manager makes it easy for store owners to sell subscription products and software directly through their WooCommerce store. It’s the easiest way to deliver a secure and seamless purchasing experience to customers.
You can choose which type of API key to use depending on the type of product you’re selling. And, if you sell WordPress themes or plugins, you can make use of the WooCommerce API Manager PHP Library for Plugins and Themes to set it up even faster.
What sort of products are you looking to set up license keys for? Have you tried other license key solutions? Let us know in the comments section below.