---
title: "Добавление продуктов"
description: "Добавьте продукты или подписки в Adapty и свяжите их с листингами App Store, Google Play, Stripe, Paddle или собственного стора."
---

:::tip
Настраиваете Adapty программно? Этот шаг можно выполнить с помощью [Developer CLI](developer-cli-quickstart).
:::

Прежде чем использовать основные возможности Adapty, нужно добавить каждый продукт, который вы продаёте, и связать его со всеми сторами или платёжными платформами, которые вы поддерживаете. Это позволит доставлять продукты на устройства пользователей и отслеживать их в аналитике.

В Adapty всё, что продаёт ваше приложение, — это **продукт**. Если один и тот же товар есть в App Store, Google Play или Stripe, их можно объединить в один продукт в Adapty. Настройте один раз и управляйте сразу на всех платформах.

Давайте добавим ваш первый продукт.

<Tabs groupId="products" queryString>

<TabItem value="no-products" label="Продуктов в сторах ещё нет" default>

<div style={{
  maxWidth: '560px',
  margin: '0 auto 2rem',
  position: 'relative',
  aspectRatio: '16/9',
  width: '100%'
}}>
  <iframe
    style={{
      position: 'absolute',
      top: 0,
      left: 0,
      width: '100%',
      height: '100%'
    }}
    src="https://www.youtube.com/embed/qUpC2XG-r5E?si=7Komyv4_PUQ4FaEH"
    title="YouTube video player"
    frameBorder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerPolicy="strict-origin-when-cross-origin"
    allowFullScreen
  />
</div>

</TabItem>

<TabItem value="products-in-stores" label="Продукты в сторах уже есть">

<div style={{
    maxWidth: '560px',
    margin: '0 auto 2rem',
    position: 'relative',
    aspectRatio: '16/9',
    width: '100%'
}}>
    <iframe
        style={{
            position: 'absolute',
            top: 0,
            left: 0,
            width: '100%',
            height: '100%'
        }}
        src="https://www.youtube.com/embed/nlkdKCF0SwY?si=VVigzHcpv3waKJmI"
        title="YouTube video player"
        frameBorder="0"
        allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
        referrerPolicy="strict-origin-when-cross-origin"
        allowFullScreen
    />
</div>

</TabItem>
</Tabs>

## Добавьте свой первый продукт \{#add-your-first-product\}

:::tip
В этом разделе описаны основные шаги для создания продукта. Подробнее — в гайде по [созданию продуктов](create-product).
:::

Допустим, вы хотите добавить ежемесячную подписку как продукт.

