The Entitlement Flow
- Subscription: A customer subscribes to a specific Plan Version.
- Entitlements Generated: Unprice automatically extracts the features and limits from that Plan Version and assigns them to the customer as entitlements.
- Verification: Your application uses the Unprice SDK to check if a customer has the required entitlement before performing an action.
Features vs. Entitlements
It’s helpful to think of the distinction this way:- Features are what you sell.
- Entitlements are what the customer has.
Types of Checks
Using the Unprice SDK, you can perform different types of entitlement checks:1. Access & Usage Check (Can)
Check if a customer has access to a feature, and optionally check if they have enough balance for a specific amount of usage. Why check usage incan?
Checking usage before performing an action (and before reporting it) allows you to fail gracefully without creating negative usage or partial transactions if the customer is over their limit.
2. Report & Verify (Atomic)
Report usage and verify access in a single atomic call. This is the most common way to track metered features.Benefits of the Entitlement System
- Decoupling: Your code doesn’t need to know about “Gold” or “Silver” plans. It only needs to know if the customer can perform a specific action.
- Real-time Updates: If a customer upgrades their plan, their entitlements are updated instantly across all your services.
- Grace Periods: Unprice allows you to configure “overage” strategies, letting customers exceed their limits while you notify them to upgrade.

