# Offer codes en App Store Connect: crear un código promo

> Desde marzo de 2026, los offer codes reemplazan los códigos promocionales de compras integradas: únicos o personalizados, por enlace o en la app.

Página original: [Offer codes en App Store Connect: crear un código promo](https://devoria.fr/es/blog/offer-codes-app-store-connect-codigo-promo)
Autor: [Mehdi Azizi](https://devoria.fr/es/mehdi-azizi)
Publicación: 2026-11-04
Última revisión del contenido: 2026-11-04


En App Store Connect, un código promocional para una suscripción o una compra integrada ahora se llama código de oferta, u offer code. **Desde el 26 de marzo de 2026, Apple ya no permite crear códigos promocionales para las compras integradas**: solo sirven para regalar la descarga de una app de pago. Creas una oferta en tu producto y luego códigos únicos o un código personalizado. La persona lo canjea con un enlace, en el App Store o directamente en tu app.

Mis apps son gratuitas para descargar y venden suscripciones: los códigos promocionales de app no me aportan nada. Por eso, en el código de TradaZen, el programa de referidos recompensa con un código de oferta, y la propia app abre el canje del código. Aquí tienes lo que cambió, la tabla de ofertas de Apple, cómo crear los códigos, cómo se canjean y lo que prohíbe la regla 3.1.1.

## Códigos promocionales y códigos de oferta: lo que cambió en 2026

Apple lo anunció el 29 de octubre de 2025 en sus [noticias para desarrolladores](https://developer.apple.com/news/?id=gf6mgrs6): los códigos de oferta ahora cubren todas las compras integradas. Los consumibles, los no consumibles y las suscripciones no renovables se suman a las suscripciones de renovación automática. Como consecuencia, desde el 26 de marzo de 2026 ya no puedes crear códigos promocionales para una compra integrada. Los que se crearon antes siguen funcionando hasta que caduquen.

Los códigos promocionales de app, en cambio, siguen existiendo. Según la [ayuda de App Store Connect](https://developer.apple.com/help/app-store-connect/offer-promo-codes/request-and-manage-promo-codes/), dan una copia gratuita de una app de pago. Cada código se usa una sola vez y es válido durante cuatro semanas. Puedes pedir hasta 100 por versión y por plataforma, desde Promo Codes en la barra lateral de tu app. Quien lo usa no puede calificar ni reseñar la app.

**Para una app gratuita que vende una suscripción, el código promocional de app no regala nada**: lo que hay que regalar es la suscripción, con un código de oferta.

## Las ofertas de Apple: para quién y cómo se obtienen

Estas son las ofertas de Apple relacionadas con una suscripción, más el código promocional de app, en la tabla que tengo siempre a mano para elegir:

| Tipo de oferta            | Para quién                       | Cómo se obtiene               |
| ------------------------- | -------------------------------- | ----------------------------- |
| Oferta introductoria      | Nuevos suscriptores del grupo    | Automática al comprar         |
| Código de oferta único    | Una persona concreta             | Enlace, App Store o app       |
| Código personalizado      | Una campaña, un público          | Enlace o ingreso en la app    |
| Oferta promocional        | Suscriptores actuales o antiguos | La propone tu app             |
| Oferta de recuperación    | Antiguos suscriptores            | Configuración, App Store, app |
| Código promocional de app | Solo apps de pago                | Ingreso en el App Store       |

**Los códigos de oferta están pensados para que tú los distribuyas fuera de la app**: por correo, en tu sitio web, en un evento, a un creador de contenido. Las demás ofertas se muestran sobre todo solas o dentro de tu app, según las reglas que definas. La oferta introductoria, la de la prueba gratuita, tiene su propia guía: [introductory offer y prueba gratuita](https://devoria.fr/es/blog/oferta-introductoria-app-store-connect-prueba-gratis-ios).

## Crear códigos de oferta para una suscripción

El procedimiento de la [ayuda sobre los códigos de oferta de suscripción](https://developer.apple.com/help/app-store-connect/manage-subscriptions/set-up-subscription-offer-codes/) tiene dos pasos: la oferta y luego los códigos. Las etiquetas son las de la ayuda de Apple.

**1. La oferta.** En Subscriptions, abre el grupo y luego la suscripción. En Subscription Prices, haz clic en el botón de más y después en Create Offer Codes. Luego:

- ponle un nombre de referencia, que verás en tus informes de ventas;
- elige si la suscripción se renueva al terminar la oferta; sin renovación, solo es posible una oferta gratuita;
- marca quién es elegible: nuevos suscriptores, suscriptores actuales, antiguos suscriptores del grupo;
- si la suscripción tiene una oferta introductoria, elige si la persona la aprovecha primero, antes de la oferta del código, o solo la del código;
- elige los países y luego gratis, pago por adelantado o pago por periodo, con la duración y el precio.

Una oferta creada ya no se puede modificar. Para cambiar la elegibilidad, crea una oferta nueva.

**2. Los códigos.** Hay dos tipos, que se generan desde la página de la oferta:

- **Los códigos únicos**: un código por persona, creados en lotes de 500 a 25 000. Caducan como máximo seis meses después de su creación. Descargas un archivo con los códigos y sus enlaces.
- **Los códigos personalizados**: una palabra que tú eliges, de hasta 64 caracteres sin caracteres especiales, por ejemplo REGRESO (ejemplo ficticio). Defines cuántas personas pueden usarlo, hasta 25 000 por lote, y una fecha de fin opcional.

Los límites comunes: un millón de códigos por app y por trimestre, diez ofertas activas por suscripción, un código por oferta y por persona. Un código puede tardar hasta una hora en estar disponible. Y sobre todo, **tu app tiene que estar a la venta para que los códigos se puedan canjear**: no puedes regalar una suscripción antes del lanzamiento.

Para hacer pruebas, Apple ofrece códigos sandbox, de 10 a 10 000 por lote, que se canjean desde la configuración de la cuenta sandbox en iOS 16.3 o posterior.

## Códigos de oferta para una compra única o créditos

La página sobre los [códigos de oferta de las compras integradas](https://developer.apple.com/help/app-store-connect/manage-in-app-purchases/create-offer-codes-for-in-app-purchases/) sigue la misma lógica. En In-App Purchases, abre la compra y luego Create Offer en la sección Offer Codes. La elegibilidad se basa en el historial de compras en tu app: nunca compró, compró en los últimos 30 días o hace más de 30 días. La oferta puede ser gratuita o de pago.

Para generar los códigos, la app tiene que estar a la venta y la compra, aprobada. Una app puede tener como máximo diez ofertas activas a la vez. El canje dentro de la app requiere iOS 16.3 o posterior.

## Cómo canjea el usuario un código

La [documentación de StoreKit](https://developer.apple.com/documentation/storekit/supporting-offer-codes-in-your-app) describe tres caminos:

1. **El enlace de canje.** App Store Connect da un enlace de ejemplo en la página de la oferta, al que le agregas el código. Si la app no está instalada, primero se invita a la persona a descargarla.
2. **El App Store.** El código único se ingresa en la página Redeem Gift Card or Code de la cuenta. El código personalizado, en cambio, pasa por el enlace o por tu app.
3. **Tu app.** En Swift, es `offerCodeRedemption` con SwiftUI o `presentOfferCodeRedeemSheet` con UIKit. Con RevenueCat en una app de Expo, es `presentCodeRedemptionSheet`.

La [documentación de RevenueCat](https://www.revenuecat.com/docs/subscription-guidance/subscription-offers/ios-subscription-offers) da el formato del enlace: `https://apps.apple.com/redeem?ctx=offercodes&id={apple_app_id}&code={code}`. También advierte que la hoja de canje de Apple ha sido muy inestable desde su lanzamiento, y propone el enlace como respaldo. Este es el principio, en TypeScript:

```ts
import { Linking } from "react-native";
import Purchases from "react-native-purchases";

const PAGE_ECHANGE = "https://apps.apple.com/redeem";

export async function echangerUnCode(): Promise<void> {
  try {
    await Purchases.presentCodeRedemptionSheet();
  } catch {
    await Linking.openURL(PAGE_ECHANGE); // respaldo si la hoja falla
  }
}
```

La hoja no devuelve ningún resultado. El acceso llega después, como tras una compra, por el listener `addCustomerInfoUpdateListener` que tu app ya tiene. Para que RevenueCat contabilice bien los ingresos de estos códigos, necesita tu clave de In-App Purchase.

Es el montaje que preparé en el código de TradaZen. Para usar una recompensa de referido, la app abre el enlace con el código ya incluido: es más fiable que la hoja, donde habría que copiar el código. Para ingresar un código recibido, abre la hoja nativa, y la página de canje del App Store como respaldo. **Un código que la persona no sabe dónde ingresar no sirve de nada**: la página de la cuenta del App Store está escondida y nada la señala. Un botón «Tengo un código» en tu app lo resuelve.

## Ofertas promocionales y de recuperación, en resumen

Estas dos ofertas no usan códigos que tú distribuyes, pero responden a la misma necesidad: recuperar o retener a un suscriptor.

**La oferta promocional** está dirigida a suscriptores actuales o antiguos. Tú decides en tu app cuándo mostrarla, por ejemplo a alguien que está a punto de cancelar. Según la [ayuda sobre las ofertas promocionales](https://developer.apple.com/help/app-store-connect/manage-subscriptions/set-up-promotional-offers-for-auto-renewable-subscriptions/), puedes tener diez activas por suscripción. Se aplican en todos los países de la suscripción, y la persona tiene derecho a ella aunque ya haya tenido una oferta introductoria. Necesitas una clave de In-App Purchase para firmar la oferta.

**La oferta de recuperación**, o win-back, está dirigida a antiguos suscriptores. La [ayuda sobre las ofertas de recuperación](https://developer.apple.com/help/app-store-connect/manage-subscriptions/set-up-win-back-offers/) detalla los criterios: duración mínima de suscripción pagada, tiempo transcurrido desde el final, espera entre dos ofertas. Apple la muestra por su cuenta en la página de gestión de suscripciones, y en tu app en iOS 18 o posterior. También genera un enlace para compartir, que solo debes enviar a personas elegibles. Para que aparezca en el App Store, hay que promocionarla con una imagen de suscripción aprobada, que no reutilice ni tu ícono ni tus capturas. Hablo de esto en la guía sobre [la imagen promocional de una suscripción](https://devoria.fr/es/blog/guideline-2-3-2-imagen-promocional-suscripcion-rechazada).

## Lo que prohíbe la regla 3.1.1

La [guideline 3.1.1](https://developer.apple.com/app-store/review/guidelines/#3.1.1) exige la compra integrada para desbloquear una función o un contenido. Prohíbe los mecanismos propios, como las claves de licencia o los códigos QR. **Un código inventado por ti, ingresado en un campo de tu app para desbloquear el premium, te expone a un rechazo por la 3.1.1**, aunque sea gratis. Los códigos de oferta de Apple, en cambio, pasan por la compra integrada. La regla completa está en mi guía sobre la [guideline 3.1.1](https://devoria.fr/es/blog/guideline-3-1-1-compra-in-app-obligatoria).

Otro punto, para los referidos: la [guideline 5.1.2](https://developer.apple.com/app-store/review/guidelines/#5.1.2) prohíbe exigir que se activen las notificaciones, la ubicación o el rastreo para recibir una recompensa, códigos incluidos. Así que una recompensa no puede depender de esos permisos. El detalle está en la guía sobre la [guideline 5.1.2](https://devoria.fr/es/blog/guideline-5-1-2-ia-terceros-att-datos-compartidos).

## Regalar tu suscripción sin equivocarte de herramienta

Antes del lanzamiento, para que prueben la app gratis, usa [TestFlight](https://devoria.fr/es/blog/testflight-probar-app-iphone-antes-de-enviarla): ahí las compras pasan por el entorno de pruebas, sin cobro. Después del lanzamiento, usa los códigos de oferta. El montaje de la suscripción en sí está en [RevenueCat para una suscripción en iOS](https://devoria.fr/es/blog/revenuecat-suscripcion-in-app-ios).

El [iOS & Android Kit](https://devoria.fr/es/kits/ios) parte del código base de mis apps: onboarding, paywall y suscripciones ya están programados, y su tercera etapa, «conectar el dinero», te guía para configurarlos. Toda la cadena está en la página [suscripción in-app en iOS](https://devoria.fr/es/expertise/suscripcion-in-app-ios). Si estás preparando tu primer lanzamiento, [haz tu diagnóstico gratuito](https://devoria.fr/es/diagnostic): pone los pasos en orden y te envía mi checklist contra los rechazos de Apple.

## Preguntas frecuentes

### ¿Cómo generar un código promocional en App Store Connect?

Para una app de pago, abre Promo Codes en la barra lateral de la app: hasta 100 códigos por versión, válidos durante cuatro semanas. Para una suscripción o una compra integrada, crea una oferta en el producto, con Create Offer Codes o Create Offer, y luego genera códigos únicos o un código personalizado.

### ¿Qué diferencia hay entre un código promocional y un código de oferta?

El código promocional regala la descarga de una app de pago. El código de oferta da una suscripción o una compra integrada, gratis o con descuento, durante el tiempo que elijas. Desde el 26 de marzo de 2026, solo se puede crear un código de oferta para una compra integrada.

### ¿Cuántos códigos de oferta se pueden crear?

Hasta un millón por app y por trimestre, sumando todos los productos. Los códigos únicos se crean en lotes de 500 a 25 000, y un código personalizado acepta hasta 25 000 usos por lote. Una suscripción tiene como máximo diez ofertas activas a la vez.

### ¿Se puede usar un código de oferta antes del lanzamiento de la app?

No: la app tiene que estar a la venta para que los códigos se puedan canjear. Antes del lanzamiento, usa TestFlight para tus testers y los códigos sandbox para probar el canje en tu app.

### ¿Un suscriptor actual puede usar un código de oferta?

Sí, si marcaste a los suscriptores actuales en la elegibilidad de la oferta. La [página de Apple sobre las suscripciones](https://developer.apple.com/app-store/subscriptions/) aclara que solo puede canjear un código del mismo nivel que su suscripción o superior.

### ¿Dónde ingresa el usuario un código de oferta?

Con el enlace de canje, en la página Redeem Gift Card or Code de su cuenta del App Store si es un código único, o en tu app si agregaste la hoja de canje. El código personalizado pasa por el enlace o por la app.


## Tu proyecto

[iOS & Android Kit](https://devoria.fr/es/kits/ios): Crea tu app para iPhone y Android con Claude Code: el código base de mis apps, el camino hasta las tiendas y todos los kits. 99 €.

[Diagnóstico: lo que te separa de tu app para iPhone](https://devoria.fr/es/diagnostic): 7 preguntas, 60 segundos: descubre qué te frena de verdad para publicar tu app para iPhone, tu ruta en 4 etapas y el kit ideal para ti.
