---
title: Пейволы
description: Витрина: SDK получает офферы → тариф → права тарифа.
---

# Пейволы

**Paywall** — именованная витрина. SDK не «запрашивает тариф отдельно» на старте UI:  
обычно `getPaywall('main')` → внутри уже лежат **цены и тарифы с правами**.

```text
SDK.getPaywall("main")
  → items[]
      → plan_price_id / amount / is_free
      → plans (тариф)
          → plan_entitlements → entitlements (code, name)
```

## Поля

| Поле | Заметки |
| --- | --- |
| `code` | Обычно `main` |
| `name` | В админке |
| `title` / `subtitle` | Тексты для UI |
| `status` | Публично только `active` |
| items | Список `plan_price_id` (оферы) |

## Элементы

| Поле | Заметки |
| --- | --- |
| `plan_price_id` | Что показать / что купить |
| `position` | Порядок |
| `is_recommended` | Подсветка |
| `badge` | Опционально |
| `custom_title` / `custom_subtitle` | Переопределения |

## Запрос

```http
GET /v1/applications/{app_code}/paywalls/{paywall_code}
X-Public-Key: YOUR_PUBLIC_KEY
```

JWT не нужен.

## Клиент

1. Нарисовать карточки из `plan` + `plan_price`.
2. Буллеты / сравнение — из `plan.entitlements` (или свой статичный UI, как в продукте).
3. Покупка: `createPayment` с `plan_price_id` (не free).
4. Доступ к фичам после покупки: `hasEntitlement`, не «название тарифа».
