Integración directa con la App Store de iOS
Admitimos suscripciones y compras únicas, incluidos los consumibles, los no consumibles y las suscripciones no renovables.
Las compras únicas llegan a través de la notificación ONE_TIME_CHARGE de Apple, que Apple lanzó en producción en mayo de 2025. No hace falta nada adicional para activarla: la configuración de App Store Server Notifications que se describe a continuación cubre ambos casos.
1. Apple App Store Server Notifications
Las notificaciones de servidor a servidor de Apple son necesarias para que Insert Affiliate pueda rastrear los eventos de suscripción.
Para hacer estos cambios, debes tener uno de estos roles en la cuenta de App Store: Account Holder, Admin, App Manager o Marketing.
- En la configuración de Insert Affiliate (pestaña Integraciones), establece tu Método de Verificación de Compras en la App en "No uso un validador de recibos (integración Nativa de App Store / Google Play)".
- Después de cambiar esta opción, aparecerá una nueva sección llamada "App Store Server Notifications", que contiene una URL: la necesitarás en el paso 5.

Haz clic para ver a tamaño completo
- Inicia sesión en App Store Connect y selecciona tu app.
- En la navegación de la izquierda, selecciona App Information.
- Desplázate hasta la sección App Store Server Notifications.
- Establece Sandbox Server URL y Production Server URL con la URL de App Store Server Notifications que se muestra en la configuración de Insert Affiliate.
¿Ya usas estas URL para tu propio servidor?
Apple permite una URL de producción y una URL de sandbox por app. Si tu propio servidor ya recibe las App Store Server Notifications, mantén Apple apuntando a tu servidor y haz que este reenvíe cada notificación a Insert Affiliate. Tu gestión de la facturación y de los derechos de acceso se mantiene exactamente igual.
Para reenviar una notificación, envía el cuerpo de la solicitud que te envió Apple, sin modificar, a tu URL de App Store Server Notifications de Insert Affiliate:
- Usa
POSTconContent-Type: application/json. - El cuerpo es el JSON
{ "signedPayload": "..." }de Apple. No lo decodifiques, no lo vuelvas a firmar ni lo alteres. - Usa la URL completa de tu configuración, incluida su query string, ya que es lo que identifica tu cuenta.
- Reenvía tanto las notificaciones de producción como las de sandbox a la misma URL.
Verificamos cada signedPayload con el certificado raíz de Apple, por lo que una notificación reenviada se considera de confianza exactamente igual que si Apple la hubiera enviado directamente. Respondemos con 200 una vez procesada. Si recibes cualquier otra respuesta, vuelve a intentarlo. Las entregas duplicadas son seguras, porque una notificación que ya hemos procesado no se cuenta dos veces.
Haz el reenvío en segundo plano, después de haber respondido a Apple, para que un reenvío lento o fallido nunca retrase tu propia confirmación.
// Express example: after handling Apple's notification yourself
app.post('/apple-notifications', express.json(), async (req, res) => {
await handleNotification(req.body.signedPayload) // your existing logic
res.sendStatus(200)
fetch(process.env.INSERT_AFFILIATE_NOTIFICATION_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ signedPayload: req.body.signedPayload }),
}).catch((err) => console.error('Insert Affiliate forward failed', err))
})
2. Configura tu identificador de paquete de iOS
Insert Affiliate vincula cada recibo de Apple al identificador de paquete (bundle identifier) de tu app, de modo que un recibo auténtico de otra app no pueda acreditarse a tu cuenta. Debe estar configurado para que la verificación Native funcione de forma segura.
- Ve a Configuración → pestaña Empresa y Perfil.
- Busca el campo Identificador de Paquete de iOS e introduce el identificador de paquete de tu app (por ejemplo,
com.yourcompany.yourapp). - Haz clic en Guardar.
Puedes encontrar tu identificador de paquete en Xcode: selecciona tu proyecto → selecciona el target de tu app → pestaña General → campo Bundle Identifier.
Hasta que lo configures, tu panel mostrará un banner de advertencia que te recordará añadirlo.
3. Integra el SDK de Insert Affiliate
Para completar la integración, sigue los pasos finales de integración que se detallan en el SDK de Insert Affiliate para tu plataforma:
