Ir al contenido

Crear Oferta de Suscripción iOS Introductoria

Las ofertas iniciales permiten a los usuarios elegibles obtener pruebas gratuitas o precios de inicio descuentados para reducir barreras de entrada y aumentar las conversiones de suscripción.

Las ofertas iniciales son una de las herramientas más efectivas para crecer tu base de suscriptores. Permiten a los usuarios:

  • Probar tus características premium sin riesgos
  • Experimentar valor antes de comprometerse
  • Iniciar desde un punto de precio más bajo
  • Construir confianza en tu producto

iOS admite tres tipos de ofertas iniciales:

Los clientes tienen acceso gratuito durante un período determinado. Después de la prueba, se les cobrará el precio estándar si no cancelan.

Ejemplos:

  • 7 días gratuitos
  • 14 días gratuitos
  • 1 mes gratuito

Mejor para:

  • Suscripciones de alto valor
  • Aplicaciones ricas en características
  • Crear un hábito de usuario

Los clientes pagan un precio descuento único que cubre el período de introducción.

Ejemplos:

  • $1.99 por 2 meses (luego $9.99/mes)
  • $9.99 por 3 meses (luego $19.99/mes)

Mejor para:

  • Señales de compromiso
  • Necesidades de flujo de efectivo
  • Prueba de sensibilidad de precio

Los clientes pagan un precio reducido por ciclos de facturación múltiples.

Ejemplos:

  • $1.99/mes por 3 meses (luego $9.99/mes)
  • $4.99/mes durante 6 meses (luego $14.99/mes)

Lo mejor para:

  • Compromiso gradual
  • Demostración de valor a largo plazo
  • Reducción del riesgo percibido

Los usuarios solo pueden recibir ofertas introductorias si:

  • No han recibido anteriormente una oferta introductoria para el producto
  • No han recibido una oferta introductoria para ningún producto en el mismo grupo de suscripción
  • No han tenido una suscripción activa al producto

Debes crear primero una suscripción renovable automática antes de agregar una oferta de introducción.

  1. Navegue a Suscripciones

    En App Store Connect, vaya a la sección Monetizar > Suscripciones de su aplicación sección y seleccione la suscripción a la que quiere agregar una oferta.

  2. Precio de Suscripción

    Haga clic en el + ícono junto a “Precios de Suscripción” para abrir el modal de precios.

  3. Crear Oferta Inicial

    Seleccione “Crear oferta inicial” de las opciones.

    Crear oferta inicial

  4. Configurar Países y Fecha de Inicio

    Países y Regiones: Seleccione dónde estará disponible la oferta

    • Elige todos los países para un alcance máximo
    • O limita a mercados específicos para pruebas

    Fecha de inicio: Cuando la oferta se vuelve disponible

    • Puede ser inmediato o programado para el futuro
    • Útil para coordinar con campañas de marketing

    Fecha de fin (Opcional): Cuando la oferta expira

    • Deja en blanco para disponibilidad continua
    • Establece una fecha para promociones de corta duración
  5. Seleccionar tipo de oferta

    Elige uno de los tres tipos de ofertas:

    Gratis (Prueba gratuita)

    • Seleccione la duración (días, semanas, meses)
    • Ejemplos: 7 días, 2 semanas, 1 mes

    Pago a Fondo

    • Establecer precio de pago único
    • Establecer duración cubierta por el pago
    • Ejemplo: $1.99 por 2 meses

    Pago a Medida

    • Establecer precio descuento por período
    • Establecer número de períodos
    • Ejemplo: $2.99/mes por 3 meses
  6. Revisar y Confirmar

    Revisa la resumen mostrando:

    • Tipo y duración de la oferta
    • Detalles de precios
    • Precio regular después del período de introducción
    • Fechas y países de disponibilidad
  7. Guardar

    Hacer clic Guardar Para crear la oferta introductoria. Estará disponible para la prueba inmediatamente en modo de sandbox.

Type: Free
Duration: 7 days
Then: $9.99/month

Viaje del usuario:

  • Día 1-7: Acceso gratuito
  • Día 8: Primera cobro de $9.99
  • Las cargos mensuales continúan
Type: Pay Up Front
Price: $4.99
Duration: 3 months
Then: $9.99/month

Viaje del usuario:

  • Día 1: Cobrado $4.99
  • 90 días de acceso
  • Día 91: Cargado $9.99/mes
Type: Pay As You Go
Price: $2.99/month
Periods: 6 months
Then: $9.99/month

Viaje del usuario:

  • Meses 1-6: $2.99/mes
  • Mes 7+: $9.99/mes

El plugin native-purchases maneja automáticamente la presentación y la elegibilidad de la oferta de introducción:

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Fetch products with intro offer information
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['com.yourapp.premium_monthly'],
productType: PURCHASE_TYPE.SUBS,
});
const product = products[0];
// Display intro offer details (StoreKit sends localized metadata)
if (product.introductoryPrice) {
console.log('Intro price:', product.introductoryPriceString);
console.log('Intro period:', product.introductoryPricePeriod);
console.log('Intro cycles:', product.introductoryPriceCycles);
console.log('Regular price:', product.priceString);
} else {
console.log('No intro offer configured');
}
// Purchase (StoreKit automatically applies intro pricing if eligible)
try {
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: 'com.yourapp.premium_monthly',
productType: PURCHASE_TYPE.SUBS,
});
console.log('Subscription active, receipt length:', transaction.receipt?.length);
await validateReceiptOnServer(transaction.receipt);
} catch (error) {
console.error('Purchase failed:', error);
}

Propuesta de Valor Clara:

