License

This article explains how to manage licenses in the DigiCommerce Pro plugin. The license management feature allows you to create, issue, and track licenses for your digital products, ensuring that users can only access your products when they have a valid license.

What is DigiCommerce License Management?

The license management system in DigiCommerce Pro enables you to create product licenses automatically when customers purchase your products. These licenses can be used for software, plugins, themes, or any digital product that requires activation.

Key features include:

  • Automatic license generation on purchase
  • License activation and verification via API
  • License management in customer accounts
  • Support for multiple activations per license
  • Development site detection and support

Enabling License Management for Products

To enable license management for your DigiCommerce products:

  1. Edit your product in the WordPress admin area
  2. In the product sidebar, check the Enable License Management checkbox
  3. Set the maximum number of activations allowed per license
  4. Save your product

You can also enable license management for specific price variations:

  1. Create or edit a price variation in your product
  2. In the variation settings, enable the Enable License Management option
  3. Set the activation limit for this specific variation
  4. Save your product

Managing Licenses in the Admin Dashboard

DigiCommerce Pro adds a dedicated Licenses page to your admin menu. To access it:

  1. Go to DigiCommerce > Licenses in your WordPress admin area
  2. Here you can view all licenses, filter by status, and search for specific licenses

The licenses page displays:

  • License keys
  • Associated user and product
  • Current status (active, expired, or revoked)
  • Number of activations
  • Expiration date (if applicable)

License Actions

From the licenses list, you can perform several actions:

  • View – See detailed information about a license
  • Activate – Activate a revoked or expired license
  • Revoke – Disable a license completely
  • Expire – Mark a license as expired

You can also perform bulk actions by selecting multiple licenses.

Editing a License

When editing a license, you can:

  • Change the license status
  • Modify the activation limit
  • Update the expiration date
  • View and manage site activations

For site activations, you can view:

  • The site URL
  • Site type (production or development)
  • Activation date
  • Last verification date
  • Current status

Customer License Management

Customers can manage their licenses in their account area:

  1. Customers log into their DigiCommerce account
  2. Navigate to the “Licenses” section
  3. View their active and expired licenses
  4. See how many sites have been activated
  5. Deactivate sites they no longer use

The account licenses page shows:

  • License keys
  • Associated product
  • Status and expiration date
  • Number of activations used and remaining

How License Activation Works

When a customer activates a license on their site:

  1. The site sends an activation request to your DigiCommerce store
  2. The system verifies that the license is valid and hasn’t reached its activation limit
  3. If valid, the license is activated for that site
  4. The system automatically detects if it’s a development site (these don’t count toward activation limits)

Development sites are automatically detected by looking for common development domain patterns:

  • .local, .test, .dev domains
  • localhost
  • IP addresses (127.0.0.1, 192.168.x.x, etc.)
  • Staging subdomains

License API Endpoints

DigiCommerce Pro provides several API endpoints for license verification:

  • /license/verify – Verifies a license key for a specific site
  • /license/activate – Activates a license for a site
  • /license/deactivate – Deactivates a license for a site
  • /license/updates – Checks for updates and provides download links

These endpoints can be used by your plugins or themes to implement license verification.

Integrating License Checking in Your Plugins

You can use our sample plugin Awesome Plugin that demonstrates how to implement license checking in your own project. This provides a template that you can modify for your specific needs.

The sample plugin handles:

  • License activation and verification
  • Automatic updates delivery
  • Development site detection
  • User interface for license management

To use this in your own project, open it in your text editor and change:

  1. define(‘DIGI_API_URL’, ‘https://test.ppvaya.com‘) : Update the API URL to point to your DigiCommerce store
  2. define(‘DIGI_PLUGIN_SLUG’, ‘awesome-plugin’) : Change the slug by your project slug
  3. define(‘DIGI_PLUGIN_NAME’, ‘Awesome Plugin’) : Change the name by your project name

License Status Changes

Licenses can have several statuses:

  • Active – License is valid and can be used
  • Expired – License has reached its expiration date
  • Revoked – License has been manually disabled

Events that can change license status:

  • Order completion (creates active license)
  • Order refund (revokes license)
  • Subscription cancellation (expires license)
  • Manual admin action
  • License expiration date reached

License Upgrades

DigiCommerce Pro supports license upgrades, allowing customers to upgrade from a lower tier to a higher tier:

  1. Configure upgrade paths in your product settings
  2. Set pricing rules (full price or prorated)
  3. Apply optional discounts for upgrades

When a customer upgrades their license:

  1. The existing license is updated with the new activation limit
  2. Any existing activations are preserved
  3. If the upgrade involves a subscription, the old one is cancelled

The license upgrade history is maintained, allowing you to track the full history of each license.

By implementing license management with DigiCommerce Pro, you can protect your digital products while providing a seamless experience for your customers.