xMatix
Sign in Request demo
xMatix
PRODUCTS
SalesField SalesCRMRewardsClaimsInventoryProcurementWarehouse ManagementField ServiceServiceSupportTelephony & MessagingFinance & AccountingPayrollExpense ManagementCommercePortalsAnalytics & ReportingData StudioMobile AppSee all products →
PLATFORM
Platform overviewApp BuilderAutomationIntegrationsSecurity & GovernanceChange ManagementDevelopers
SENSE AI
Sense AI overviewSense AssistSense ControlSense VisionAI StudioTrust & governanceIn Claude & ChatGPTUse cases
SOLUTIONS
FMCG & DistributionManufacturing & Dealer NetworksAutomotive & DealershipsPharma & HealthcareConsumer DurablesAgri-InputsBuilding MaterialsService NetworksWarehousing & 3PLFinancial AccountingERP SoftwareIndia GST ComplianceUAE VAT & e-InvoicingSaudi ZATCA & VATAll solutions →
RESOURCES
Knowledge CenterDeveloper & CLIBlogGuidesWhat is xMatix?Company facts
COMPANY
AboutCareersPartnersEventsContactAuthorsLegal
Sign in Request demo
Home/Docs/Administration/Licensing: products, features and seats
REFERENCE · Last reviewed

Licensing: products, features and seats

Licensing determines what your organization has commercially enabled and which users occupy a seat on it. It is a separate layer from security: a user needs an entitlement and a security profile grant before a licensed product or feature becomes usable, and a module's own settings switch can still turn it off for everyone. This page explains the objects, the Licenses screen, per-user seats, and what the tenant administrator can and cannot change.

Products, features and packages

KindWhat it coversExample
ProductA whole functional area of the platform, with the apps and entities it shipsCRM, Finance, Inventory
FeatureAn individual capability, licensed on its own or riding along with a productSense AI
PackageAn installed add-on bundle with its own licensing modeA vertical solution package

Every feature carries a licensing mode set in the platform catalogue: Licensed features need a tenant license row and — when seat enforcement is on — a user seat; Free features are granted automatically to everyone who holds the parent product; Disabled features are off platform-wide and no tenant setting turns them on. The Licenses screen offers Enable/Disable only for Licensed rows — the missing action on a Free or Disabled row is expected, not a permissions problem. A feature also needs its parent product enabled, and a feature's seat count can never exceed the parent product's.

The Licenses screen

Go to Setup → Feature Hub → Administration → Licenses (page title Tenant Licenses). Viewing requires the setup.licensing.admin capability; without it the page shows a Permission required notice. The header tiles count Products, Features and Packages in the catalogue plus the active seats of each kind, and six tabs follow: Products, Features, Packages, Unbound Entities (n), Users without Seats (n) and Packages without Mode (n).

Tenant Licenses screen on the Products tab: header tiles for products, features, packages and active seats; a table of product licenses with Status, Seats usage bars and Enable/Disable actions
The Licenses screen is where tenant entitlements are enabled and disabled and where seat usage is read; seat counts and terms themselves come from the platform operator.UI captured
  1. 1

    Products, Features and Packages count catalogue rows; the three seat tiles count active seat allocations per kind.

  2. 2

    Unbound Entities, Users without Seats and Packages without Mode are the coverage lists — review them before any enforcement is switched on.

  3. 3

    Open a license name to see its seat assignments and revoke individual seats.

  4. 4

    Status is computed in order: Disabled platform-wide, Free, Disabled, Expired, Seats full, Active.

  5. 5

    Seats shows active seats against the count set by the operator — Unlimited when no count is set.

  6. 6

    Enable and Disable are the only row actions; they exist only for Licensed-mode rows.

Each row on the three license tabs shows License, Status, Seats (active / count, or active / Unlimited when no seat count is set, with a usage bar), Assigned and Revoked lifetime counters, Start, Expiry, Billing Ref and the actions. The status tag is computed in a fixed order: Disabled platform-wide (mode Disabled) → FreeDisabledExpiredSeats fullActive.

What you can do here:

  • Enable a license your organization has been allocated. If the product's apps and entities are not yet set up, the confirmation says enabled — setup in progress and they appear within minutes. Enabling fails with Contact your platform operator when the product has not been allocated to your organization, and with a missing-dependencies message when a prerequisite product is not enabled yet.
  • Disable a license. The confirmation warns that users will lose access at their next sign-in or session refresh; in practice entitlements are cached for up to about two minutes, so the cut-off follows within that window.
  • Open a license name to reach its Assignments page — every user seated on it, with Status (Active or Revoked), Assigned, Assigned by, Revoked and Revoked by — and Revoke individual seats there.

What you cannot do here: seat counts, start and expiry dates and billing references are not editable in the tenant Setup. They are set by the platform operator when the license is allocated to your organization; if a seat count or expiry is wrong, raise it with your operator.

