---
title: "¿Qué significa “Restaurar compra”?"
description: "Descubre qué significa \"Restaurar compra\", cómo funciona en iOS y Android, y por qué es fundamental para las aplicaciones de suscripción."
url: "https://adapty.io/es/blog/que-significa-restaurar-compra/"
language: "es"
slug: "que-significa-restaurar-compra"
category: "adapty-updates"
date: "2025-12-05T08:57:09.000Z"
date_modified: "2026-03-10T14:05:54.000Z"
author: "Victoria Kharlan"
---

# ¿Qué significa “Restaurar compra”?

Imagina esto: un usuario compra una suscripción, cambia de dispositivo, reinstala tu app y de repente pierde el acceso. Es una forma fácil de perder la confianza.

Por eso existe la opción «**Restaurar compra»**. Puede parecer un botón opcional, pero es imprescindible, especialmente para las aplicaciones basadas en suscripción.

Esta opción permite a los usuarios recuperar el acceso al contenido adquirido anteriormente sin tener que volver a pagar.  
Se trata de un pequeño botón con un gran papel en la confianza, el cumplimiento normativo y la retención de usuarios.

## Por qué es importante

- **Confianza del usuario**: si alguien ha pagado una vez, espera mantener el acceso, independientemente del dispositivo.
- **Carga de soporte**: lógica de restauración confusa o inexistente = usuarios enfadados + más tickets.
- **Cumplimiento de las normas de la App Store**: tanto Apple como Google esperan que incluyas una opción de restauración para determinados tipos de productos.

## Qué compras se pueden restaurar

**Las compras restaurables incluyen**:

- **No consumibles**: Compras únicas, como acceso de por vida o funciones premium.
- **Suscripciones renovables automáticamente**: planes mensuales/anuales que se sincronizan entre dispositivos.
- **Suscripciones no renovables**: Acceso por un período determinado (por ejemplo, un pase de 3 meses).

**No restaurable**:

- **Consumibles** como monedas, vidas extra o potenciadores de un solo uso. Están pensados para agotarse.

## Cómo funciona el botón "Restaurar compra"

1. **UI/UX.** Añadir un botón **«Restaurar compra»**, normalmente en la configuración o directamente en el muro de pago.
2. **Activador.** Al pulsar, activa una restauración mediante:

- **SKPaymentQueue.restoreCompletedTransactions()** para iOS
- **BillingClient.queryPurchaseHistoryAsync()** para Android
- O tu lógica de backend si gestionas los derechos en el lado del servidor

3. **Actualizar acceso.** Una vez completada la restauración, actualice el estado de suscripción del usuario y desbloquee el contenido.
4. **Añade un texto útil.** Una simple línea ayuda a reducir la confusión: *«Úsalo si has cambiado de dispositivo o has reinstalado la aplicación».* *
5. **Evita la redundancia.** Si el usuario ya tiene acceso, desactiva el botón o ocúltalo por completo.
6. **Lógica de la cuenta.** Para aplicaciones con inicio de sesión: vincule las suscripciones a las cuentas de usuario y sincronícelas a través del backend para simplificar la restauración entre dispositivos.

## Cómo funciona la restauración de compras en iOS

En iOS, restaurar compras actualiza el recibo de la app y vuelve a entregar los productos vinculados al Apple ID del usuario. El proceso se ejecuta silenciosamente en segundo plano, y la experiencia debe resultar simple y clara.

Así es como hacerlo usando StoreKit nativo (anterior a StoreKit 2):

### 1. Inicia el proceso de restauración

Llame a `restoreCompletedTransactions()` para activar el flujo de restauración:

```swift
SKPaymentQueue.default().restoreCompletedTransactions()
```

Esto le indica a StoreKit que busque cualquier compra anterior vinculada al Apple ID actual.

### 2. Gestiona las transacciones restauradas

Escucha la cola de pagos y comprueba los estados de transacción `.restored`. A continuación, desbloquea el contenido y marca la transacción como finalizada:

```swift
func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
    for transaction in transactions {
        if transaction.transactionState == .restored {
            // Unlock access based on restored product
            unlockContent(transaction: transaction)
            SKPaymentQueue.default().finishTransaction(transaction)
        }
    }
}
```

No olvides llamar a `finishTransaction(_:)`. De lo contrario, StoreKit podría seguir reintentando la misma transacción.

