Todos los artículos
Análisis a fondo8 min de lectura

Apple ya vende tu suscripción a empresas enteras por puestos, y el reembolso de una suscripción multipuesto funciona de otra manera

Apple activó las suscripciones multipuesto para empresas y centros educativos el 22 de octubre de 2026, activadas por defecto. Una sola compra cubre ahora a muchas personas, las retiradas de puestos llegan como notificaciones REVOKE y el endpoint de pruebas de reembolso rechaza los puestos asignados. Esto es lo que cambia y lo que cuesta.

Un pequeño equipo de oficina alrededor de una mesa compartida, cada persona con un iPhone o iPad que ejecuta la misma app de trabajo, comprada como una de las suscripciones multipuesto de Apple

Puntos clave

  • Desde el 22 de octubre de 2026, las organizaciones que usan Apple Business o Apple School Manager pueden comprar en volumen la suscripción autorrenovable de una app mediante una sola compra In-App de Apple, asignar los puestos con sus herramientas de gestión de dispositivos y añadir o retirar puestos en cualquier momento.
  • Apple activó la compra multipuesto por defecto en App Store Connect. Las suscripciones creadas antes del 14 de septiembre de 2026 que no usan StoreKit 2 o que tienen En familia activado empiezan desactivadas, y las suscripciones de apps personalizadas no pueden desactivarse.
  • En una compra multipuesto, el campo quantity del payload de transacción de Apple indica el número de puestos, y cada persona que recibe un puesto obtiene una transacción con un inAppOwnershipType de ASSIGNED.
  • Cuando una organización retira una suscripción que había asignado a alguien, Apple envía una notificación REVOKE y la transacción lleva un revocationType de ASSIGNMENT_REVOKE, disponible en producción desde el 23 de octubre de 2026.
  • El endpoint Send Consumption Information de Apple, la respuesta a un CONSUMPTION_REQUEST, devuelve InvalidAssignedTransactionNotSupportedError cuando se llama con una transacción asignada, así que las pruebas de reembolso solo pueden enviarse para la transacción del comprador.
  • El campo revocationType de Apple distingue REFUND_FULL de REFUND_PRORATED, y revocationPercentage indica la parte reembolsada en milésimas, de modo que 40000 significa 40 por ciento.
  • Las Group Purchases, que permiten a un cliente del App Store comprar varios puestos e invitar a otras personas, pueden probarse en el sandbox desde noviembre de 2026 y llegan al App Store este invierno.

Apple empezó a vender suscripciones de apps a organizaciones por puestos el 22 de octubre de 2026, y activó la opción para la mayoría de los desarrolladores sin preguntar. Las empresas y los centros educativos que usan Apple Business o Apple School Manager ya pueden comprar tu suscripción autorrenovable en bloque mediante una sola compra In-App. Eso cambia cómo se ve en tu servidor el reembolso de una suscripción multipuesto. Una transacción puede pagar ahora por decenas de personas, un puesto puede desaparecer sin ningún reembolso, y el endpoint que usas para defender un caso de reembolso se niega a hablar de las personas que de verdad usan la app.

Qué activó Apple y dónde lo anunció

El lanzamiento llegó como una breve noticia de Apple Developer titulada «Offer your subscriptions to businesses and schools». Dice que las organizaciones pueden comprar los puestos que necesitan mediante una sola compra In-App, asignarlos y gestionarlos con sus herramientas de gestión de dispositivos actuales, y añadir o retirar puestos en cualquier momento. La misma noticia dice que la compra multipuesto está activada por defecto en App Store Connect, salvo que ya hubieras cambiado el ajuste.

La infraestructura llegó durante el mes anterior en los registros de cambios, no en un escenario. La versión 1.22 de App Store Server API, del 28 de septiembre, añadió los campos de puestos y los endpoints de grupos solo en sandbox. El 23 de octubre, una actualización de servidor de una línea llevó los endpoints de grupos y el valor ASSIGNMENT_REVOKE a producción. Si tu gestor de notificaciones no ha cambiado desde el verano, ahora recibe datos que nunca se escribió para leer.

