---
title: "Paso 3. Habilitar la compra"
description: "Aprende a realizar compras usando el sistema de Feature Flags de Adapty."
---

¡Enhorabuena! Ya has [configurado tu paywall para mostrar datos de productos de Adapty](ff-add-variables-to-paywalls), incluyendo el título y el precio del producto.

Ahora vamos al paso final: permitir que los usuarios realicen una compra a través del paywall.

## Paso 3.1. Permitir que los usuarios realicen compras \{#step-31-enable-users-to-make-purchases\}

1. Haz doble clic en el botón de compra de tu página del paywall. En el panel derecho, abre la sección **Actions** si no está ya abierta.

2. Abre el **Action Flow Editor**.

  <img src="/assets/shared/img/ff-action-flow-editor.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

3. En la ventana **Select Action Trigger**, elige **On Tap**.
4. En la ventana **No Actions Created**, haz clic en **Add Action**. Busca la acción `makePurchase` y selecciónala.

  <img src="/assets/shared/img/ff-makepurchase.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

5. En la sección **Set Actions Arguments**, selecciona la variable `getPaywallProductsResult` creada anteriormente.
6. Rellena los campos de la siguiente manera:
	- **Available Options**: Data Structure Field
    - **Select Field**: value
    - **Available Options**: Item at Index
    - **List Index Options**: First

  <img src="/assets/shared/img/ff-makepurchase-value.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

7. Haz clic en `subscriptionUpdateParameters`, busca `AdaptySubscriptionUpdateParameters` y selecciónalo. Haz clic en **Confirm**.
    :::info
    Por defecto, puedes dejar todos los campos del objeto vacíos. Necesitarás rellenarlos para reemplazar una suscripción por otra en apps de Android. Lee más [aquí](https://android.adapty.io/adapty/com.adapty.models/-adapty-subscription-update-parameters/).
    :::
   
   <img src="/assets/shared/img/ff-subupdate.webp"
   style={{
   border: '1px solid #727272', /* border width and color */
   width: '700px', /* image width */
   display: 'block', /* for alignment */
   margin: '0 auto' /* center alignment */
   }}
   />
   
8. Haz clic en **Confirm**. 
9. En **Action Output Variable Name**, crea una nueva variable y nómbrala `makePurchaseResult`; se usará más adelante para confirmar que la compra fue exitosa.

  <img src="/assets/shared/img/ff-makepurchaseresult.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

## Paso 3.2. Comprobar si la compra fue exitosa \{#step-32-check-if-the-purchase-was-successful\}

Ahora configuremos una comprobación para ver si la compra se realizó correctamente.

1. Haz clic en **+** y luego en **Add Conditional**.
2. En **Set Condition for Action**, selecciona la variable `makePurchaseResult`.
3. En la ventana **Set Variable**, rellena los campos de la siguiente manera:
    - **Available Options**: Has Field
    - **Select Field**: profile

  <img src="/assets/shared/img/ff-makepurchaseresult-conditional.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

4. Haz clic en **Confirm**.

## Paso 3.3. Abrir el contenido de pago \{#step-33-open-paid-content\}

Si la compra es exitosa, puedes desbloquear el contenido de pago. Aquí te explicamos cómo configurarlo:

1. Haz clic en **+** bajo la etiqueta **TRUE** y haz clic en **Add Action**.
2. En el campo **Define Action**, busca y selecciona la página que quieres abrir en la lista **Navigate To**. En este ejemplo, la página es **Questions**.

  <img src="/assets/shared/img/ff-questions.webp"
  style={{
    border: '1px solid #727272', /* border width and color */
    width: '700px', /* image width */
    display: 'block', /* for alignment */
    margin: '0 auto' /* center alignment */
  }}
/>

## Paso 3.4. Mostrar un mensaje de error si la compra falla \{#step-34-show-error-message-if-purchase-failed\}

Si la compra falla, vamos a mostrar una alerta al usuario.

1. Añade una acción **Informational Dialog** a la etiqueta **FALSE**.
2. En el campo **Title**, introduce el texto que quieras para el título del diálogo, como **Purchase Failed**.
 
    <img src="/assets/shared/img/ff-purchase-fail.webp"
    style={{
      border: '1px solid #727272', /* border width and color */
      width: '700px', /* image width */
      display: 'block', /* for alignment */
      margin: '0 auto' /* center alignment */
    }}
  />
  

3. Haz clic en **Value** en el cuadro **Message**. En la ventana **Set from Variable**, busca `makePurchaseResult` y selecciónalo. Rellena los campos de la siguiente manera:
    
   - **Available Options**: Data Structure Field
   - **Select Field**: error
   - **Available Options**: Data Structure Field
   - **Select Field**: errorMessage
      
   
      <img src="/assets/shared/img/ff-fail-message.webp"
      style={{
      border: '1px solid #727272', /* border width and color */
      width: '700px', /* image width */
      display: 'block', /* for alignment */
      margin: '0 auto' /* center alignment */
      }}
      />
      

4. Haz clic en **Confirm**.
5. Añade una acción **Terminate** al flujo **FALSE**.

  
    <img src="/assets/shared/img/ff-terminate-purchase.webp"
    style={{
      border: '1px solid #727272', /* border width and color */
      width: '700px', /* image width */
      display: 'block', /* for alignment */
      margin: '0 auto' /* center alignment */
    }}
  />
  

6. Por último, haz clic en **Close** en la esquina superior derecha.

¡Enhorabuena! Tus usuarios ya pueden comprar tus productos. Como paso adicional, vamos a [configurar una comprobación del acceso del usuario al contenido de pago](ff-check-subscription-status) en otros puntos de la app para decidir si mostrarles el contenido de pago o el paywall.