Seats

A seat puts one named user on a tenant license. Seats are assigned per user on Setup → Access Control → Users → the user → License Allocations (visible with setup.licensing.admin, or on your own account): three cards — Products, Features, Packages — each with an Add a product… (or feature/package) selector and an Add license button, and a revoke action per seat. Free-mode features are not offered because they are granted automatically. Toasts confirm Seat assigned. and Seat revoked.

Rules that always apply:

  • When a license has a seat count, adding a seat beyond it fails with a seats-exhausted error until you revoke one or the operator raises the count. A license with no seat count is unlimited.
  • Revoking keeps the assignment in history (the Revoked counters on the Licenses screen) and frees the seat immediately.
  • Deactivating a user does not revoke their seats; include seat cleanup when you offboard someone.

One honest caveat: whether a missing seat blocks access depends on platform-level seat enforcement, which is off by default. With enforcement off, a user with the profile grants can use a licensed feature without a seat, and a license with no seat allocations at all behaves as available to everyone with the grants. With enforcement on, the seat is required and profile assignment validates against it (below). Never conclude a user is seated just because a feature works — check the License Allocations tab.

How licensing composes with security profiles

Licensing and security are independent locks on the same door, and the effective entitlement is the intersection of three things: what the tenant license enables, what the user's profiles grant, and — with seat enforcement — the user's seats.

  • A user with a seat but no profile grant sees nothing: profiles are the unit of app, entity, field and capability access, and visibility is allowlist-based.
  • A user with generous profile grants but no seat is blocked only when seat enforcement is on.
  • Profiles can declare the product and feature licenses they require. With seat enforcement on, assigning such a profile to a user without the matching seats fails validation — allocate the seats first.

The user's Access Diagnostics tab (next to License Allocations) shows this intersection server-side: the profiles, roles, teams and business units resolved for the user, the product and feature licenses and capabilities they hold, and — side by side — the licenses and capabilities their profiles require but they do not hold. Changes to licenses, seats and profiles take effect within the entitlement cache window (about two minutes) rather than strictly at the next sign-in.

Module switches

Operational module settings are separate from commercial licenses. There is deliberately no consolidated module-settings item in the navigation: a module that exposes settings has its own Settings entry inside its Feature Hub group (Sales, Service, Inventory, Procurement, Claims, Finance, Portals and so on). A module master switch turned off disables the module for everyone — including users holding licenses and seats — while enabling a switch never supplies a missing license or seat. Check the module's Settings alongside licensing when a whole team loses a module at once.

Coverage and usage reports

The three coverage tabs on the Licenses screen answer "what is not covered yet":

  • Unbound Entities — entities with no owning product or feature. Today entity-level license gating is not enforced, so an unbound entity is usable by anyone with profile access; the list is a review aid for binding entities before gating is switched on. Bind an entity from Setup → Design Studio → Entities → the entity → Licensing card (Edit → Owning product, Additional features).
  • Users without Seats — active users who hold no product seat at all.
  • Packages without Mode — installed packages whose licensing mode has not been set.

The same three lists, with counts in the header, are available as a standalone License Coverage report reached from the Licenses screen.

Setup → Feature Hub → Administration → License Usage records when licensed functionality was actually exercised: filter by user, usage type, source and date range (last 24 hours, 7 or 30 days); columns are Occurred, Usage Type, Source, User, Email, Profile, Product, Feature and Capability. Events are metered at most once per user per cache window (about two minutes), so the table shows that a user used an entitlement, not how many times. It is usage telemetry, not the audit trail — configuration changes are recorded separately.

Common questions

A user has a seat but still can't use the feature — why?

Work outward through the other layers: the module's own Settings switch may be off, the tenant license row may be Disabled or Expired, the feature's parent product may be disabled, or the user's profiles may not grant the app, entity or capability involved — a seat unlocks nothing by itself. Open the user's Access Diagnostics tab and compare what the user holds with what the profiles require, then follow Troubleshooting: a user can't see something. Allow up to two minutes after any change for caches to refresh.

What happens when a license runs out of seats?

The Licenses screen shows Seats full, and adding a further seat on the License Allocations tab fails until you revoke an existing seat or the platform operator raises the count. Nothing changes for users already seated. Deactivated users keep their seats until you revoke them, so seat cleanup belongs in offboarding.

Does disabling a license delete anything?

No. Disabling removes access, not data or configuration: records, customizations and seat assignments remain, and re-enabling restores access. Because the cut-off reaches users within minutes, treat a disable as a user-facing change and announce it first.

Can I change the seat count or expiry date myself?

No. The tenant Setup exposes Enable, Disable and per-user seat assignment and revocation; seat counts, terms and billing references are maintained by the platform operator who allocated the license. The Licenses screen shows the current values so you can see what to ask for.