Entitlement Definitions are Developer-defined collections of plans that determine how an application will be accessed by Tenants. The purpose of plans is to authorize User access to an application and its Features; different plans can be configured in order to authorize different Users to access different Feature configurations. Entitlement Definitions are only used in applications with Authorization or Multi-tenancy, and are required for these types of applications. This means that an these applications can’t be promoted until an active offering has been defined.
Entitlement Definitions by default are unpublished and ultimately must be published before the applications with Authorization or Multi-tenancy can be promoted to the Sandbox/Published stages and ultimately accessed by Tenants. You must have an Entitlement Definition published for an application before you can promote it to the Sandbox stage. For applications with Authorization, you can only create a single Entitlement Definition, but for applications with Multi-tenancy you may publish a new Entitlement Definition at any time. If you do so, though, Tenants who have purchased from an existing Entitlement Definition will continue to be charged according to the Entitlement Definition from which they purchased, and will only be able to purchase additional subscriptions from that Entitlement Definition.
A subscription is a contract that authorizes a User to access an application. A User-based subscription to an application is therefore required for an individual to access an application, and User-based Entitlement Definitions are required in order to publish an Entitlement Definition.
The User-based Entitlement Definition is required and must be defined in an Entitlement Definition before it can be published.
For an application with Multi-tenancy, an Account-wide Entitlement Definition can be created in addition to a User-based Entitlement Definition. This controls access to Features for all Users of the application for a Tenant’s Account. When a Tenant creates their first subscription for the application, they will be prompted to add a plan from the Account-wide Entitlement Definition if this is defined.
To clarify the difference, consider the following two scenarios:
Scenario A would be defined inside of the User-based Entitlement Definition, and Scenario B would be defined inside of the Account-wide Entitlement Definition.
Plans are groupings of application Features that are offered according to a designated renewal period.
Plans with a set entitlement refreshment period renew at the end of their entitlement cycle, at which point any Features designated as Block Features are replenished.
Plans with no set entitlement refreshment period have no renewal period, and no exhausted Features are replenished.