FechaQué cambióDónde lo dijo Apple
Junio de 2026Suscripciones multipuesto anunciadas en WWDC26Sesión 391, Offer subscriptions to groups and organizations
16 de septiembre de 2026Compra multipuesto activada por defecto en App Store ConnectNoticias de Apple Developer
28 de septiembre de 2026quantity indica puestos, se añaden ASSIGNED y ASSIGNMENT_REVOKE, solo en sandboxRegistro de cambios de App Store Server API, versión 1.22
22 de octubre de 2026Volume Purchasing disponible para Apple Business y Apple School ManagerNoticias de Apple Developer
23 de octubre de 2026ASSIGNMENT_REVOKE y endpoints de grupos en producciónRegistros de cambios de Server API y Server Notifications
Noviembre de 2026Group Purchases disponibles para pruebas en el sandboxNoticias de Apple Developer
Este inviernoGroup Purchases en el App StoreNoticias de Apple Developer

Quién queda activado por defecto

Casi todo el mundo. La página de ayuda de App Store Connect dice que las suscripciones creadas antes del 14 de septiembre de 2026 empiezan desactivadas solo si no usan StoreKit 2 o tienen En familia activado. Las suscripciones de apps personalizadas pasan automáticamente a Apple Business y Apple School Manager, y no puedes desactivarlas. Cambiar el ajuste requiere el rol de Titular de la cuenta, Administrador o Gestor de apps, y retirar Apple Business o Apple School Manager de una suscripción aprobada requiere al Titular de la cuenta.

Cómo aparece una compra multipuesto en tu servidor

Ahora hay dos tipos de transacción para la misma suscripción. La compra de la organización es una transacción, y su campo quantity indica cuántos puestos compró. Cada persona que recibe un puesto obtiene su propia transacción, algo que la sesión de WWDC de Apple describe como el App Store asignando una transacción a cada miembro. Esas transacciones de miembros llevan un inAppOwnershipType de ASSIGNED, junto a los valores PURCHASED y FAMILY_SHARED que quizá ya gestionas.

Apple es tajante sobre qué registro decide el acceso. Su documentación de Get Customer Groups dice que la pertenencia a un grupo es independiente del derecho de acceso, y que para desbloquear contenido debes leer las transacciones del cliente en lugar de depender de la pertenencia al grupo. Concede el acceso a partir de las transacciones. Usa los endpoints de grupos solo para funciones como una vista de administración.

Campo o valorQué te indicaAñadido
quantityNúmero de puestos de una compra multipuesto28 de septiembre de 2026
inAppOwnershipType = ASSIGNEDLa persona tiene acceso a través de una organización o un grupo28 de septiembre de 2026
revocationType = ASSIGNMENT_REVOKEEl comprador retiró la suscripción a esta persona28 de septiembre de 2026, producción el 23 de octubre
revocationType = REFUND_FULL o REFUND_PRORATEDLa transacción se reembolsó total o parcialmente10 de diciembre de 2025
revocationPercentageParte reembolsada, en milésimas (40000 = 40%)10 de diciembre de 2025

Un puesto retirado no es un reembolso

Aquí es donde fallará la mayoría de los gestores. Cuando una organización quita un puesto a un empleado, Apple envía una notificación REVOKE, el mismo tipo que usa cuando quien compró con En familia deja de compartir. El revocationType de la transacción es ASSIGNMENT_REVOKE, y la instrucción de Apple es directa: revoca el acceso del cliente al contenido que proporciona la transacción.

