---
title: "Añadir productos"
description: "Añade productos in-app o suscripciones a Adapty y vincúlalos con tus listados de App Store, Google Play, Stripe, Paddle o una tienda personalizada."
---

:::tip
¿Estás configurando Adapty de forma programática? Puedes completar este paso con la [CLI para desarrolladores](developer-cli-quickstart).
:::

Antes de usar las funciones principales de Adapty, necesitas añadir cada producto que vendes y vincularlo a cada store o plataforma de pago que utilices. Esta configuración te permite mostrar productos en los dispositivos de los usuarios y hacer seguimiento en analíticas más adelante.

En Adapty, cualquier cosa que venda tu app es un **producto**. Si el mismo artículo existe en el App Store, Google Play o Stripe, puedes agruparlos en un único producto en Adapty. Configúralo una vez y gestiona todo desde un solo lugar.

Vamos a añadir tu primer producto.

<Tabs groupId="products" queryString>

<TabItem value="no-products" label="No products in stores yet" 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="Products in stores already">

<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>

## Añade tu primer producto \{#add-your-first-product\}

:::tip
Esta guía de inicio rápido cubre lo básico para crear un producto. Para más detalles, consulta la guía sobre [cómo crear productos](create-product).
:::

Supongamos que quieres añadir una suscripción mensual como producto.