Try Premium Free for 7 Days
Then $9.99/month. Cancel anytime.

Enfocar en Ahorros:

Start at Just $1.99
Get 3 months of Premium for only $1.99
Then $9.99/month

Comunicación Transparente:

Your Free Trial
• Access all premium features
• No charge for 7 days
• $9.99/month after trial
• Cancel anytime, even during trial
function formatIntroOffer(product: any): string {
if (!product.introductoryPrice) {
return `${product.priceString} per ${product.subscriptionPeriod}`;
}
const intro = product.introductoryPrice;
const regular = product.priceString;
if (intro.price === 0) {
// Free trial
return `Try free for ${intro.periodString}, then ${regular}`;
} else if (intro.cycles === 1) {
// Pay up front
return `${intro.priceString} for ${intro.periodString}, then ${regular}`;
} else {
// Enterprise
return `${intro.priceString} for ${intro.cycles} ${intro.periodString}s, then ${regular}`;
}
}
  • 3-7 días: Aplicaciones para tomar decisiones rápidas, juegos
  • 7-14 días: Estándar para la mayoría de las aplicaciones
  • 14-30 días: Herramientas complejas, aplicaciones profesionales
  • 30+ días: Alta valoración B2B o empresarial
  • $0.99-$1.99: Bajo umbral de barrera, adecuado para pruebas
  • 50% de descuento: Fuerte valor percibido
  • Mes primero gratis: Patrón común y familiar
  • Antes de que termine la prueba: Recuerda a los usuarios de la próxima carga
  • Resaltar valor: Mostrar estadísticas de uso, logros
  • Cancelación fácil: Construir confianza con un proceso transparente

Utilice la prueba de sandbox para verificar el comportamiento:

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// In sandbox mode, accelerated subscription durations apply:
// - 3 days free trial = 3 minutes
// - 1 week free trial = 3 minutes
// - 1 month free trial = 5 minutes
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['premium_monthly'],
productType: PURCHASE_TYPE.SUBS,
});
// Purchase with intro offer
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: 'premium_monthly',
productType: PURCHASE_TYPE.SUBS,
});
console.log('Intro purchase transaction:', transaction.transactionId);
// Wait for accelerated renewal
setTimeout(async () => {
const { purchases } = await NativePurchases.getPurchases({
productType: PURCHASE_TYPE.SUBS,
});
const premium = purchases.find((purchase) => purchase.productIdentifier === 'premium_monthly');
console.log('After trial state:', premium?.subscriptionState);
}, 180000); // 3 minutes for weekly trial
  • Una oferta de introducción por usuario por grupo de suscripción (a vida)
  • Sólo se aplica a nuevos suscriptores
  • No se puede utilizar nuevamente después de la cancelación
  • No está disponible para actualizaciones/subidas de categoría de suscripción
  • introductoryPrice muestra detalles de la oferta de introducción
  • eligibility el método verifica si el usuario cumple con los requisitos
  • Se aplica automáticamente en el momento de la compra
  • No se necesita un método de compra especial
  • Solo una oferta de introducción activa por suscripción al mismo tiempo
  • No se puede combinar con otros tipos de descuentos
  • No se puede cambiar las reglas de elegibilidad
  • Apple controla la verificación de elegibilidad

La oferta de introducción no se muestra:

  • Verifique si la oferta está activada en App Store Connect
  • Verifique si el usuario no ha utilizado una oferta de introducción antes
  • Asegúrese de que el usuario no se haya suscrito a nada en el grupo
  • Pruebe con una nueva cuenta de sandbox

La verificación de elegibilidad está fallando:

  • Espera a que se sincronice la tienda de aplicaciones (puede tardar 2-3 horas)
  • Verifica que el ID del producto sea correcto
  • Revisa la configuración del grupo de suscripción
  • Prueba en entorno de pruebas con una cuenta de prueba fresca

Error de precio mostrando:

  • Revisa la configuración de precios regionales
  • Verifica la conversión de moneda
  • Asegúrate de que las fechas de oferta sean actuales
  • Refresca la información del producto

Problemas de pruebas en entorno de pruebas:

  • Utiliza duraciones aceleradas (3 min = 1 semana)
  • Crear nuevas cuentas de prueba para cada prueba
  • Esperar a que termine el período de prueba de manera natural
  • Verificar el recuento de renovación (máx. 6 en entorno de pruebas)
  • Tasa de aceptación de oferta de inicio
  • Tasa de conversión de prueba a pago
  • Cancelación durante el período de prueba
  • Retención después del primer cargo
  • Impacto en ingresos
  • Prueba gratuita vs. introducción paga
  • Variaciones de la duración de la prueba
  • Porcentaje de descuento
  • Pago único vs. descuento recurrente
// Track offer performance
analytics.track('intro_offer_displayed', {
product_id: product.identifier,
offer_type: product.introductoryPriceType,
offer_duration: product.introductoryPricePeriod
});
analytics.track('intro_offer_accepted', {
product_id: product.identifier
});
// Monitor conversion
NativePurchases.addListener('transactionUpdated', (transaction) => {
if (transaction.productIdentifier === product.identifier && transaction.isActive) {
analytics.track('trial_converted', {
transactionId: transaction.transactionId,
productId: transaction.productIdentifier,
});
}
});
  • Configurar pruebas de sandbox para probar tus ofertas de introducción
  • Configura ofertas promocionales para campañas de recuperación
  • Implementa análisis de suscripciones
  • Crea campañas de marketing dirigidas

Para obtener más detalles, consulte el documentación oficial de Apple sobre ofertas de introducción.