Nada en ese evento dice que se haya movido dinero. Si tu código trata cada revocación como un reembolso, tu tasa de reembolsos, tus ingresos netos y cualquier alerta que hayas construido sobre ellos contarán la rotación normal de personal como ventas perdidas. Ramifica primero por revocationType.

  • ASSIGNMENT_REVOKE: termina el acceso de esta persona. No registres un reembolso.
  • FAMILY_REVOKE: termina el acceso del miembro de la familia. No registres un reembolso.
  • REFUND_FULL: termina el acceso y registra la transacción completa como reembolsada.
  • REFUND_PRORATED: registra la parte indicada en revocationPercentage y luego decide qué acceso se mantiene.
Una fila de iPads de empresa idénticos alineados sobre un escritorio de oficina, uno apartado con la pantalla apagada, como un puesto retirado de una suscripción multipuesto

Por qué no puedes defender un reembolso de un puesto asignado

Apple sigue decidiendo cada reembolso del App Store. Cuando un cliente lo solicita, Apple envía un CONSUMPTION_REQUEST y te da 12 horas para responder mediante Send Consumption Information. Con el modelo multipuesto, la persona que usa la app y la persona que pagó son distintas, y la API de Apple ahora traza una línea firme entre ambas.

Send Consumption Information rechaza las transacciones asignadas

Si llamas a Send Consumption Information, a su versión V1 o a Set App Account Token con una transacción asignada, Apple devuelve InvalidAssignedTransactionNotSupportedError. Apple aconseja comprobar si el inAppOwnershipType es ASSIGNED antes de llamar. En la práctica, tus pruebas van en la transacción del comprador o en ninguna parte. El uso que tu app registra en las cuentas de los miembros sigue valiendo la pena, porque es la única forma de saber si los puestos se llegaron a usar.

Cómo es un reembolso prorrateado

Apple añadió REFUND_PRORATED y revocationPercentage en diciembre de 2025. La solicitud de consumo te permite pedir ese resultado con un refundPreference de GRANT_PRORATED. Para una suscripción autorrenovable, Apple indica que no envíes un consumptionPercentage con GRANT_PRORATED, porque calcula el porcentaje por su cuenta. Si el reembolso se revierte más tarde, revocationPercentage desaparece de la transacción.

¿Puedo ampliar la suscripción de un solo empleado como gesto de buena voluntad?

No. Extend a Subscription Renewal Date devuelve AssignedSubscriptionExtensionIneligibleError para una suscripción asignada. Apple explica que una suscripción asignada se renueva con el mismo calendario que la que compró el comprador, así que no se puede mover a un solo miembro por separado.

Lo que te cuesta el reembolso de una suscripción multipuesto

La escala es el nuevo riesgo. La sesión de WWDC de Apple explica los precios por volumen con hasta cinco tramos. Su ejemplo vende puestos a 19,99 $ al mes hasta 20 puestos, 13,99 $ del puesto 21 al 40 y 10,99 $ a partir del puesto 41. Con esas cifras, un pedido de 50 puestos factura 789,50 $ al mes, unos 15,79 $ por puesto. Un REFUND_FULL sobre esa única transacción devuelve los 789,50 $ completos, no el precio de una suscripción.

El coste de servicio escala igual. Cincuenta puestos son cincuenta personas abriendo sesiones en tus servidores, haciendo las llamadas a APIs de terceros que pagan tus funciones y llenando un almacenamiento que te facturan. Si los titulares de puestos de un pedido reembolsado conservan el acceso porque tu gestor solo miró la transacción del comprador, sigues pagando por cada uno de ellos. Un ASSIGNMENT_REVOKE perdido es menor pero más frecuente: la compra ya no cubre a esa persona, y cada petición que hace es coste sin ingresos detrás.

EventoDinero que se mueveAcceso que terminarPruebas que puedes enviar
ASSIGNMENT_REVOKE en un miembroNinguno indicadoEse miembroNo aplica
REFUND_FULL en la compra multipuestoToda la transacción, cada puesto incluidoEl comprador y cada titular de puestoSolo la transacción del comprador, en las 12 horas siguientes al CONSUMPTION_REQUEST
REFUND_PRORATED en la compra multipuestoLa parte de revocationPercentageDepende de lo que cubra el reembolsoSolo la transacción del comprador
Respuesta de consumo sobre una transacción asignadaNo se aceptaNo aplicaRechazada con InvalidAssignedTransactionNotSupportedError

