function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion

License Management without AppExchange, base package, extension packages.

I am building Apps but not planning to list them on AppExchange.

I have a base managed package and several managed extension packages.

Each of the managed extension package is product that I want to control the number of users for. For base package, I don't want any control.
For extension packages, one extension package might have 10 users while other has only 5 - I want to do them independently.

Can I use the License Management to accomplish this?

Few specific questions:

1. Do I need to list on AppExchange to use License Management ? If not how would I do it.
2. Can I make the base package NOT license managed but make extension packages License Managed?

To accomplish what you want, do the following:
In the AppExchange, for the base managed package, set the defaults as: status = active, default number of licenses = site license and default number of days before license expiry = does not expire.
The above effectively means that all users in all customer orgs have license to your package for ever.

Using LMA 2.0, apply licensing to the extension packages. So for example, for a customer x who has installed your package, you can say that only 10 users can access the extension package up to 12/31/2008.
Only if a customer org sys admin gives license to a user in his org for this extension package can the user access the extension package.

To use license management functionality, you need to upload and register each version of your package and link the package to an LMO. Whether your listing is private or public does not matter.

Please listen to this breeze presentation to know more about LMA 2.0
Just to add it to it, one can register the package on AppExchange without publishing it.

Just go to and login with the credentials of the org that was used to upload the managed package where LMA is installed(aka LMO).