1. Перейдите в раздел [Products](https://app.adapty.io/products) в главном меню Adapty.
2. Нажмите **Create product** в правом верхнем углу.

    <img src={require('./img/products-tab.webp').default}
         style={{
             border: '1px solid #727272', /* border width and color */
             width: '700px', /* image width */
             display: 'block', /* for alignment */
             margin: '0 auto' /* center alignment */
         }}
    />

:::important
**Дальнейшие шаги зависят от того, есть ли у вас уже продукты в App Store и/или Google Play:**
:::

<Tabs groupId="products" queryString>

    <TabItem value="no-products" label="Продуктов в сторах ещё нет" default>

        :::important
        Перед началом убедитесь, что вы настроили интеграцию с [App Store](initial_ios) и/или [Google Play](initial-android). Для App Store — [добавьте API-ключ App Store Connect](app-store-connection-configuration#step-6-add-app-store-connect-api-key), чтобы Adapty мог публиковать продукты.
        :::

        3. Выберите **Create a new product and push to stores**.

        4. Заполните данные о продукте:
        - **Product name**: название продукта, которое видите только вы в дашборде Adapty.
        - **Access Level**: уникальный идентификатор, определяющий, какие функции открываются после покупки. Если все платные пользователи получают одинаковый доступ, можно использовать уровень доступа по умолчанию: `premium`. Для более сложных сценариев создайте дополнительные [уровни доступа](access-level).
        - **Subscription duration**: выберите длительность подписки из списка.
        - **Weekly/Monthly/2 Months/3 Months/6 Months/Annual**: длительность подписки.
        - **Lifetime**: используйте пожизненный период для продуктов, которые открывают премиум-функции навсегда.
        - **Non-Subscriptions**: для продуктов, которые не являются подписками и не имеют срока действия. Могут использоваться для дополнительных функций, расходуемых покупок и т. д.
        - **Consumables**: расходуемые покупки можно приобретать несколько раз и использовать в течение жизненного цикла приложения. Примеры: игровая валюта, дополнения. Учтите, что расходуемые покупки не влияют на уровни доступа.
        - **Price (USD)**: цена продукта в долларах США. Она будет использована как базовая для автоматического расчёта цен по всем странам. Позже вы сможете [настроить цены для разных стран и регионов](edit-product#set-country-specific-prices).

        
            <img src={require('./img/create-product-push.webp').default}
                 style={{
                     border: '1px solid #727272', /* border width and color */
                     width: '400px', /* image width */
                     display: 'block', /* for alignment */
                     margin: '0 auto' /* center alignment */
                 }}
            />
        

        5. Нажмите **Save & Continue** и перейдите на вкладку **App Store** или **Google Play**, чтобы заполнить данные о продукте для стора.

        <Tabs>
            <TabItem value="App Store" label="App Store" default>

                - **Product ID**: придумайте постоянный уникальный идентификатор продукта.
                - **Product group**: выберите существующую группу продуктов, созданную в App Store Connect, или нажмите **Create new Product Group** и укажите её название и ID. После того как Adapty её создаст, вы сможете выбрать её из выпадающего списка.
                - **Screenshot**: загрузите скриншот покупки в приложении, на котором чётко виден товар или услуга. Этот скриншот используется только для ревью App Store и не отображается в нём публично. Требования к размеру и формату скриншота — [здесь](https://developer.apple.com/help/app-store-connect/reference/app-information/screenshot-specifications/).

                :::warning
                Если это ваш первый продукт для данного приложения, его нужно вручную отправить на ревью в App Store Connect. В дальнейшем этого не потребуется. После завершения ревью статус продукта в Adapty обновится автоматически.
                :::

            </TabItem>

            <TabItem value="Google Play" label="Google Play" default>

                - **Base Product ID**: придумайте постоянный уникальный идентификатор продукта.
                - **Subscription**: выберите существующую группу подписок, созданную в Google Play Console, или нажмите **Create new Product Group** и укажите её название и ID. После того как Adapty её создаст, вы сможете выбрать её из выпадающего списка.

            </TabItem>
        </Tabs>

        6. Настройте introductory offer — бесплатный пробный период — выбрав его **Free duration** из выпадающего списка. На этом этапе можно добавить бесплатный пробный период. После того как основной продукт пройдёт ревью в сторе, вы сможете [добавить другие офферы](offers) (например, promotional или win-back), привязав их существующие ID из консоли стора.

    </TabItem>

    <TabItem value="products-in-stores" label="Продукты в сторах уже есть">

        3. Выберите **Connect an existing store product**.
        4. Заполните данные о продукте:
        - **Product name**: название продукта, которое видите только вы в дашборде Adapty.
        - **Access level ID**: уникальный идентификатор, определяющий, какие функции открываются после покупки. Если все платные пользователи получают одинаковый доступ, можно использовать уровень доступа по умолчанию: `premium`. Для более сложных сценариев создайте дополнительные [уровни доступа](access-level).
        - **Subscription duration**: выберите длительность подписки из списка.
        - **Weekly/Monthly/2 Months/3 Months/6 Months/Annual**: длительность подписки.
        - **Lifetime**: используйте пожизненный период для продуктов, которые открывают премиум-функции навсегда.
        - **Non-Subscriptions**: для продуктов, которые не являются подписками и не имеют срока действия. Могут использоваться для дополнительных функций, расходуемых покупок и т. д.
        - **Consumables**: расходуемые покупки можно приобретать несколько раз и использовать в течение жизненного цикла приложения. Примеры: игровая валюта, дополнения. Учтите, что расходуемые покупки не влияют на уровни доступа.
        - **Price (USD)**: цена продукта в долларах США. Если продукт уже есть в сторе, это значение не влияет на его реальную цену — можно выбрать любое из списка. Позже вы сможете [настроить цены для разных регионов](edit-product#set-country-specific-prices) прямо в дашборде Adapty.

        
            <img src={require('./img/product-info.webp').default}
                 style={{
                     border: '1px solid #727272', /* border width and color */
                     width: '700px', /* image width */
                     display: 'block', /* for alignment */
                     margin: '0 auto' /* center alignment */
                 }}
            />
        

        <br />

        5. Добавьте данные о сторе. Выберите свой стор:

        <Tabs>
            <TabItem value="App Store" label="App Store" default>

                - **App Store Product ID**: уникальный идентификатор для доступа к продукту на устройствах. Если вы не можете его найти, проверьте, что ID верный и принадлежит нужному приложению.

            </TabItem>

            <TabItem value="Google Play" label="Google Play" default>

                - **Google Play Product ID**: идентификатор продукта из Play Store. Выберите его из списка существующих ID. Если вы не можете его найти, проверьте, что ID верный и принадлежит нужному приложению.
                - **Base plan ID**: ID базового плана для продукта в Play Store.
                - **Legacy fallback product**: резервный продукт, используемый исключительно для приложений на старых версиях Adapty SDK (2.5 и ниже). Укажите значение в формате `<subscription_id>:<base_plan_id>`.

                <details>
                    <summary>Нажмите, чтобы узнать, где найти Google Play Product ID и Base plan ID.</summary>

                    1. Перейдите в раздел **Monetize with Play > Products > Subscriptions** в вашем аккаунте [Google Play Console](https://play.google.com/console/developers/android/app).
                    2. Откройте нужную **подписку**.
                    3. Product ID будет в разделе **Subscription details**, а Base plan ID — в столбце **ID and duration** раздела **Base plans and offers**.

                    
                        <img src={require('./img/play-store-id.png').default}
                             style={{
                                 border: '1px solid #727272', /* border width and color */
                                 width: '700px', /* image width */
                                 display: 'block', /* for alignment */
                                 margin: '0 auto' /* center alignment */
                             }}
                        />
                    

                </details>

            </TabItem>

            <TabItem value="Stripe" label="Stripe" default>

                - **Stripe Product ID**: уникальный идентификатор продукта в Stripe.
                - **Stripe Price ID**: уникальный идентификатор цены, связанной с продуктом, в Stripe.

                <details>
                    <summary>Нажмите, чтобы узнать, где найти Stripe Product ID и Price ID.</summary>

                    1. Перейдите в [Product Catalog](https://dashboard.stripe.com/products?active=true) в Stripe.
                    2. Откройте нужный продукт.
                    3. Вы увидите:
                    - Stripe Product ID (выглядит как `prod_...`) — в правом верхнем углу.
                    - Stripe Price ID (выглядит как `price_...`) — в столбце **API ID** раздела **Pricing**.

                    
                        <img src={require('./img/product-stripe.png').default}
                             style={{
                                 border: '1px solid #727272', /* border width and color */
                                 width: '700px', /* image width */
                                 display: 'block', /* for alignment */
                                 margin: '0 auto' /* center alignment */
                             }}
                        />
                    

                </details>

            </TabItem>

            <TabItem value="Paddle" label="Paddle" default>

                - **Paddle Product ID**: уникальный идентификатор продукта в Paddle.
                - **Paddle Price ID**: уникальный идентификатор цены, связанной с продуктом, в Paddle.

                <details>
                    <summary>Нажмите, чтобы узнать, где найти Paddle Product ID и Price ID.</summary>

                    1. Перейдите в [Product Catalog](https://vendors.paddle.com/products-v2) в Paddle.
                    2. Откройте нужный продукт.
                    3. Вы увидите:
                    - Paddle Product ID (выглядит как `pro_...`) — в разделе **Additional details**.
                    - Paddle Price ID (выглядит как `pri_...`) — в столбце **ID** раздела **Prices**.

                    
                        <img src={require('./img/paddle-product-price.webp').default}
                             style={{
                                 border: 'none', /* border width and color */
                                 width: '700px', /* image width */
                                 display: 'block', /* for alignment */
                                 margin: '0 auto' /* center alignment */
                             }}
                        />
                    

                </details>

            </TabItem>

            <TabItem value="Custom" label="Custom store" default>

                Вы можете выбрать существующий custom store или добавить новый и привязать к нему продукт.

Обратите внимание: Adapty отслеживает транзакции только из App Store, Google Play и Stripe. Для custom store транзакции нужно передавать через серверный API Adapty — метод [Set transaction](api-adapty/operations/setTransaction).

            </TabItem>

        </Tabs>

        6. При необходимости вы можете [создать офферы](create-offer) для продукта. Нажмите **Yes, add offers**, чтобы добавить их, или **No, thanks**, чтобы пропустить.

        Продукт появится в списке продуктов.

        
            <img src={require('./img/created-product.png').default}
                 style={{
                     border: '1px solid #727272', /* border width and color */
                     width: '700px', /* image width */
                     display: 'block', /* for alignment */
                     margin: '0 auto' /* center alignment */
                 }}
            />
        

    </TabItem>
</Tabs>

## Следующие шаги \{#next-steps\}

После того как вы добавили продукты в Adapty, можно переходить к [настройке пейволов](quickstart-paywalls) — это единственный способ начать их продавать.