---
title: "Реализация веб-пейволов в Android SDK"
description: "Настройте веб-пейвол для приёма платежей без комиссий и проверок Play Store."
---

:::important
Прежде чем начать, убедитесь, что вы [настроили веб-пейвол в дашборде](web-paywall) и установили Adapty SDK версии 3.15 или выше.
:::

## Открытие веб-пейволов \{#open-web-paywalls\}

Если вы работаете с пейволом, разработанным самостоятельно, вам нужно обрабатывать веб-пейволы с помощью метода SDK. Метод `.openWebPaywall`:
1. Генерирует уникальный URL, позволяющий Adapty связать конкретный пейвол, показанный определённому пользователю, с веб-страницей, на которую он будет перенаправлен.
2. Отслеживает момент возврата пользователей в приложение и затем запрашивает `.getProfile` с короткими интервалами, чтобы определить, обновились ли права доступа профиля.

Таким образом, если платёж прошёл успешно и права доступа обновились, подписка активируется в приложении практически сразу.

:::note
После того как пользователи вернутся в приложение, обновите UI, чтобы отразить изменения профиля. Adapty получит и обработает события обновления профиля.
:::

```kotlin showLineNumbers
Adapty.openWebPaywall(
    activity = activity,
    product = product,
) { error ->
    if (error == null) {
        // the web paywall was opened successfully
    } else {
        // handle the error
    }
}
```

:::note
Существует две версии метода `openWebPaywall`:
1. `openWebPaywall(product)` — генерирует URL по пейволу и добавляет в URL данные о продукте.
2. `openWebPaywall(paywall)` — генерирует URL по пейволу без добавления данных о продукте. Используйте его, когда продукты в пейволе Adapty отличаются от тех, что указаны в веб-пейволе.
:::

## Открытие веб-пейволов во встроенном браузере \{#open-web-paywalls-in-an-in-app-browser\}

По умолчанию веб-пейволы открываются во внешнем браузере.

Чтобы обеспечить более плавный пользовательский опыт, можно открывать веб-пейволы во встроенном браузере. Это отображает страницу веб-покупки прямо внутри приложения, позволяя пользователям завершать транзакции без переключения между приложениями.

Для этого установите параметр `presentation` в значение `AdaptyWebPresentation.InAppBrowser`:

```kotlin showLineNumbers
Adapty.openWebPaywall(
    activity = activity,
    product = product,
    presentation = AdaptyWebPresentation.InAppBrowser,
) { error ->
    if (error == null) {
        // the web paywall was opened successfully
    } else {
        // handle the error
        val adaptyError = error
    }
}
```