### 3. Gestiona los errores de forma adecuada

La restauración puede fallar debido a recibos inválidos, problemas de red o si el Apple ID no tiene compras elegibles. Muestra un mensaje claro al usuario y registra el error para la depuración.

¿Utiliza **Adapty SDK**? Nosotros nos encargamos de todo esto, incluida la validación de recibos y los casos extremos, con una sola llamada al método.

## Cómo funciona la restauración de compras en Android

En Android, restaurar compras significa verificar el historial de compras del usuario a través de Google Play y reactivar cualquier producto no consumible o suscripción activa. No existe un botón "restaurar" integrado como en iOS. Esto significa que debes gestionarlo manualmente a través de la billing API.

Así es como hacerlo usando la Google Play Billing Library:

### 1. Consultar el historial de compras

Utilice `queryPurchaseHistoryAsync()` para recuperar las compras anteriores del usuario:

```swift
billingClient.queryPurchaseHistoryAsync(
    BillingClient.SkuType.SUBS
) { billingResult, purchaseHistoryList ->
    if (billingResult.responseCode == BillingClient.BillingResponseCode.OK && purchaseHistoryList != null) {
        for (purchase in purchaseHistoryList) {
            // Restore subscription access
            restoreEntitlement(purchase)
        }
    }
}
```

También puede consultar las compras dentro de la aplicación pasando `BillingClient.SkuType.INAPP`.

### 2. Valida y desbloquea

Después de obtener el historial de compras, valida los recibos (idealmente del lado del servidor) y otorga el acceso correspondiente. Asegúrate de verificar los datos de firma para prevenir el spoofing.

Adapty se encarga de la validación de compras, la lógica de acceso del usuario y la sincronización multiplataforma de forma nativa.

### 3. Consideraciones de UX

Dado que los usuarios de Android no esperan un botón "Restaurar compras", puedes:

- Activar la restauración automáticamente al iniciar sesión o al abrir la aplicación
- O bien ofrecer una opción discreta en Ajustes para mayor transparencia

En cualquier caso, asegúrate de que la lógica de restauración se ejecute silenciosamente en segundo plano y actualice la interfaz cuando se restaure el acceso.

## Reflexiones finales

El botón "Restaurar compra" puede parecer simple, pero desempeña un papel fundamental en el recorrido de suscripción.

- Genera confianza.
- Reduce la tasa de abandono.
- Te mantiene en cumplimiento normativo.

Hazlo visible. Haz que funcione. Y haz que sea fácil de entender.

## FAQ

### ¿Necesito mostrar el botón "Restaurar compra" aunque use inicio de sesión?

Si tu aplicación utiliza el inicio de sesión como única forma de acceder a las compras, es posible que el botón no sea técnicamente necesario. Sin embargo, Apple lo recomienda, ya que ayuda a reducir las solicitudes de asistencia.

### ¿La restauración genera un reembolso?

No. Solo reactiva compras válidas realizadas anteriormente; no implica ningún cargo.

### ¿Debo ejecutar "Restaurar compra" automáticamente en cada inicio de la app?

No. Normalmente lo activa manualmente el usuario. Pero si utilizas Adapty o tu propio backend, puedes sincronizar las compras de forma silenciosa al iniciar la aplicación para garantizar que el acceso esté siempre actualizado.

### ¿Funciona la restauración de compras sin iniciar sesión?

En iOS, sí, si se utiliza el mismo ID de Apple. En Android, se recomienda iniciar sesión para vincular las compras a una cuenta de usuario permanente.

### ¿Pueden los usuarios restaurar compras si cambian su Apple ID o cuenta de Google?

No. La opción «Restaurar compra» solo funciona para la cuenta que realizó la compra originalmente.

### ¿Cómo funciona "Restaurar compra" con Family Sharing?

En iOS, si el producto es compatible con Compartir en familia y está habilitado, cualquier miembro de la familia puede restaurar la compra. El comportamiento depende de la configuración de App Store y del tipo de producto.

### ¿Qué sucede si "Restaurar compra" no encuentra ninguna compra?

Muestra un mensaje amigable como: «No se han encontrado compras anteriores en tu cuenta». Esto evita confusiones y confirma que el proceso se ha ejecutado según lo previsto.
