The Best Way to Sell WordPress Plugins With Your Own License System
Stop paying Envato 37.5% or Gumroad 10%. Take your plugin sales off-marketplace, generate license keys automatically, and validate them in real-time via REST API — all on your own server.
// In your WordPress plugin
function check_license() {
$response = wp_remote_post(
'https://yourstore.com/api/validate-license',
['body' => [
'license_key' => get_option('my_plugin_license'),
'domain' => home_url(),
'product' => 'my-plugin',
]]
);
$data = json_decode(wp_remote_retrieve_body($response));
return $data->valid === true;
}
Why developers move off Envato and Gumroad
37.5% author fee
Envato takes up to 37.5% of every sale. On a $49 plugin, you keep $30. Every. Single. Sale.
No license control
Marketplaces handle purchases but not license validation. You have no way to revoke access, enforce activation limits, or bind to a domain.
No direct customer relationship
Your buyers belong to the marketplace. You can't email them about updates, upsell, or run your own renewal flow.
How ChargePanda handles license management
Everything happens automatically from the moment a customer pays.
Customer pays
Stripe, PayPal, or any gateway. One-time or subscription.
License key generated
A cryptographically secure key is auto-issued and emailed.
Plugin validates in real-time
Your plugin calls the REST API on activation. ChargePanda checks domain, activation count, and expiry.
Renewals handled automatically
Expiry notifications go out. Customers renew. You get paid. License reactivates.
Everything a plugin seller needs
-
Activation limitsSet how many sites a single license can activate. Customers self-manage activations from their account portal.
-
Domain bindingBind a license to a specific domain. Perfect for site licenses.
-
REST validation APIA single POST endpoint your plugin calls on activation and optionally on each load. Returns valid/invalid, remaining activations, expiry.
-
Support window policiesDefine 6-month, 12-month, or lifetime support. After expiry, customers can still use the plugin but can't download updates until they renew.
-
Renewal notificationsAutomated emails go out before expiry. You configure the timing. Customers click and pay.
-
Multiple plans per productSell a Starter (1 site), Pro (5 sites), and Agency (unlimited) tier from one product page.
{
"valid": true,
"license_key": "ABCD-1234-EFGH-5678",
"product": "my-wordpress-plugin",
"domain": "client-site.com",
"activations_used": 2,
"activations_limit": 5,
"expires_at": "2027-01-15T00:00:00Z",
"support_active": true
}
Revenue comparison
Ready to own your plugin sales?
One-time purchase. Self-hosted. You keep 100% of every sale.