Qué flujos de reembolso piden tu versión

El modelo multipuesto no cambia la lista corta. Solo dos flujos de reembolso piden pruebas al desarrollador: el CONSUMPTION_REQUEST de Apple, respondido mediante Send Consumption Information en 12 horas, y la revisión de contracargos de Google Play, respondida mediante orders.reviewrefund en 24 horas. Todo lo demás se decide sin ti, y para los pedidos de Google Play realizados después del 3 de agosto de 2026, un contracargo le cuesta al desarrollador el precio de compra, menos la comisión de servicio de Play, más las comisiones de contracargo del banco. RefundHalt responde a las solicitudes de consumo de Apple dentro del plazo de 12 horas, con los datos de uso que ya recopilas.

Qué cambiar en tu gestor del App Store esta semana

  • Lee quantity en cada transacción de suscripción y guárdalo con la compra.
  • Guarda inAppOwnershipType y trata ASSIGNED como un caso propio junto a PURCHASED y FAMILY_SHARED.
  • Ramifica la gestión de REVOKE por revocationType, para que ASSIGNMENT_REVOKE termine el acceso sin registrar un reembolso.
  • Registra REFUND_PRORATED por la parte de revocationPercentage, no como un reembolso completo.
  • Comprueba ASSIGNED antes de llamar a Send Consumption Information, Set App Account Token o Extend a Subscription Renewal Date.
  • Decide en App Store Connect si quieres vender a organizaciones, antes de que una compre 50 puestos.

Preguntas frecuentes

¿Están activadas las suscripciones multipuesto de Apple en mi app?
Probablemente. Apple activó la compra multipuesto por defecto en App Store Connect. Las suscripciones creadas antes del 14 de septiembre de 2026 empiezan desactivadas solo si no usan StoreKit 2 o tienen En familia activado, y las suscripciones de apps personalizadas no pueden desactivarse. Puedes comprobarlo en Purchase Options, en la página de cada suscripción.
¿Una notificación REVOKE con ASSIGNMENT_REVOKE significa que perdí dinero?
No. ASSIGNMENT_REVOKE significa que la organización o el comprador del grupo retiró la suscripción a una persona. Apple te pide terminar el acceso de esa persona, pero el evento no indica ningún reembolso. Registra reembolsos solo con REFUND_FULL o REFUND_PRORATED.
¿Puedo enviar información de consumo de un empleado que usa un puesto asignado?
No. El endpoint Send Consumption Information de Apple devuelve InvalidAssignedTransactionNotSupportedError para las transacciones que una organización o un grupo asignó a un cliente. Comprueba primero si el inAppOwnershipType es ASSIGNED y envía las pruebas en la transacción del comprador.
¿Cómo sé qué parte de una compra multipuesto reembolsó Apple?
Lee revocationType y revocationPercentage en la transacción. REFUND_FULL significa que se reembolsó la transacción completa. REFUND_PRORATED viene con revocationPercentage en milésimas, de modo que 40000 significa el 40 por ciento de la transacción.
¿Cuándo se lanzan las Group Purchases de Apple?
Apple dice que las Group Purchases, que permiten a un cliente del App Store comprar varios puestos e invitar a otras personas, pueden configurarse y probarse en el sandbox a partir de noviembre de 2026 y estarán disponibles en el App Store este invierno. Volume Purchasing para empresas y centros educativos se lanzó el 22 de octubre de 2026.

Fuentes y lecturas adicionales

RefundHalt

El piloto automático de reembolsos para App Store y Google Play

Seguir leyendo

La próxima solicitud de reembolso ya está en camino.

Configura RefundHalt en el tiempo que tardas en leer otro correo de soporte sobre un reembolso que no llegaste a impugnar.