Права наполняют тариф и используются как гейты в коде приложения.
Права (entitlements)
Entitlement — право на фичу. Оно не продаётся само по себе: продаётся тариф, а права к нему привязаны.
В коде после покупки проверяйте коды прав, не название тарифа:
await platform.hasEntitlement("cloud_sync");
Так одна фича может входить в несколько тарифов без смены клиентского кода.
Роль в модели
Тариф (главный)
└── права тарифа ← справочник entitlements + plan_entitlements
Админка: сначала заводите права (справочник), потом собираете из них тарифы.
Интеграция: думайте «какой тариф купили → какие права он дал».
Поля
| Поле | Обязательно | Заметки |
|---|---|---|
code | да | hasEntitlement('code') |
name | да | Для админки / UI |
description | нет | Опционально |
Примеры кодов
premium_feature
cloud_sync
export_hd
Runtime
const ok = await platform.hasEntitlement("premium_feature");
final ok = await platform.hasEntitlement('premium_feature');
GET .../entitlements/me → codes[] + строки с source, starts_at, expires_at, is_lifetime (срок зеркалит подписку/тариф).
Правила
- Free-локальные фичи обычно без серверного entitlement.
- Платные фичи — entitlement на платном тарифе.
- Не плодите право на каждый прайс — право на capability, тарифы разные.