1. Ve a [Products](https://app.adapty.io/products) desde el menú principal de Adapty.
2. Haz clic en **Create product** en la parte superior derecha.

    <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
**Los siguientes pasos dependen de si ya tienes productos en el App Store y/o Google Play:**
:::

<Tabs groupId="products" queryString>

    <TabItem value="no-products" label="No products in stores yet" default>

        :::important
        Antes de empezar, asegúrate de haber configurado la integración con [App Store](initial_ios) y/o [Google Play](initial-android). Para el App Store, asegúrate de haber [añadido la clave de la API de App Store Connect](app-store-connection-configuration#step-6-add-app-store-connect-api-key) para que Adapty pueda enviar los productos.
        :::

        3. Selecciona **Create a new product and push to stores**.

        4. Añade los detalles del producto:
        - **Product name**: El nombre visible solo para ti en el Adapty Dashboard.
        - **Access Level**: El identificador único que determina qué funciones se desbloquean tras la compra. Si todos los usuarios de pago de tu app acceden a las mismas funciones, puedes usar el nivel de acceso predeterminado: `premium`. Para configuraciones más complejas, crea [niveles de acceso](access-level) adicionales.
        - **Subscription duration**: Selecciona la duración de la suscripción en la lista.
        - **Weekly/Monthly/2 Months/3 Months/6 Months/Annual**: La duración de la suscripción.
        - **Lifetime**: Usa el período de por vida para los productos que desbloquean las funciones premium de la app de forma permanente.
        - **Non-Subscriptions**: Para los productos que no son suscripciones y, por tanto, no tienen duración, usa non-subscriptions. Pueden usarse para desbloquear funciones adicionales, productos consumibles, etc.
        - **Consumables**: Los artículos consumibles se pueden comprar varias veces y se agotan durante el uso de la aplicación. Algunos ejemplos son la moneda del juego o extras. Ten en cuenta que los productos consumibles no afectan a los niveles de acceso.
        - **Price (USD)**: El precio del producto en USD. Este precio se usará como base para calcular y establecer automáticamente los precios en todos los países. Más adelante podrás [personalizar el precio para distintos países y regiones](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. Haz clic en **Save & Continue** y cambia a la pestaña **App Store** o **Google Play** para rellenar los detalles del producto en la store.

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

                - **Product ID**: Crea un ID único y permanente para el producto.
                - **Product group**: Selecciona un grupo de productos existente que hayas creado en App Store Connect, o haz clic en **Create new Product Group** y define su nombre e ID. Una vez que Adapty lo cree, podrás seleccionarlo en el desplegable.
                - **Screenshot**: Sube una captura de pantalla de la compra in-app que muestre claramente el artículo o servicio ofrecido. Esta captura se usa únicamente para la revisión del App Store y no se muestra en la tienda. Consulta los requisitos de tamaño y formato [aquí](https://developer.apple.com/help/app-store-connect/reference/app-information/screenshot-specifications/).

                :::warning
                Si es tu primer producto para esta app, debes enviarlo manualmente para revisión en App Store Connect. Esto no será necesario más adelante. Una vez finalizada la revisión, el estado del producto en Adapty se actualizará automáticamente.
                :::

            </TabItem>

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

                - **Base Product ID**: Crea un ID único y permanente para el producto.
                - **Subscription**: Selecciona un grupo de suscripciones existente que hayas creado en la Google Play Console, o haz clic en **Create new Product Group** y define su nombre e ID. Una vez que Adapty lo cree, podrás seleccionarlo en el desplegable.

            </TabItem>
        </Tabs>

        6. Configura la oferta introductoria (prueba gratuita) seleccionando su **Free duration** en el desplegable. En esta configuración inicial puedes añadir una prueba gratuita introductoria. Una vez que el producto principal sea aprobado por las stores, podrás [añadir más ofertas](offers) (por ejemplo, promocionales o de recuperación) vinculando sus IDs existentes desde la consola de tu store.

    </TabItem>

    <TabItem value="products-in-stores" label="Products in stores already">

        3. Selecciona **Connect an existing store product**.
        4. Añade los detalles del producto:
        - **Product name**: El nombre visible solo para ti en el Adapty Dashboard.
        - **Access level ID**: El identificador único que determina qué funciones se desbloquean tras la compra. Si todos los usuarios de pago de tu app acceden a las mismas funciones, puedes usar el nivel de acceso predeterminado: `premium`. Para configuraciones más complejas, crea [niveles de acceso](access-level) adicionales.
        - **Subscription duration**: Selecciona la duración de la suscripción en la lista.
        - **Weekly/Monthly/2 Months/3 Months/6 Months/Annual**: La duración de la suscripción.
        - **Lifetime**: Usa el período de por vida para los productos que desbloquean las funciones premium de la app de forma permanente.
        - **Non-Subscriptions**: Para los productos que no son suscripciones y, por tanto, no tienen duración, usa non-subscriptions. Pueden usarse para desbloquear funciones adicionales, productos consumibles, etc.
        - **Consumables**: Los artículos consumibles se pueden comprar varias veces y se agotan durante el uso de la aplicación. Algunos ejemplos son la moneda del juego o extras. Ten en cuenta que los productos consumibles no afectan a los niveles de acceso.
        - **Price (USD)**: El precio del producto en USD. Si tu producto ya está en la store, este valor no afectará a su precio real; puedes seleccionar cualquier valor de la lista. Más adelante podrás [personalizar los precios para distintas regiones](edit-product#set-country-specific-prices) directamente en el Adapty Dashboard.

        
            <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. Añade los detalles de la store. Elige tu store:

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

                - **App Store Product ID**: El identificador único que se usa para acceder a tu producto en los dispositivos. Si no lo encuentras, comprueba que el ID sea correcto y que pertenezca a la app correcta.

            </TabItem>

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

                - **Google Play Product ID**: El identificador del producto en la Play Store. Selecciónalo en la lista de IDs de productos existentes. Si no lo encuentras, comprueba que el ID sea correcto y que pertenezca a la app correcta.
                - **Base plan ID**: El ID que define el plan base del producto en la Play Store.
                - **Legacy fallback product**: Un producto de respaldo que se usa exclusivamente para apps con versiones antiguas del SDK de Adapty (versión 2.5 e inferiores). Especifica el valor con el siguiente formato: `<subscription_id>:<base_plan_id>`.

                <details>
                    <summary>Haz clic aquí para saber dónde encontrar el Product ID y el Base plan ID de Google Play.</summary>

                    1. Ve a **Monetize with Play > Products > Subscriptions** en tu cuenta de [Google Play Console](https://play.google.com/console/developers/android/app).
                    2. Abre la **Subscription** correspondiente a la compra.
                    3. Verás el Product ID en la sección **Subscription details** y el Base plan ID en la columna **ID and duration** de la sección **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**: El identificador único del producto en Stripe.
                - **Stripe Price ID**: El identificador único en Stripe para el precio asociado al producto.

                <details>
                    <summary>Haz clic aquí para saber dónde encontrar el Product ID y el Price ID de Stripe.</summary>

                    1. Ve a tu [Catálogo de productos](https://dashboard.stripe.com/products?active=true) en Stripe.
                    2. Abre el producto que necesites.
                    3. Verás:
                    - El Stripe Product ID (con formato `prod_...`) en la esquina superior derecha.
                    - El Stripe Price ID (con formato `price_...`) en la columna **API ID** de la sección **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**: El identificador único del producto en Paddle.
                - **Paddle Price ID**: El identificador único en Paddle para el precio asociado al producto.

                <details>
                    <summary>Haz clic aquí para saber dónde encontrar el Product ID y el Price ID de Paddle.</summary>

                    1. Ve a tu [Catálogo de productos](https://vendors.paddle.com/products-v2) en Paddle.
                    2. Abre el producto que necesites.
                    3. Verás:
                    - El Paddle Product ID (con formato `pro_...`) en la sección **Additional details**.
                    - El Paddle Price ID (con formato `pri_...`) en la columna **ID** de la sección **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>

                Puedes seleccionar una store personalizada existente o añadir una nueva y asociarle un producto.

Ten en cuenta que Adapty solo hace seguimiento de las transacciones del App Store, Google Play y Stripe. Para stores personalizadas, deberás enviar las transacciones usando el método [Set transaction](api-adapty/operations/setTransaction) de la API de servidor de Adapty.

            </TabItem>

        </Tabs>

        6. Si lo necesitas, puedes [crear ofertas](create-offer) para el producto. Para añadir ofertas, haz clic en **Yes, add offers**. Si no, haz clic en **No, thanks**.

        Tu producto aparecerá en la lista de productos.

        
            <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>

## Próximos pasos \{#next-steps\}

Una vez que hayas añadido tus productos a Adapty, puedes pasar a [configurar paywalls](quickstart-paywalls), ya que es la única manera de empezar a venderlos.