Tous les articles
Analyse approfondie8 min de lecture

Apple vend désormais votre abonnement à des entreprises entières, par poste, et le remboursement d'un abonnement multiposte fonctionne autrement

Apple a activé les abonnements multipostes pour les entreprises et les établissements scolaires le 22 octobre 2026, par défaut. Un seul achat couvre désormais de nombreuses personnes, les retraits de postes arrivent sous forme de notifications REVOKE et l'endpoint des preuves de remboursement refuse les postes attribués. Voici ce qui change et ce que cela coûte.

Une petite équipe de bureau autour d'une table commune, chaque personne tenant un iPhone ou un iPad avec la même app professionnelle, achetée comme l'un des abonnements multipostes d'Apple

Points clés

  • Depuis le 22 octobre 2026, les organisations qui utilisent Apple Business ou Apple School Manager peuvent acheter en volume l'abonnement à renouvellement automatique d'une app via un seul achat intégré Apple, attribuer les postes avec leurs outils de gestion des appareils, et ajouter ou retirer des postes à tout moment.
  • Apple a activé l'achat multiposte par défaut dans App Store Connect. Les abonnements créés avant le 14 septembre 2026 qui n'utilisent pas StoreKit 2 ou qui ont le Partage familial activé démarrent désactivés, et les abonnements des apps personnalisées ne peuvent pas être désactivés.
  • Pour un achat multiposte, le champ quantity du payload de transaction d'Apple indique le nombre de postes, et chaque personne qui reçoit un poste obtient une transaction avec un inAppOwnershipType égal à ASSIGNED.
  • Lorsqu'une organisation retire un abonnement qu'elle avait attribué à quelqu'un, Apple envoie une notification REVOKE et la transaction porte un revocationType égal à ASSIGNMENT_REVOKE, disponible en production depuis le 23 octobre 2026.
  • L'endpoint Send Consumption Information d'Apple, la réponse à un CONSUMPTION_REQUEST, renvoie InvalidAssignedTransactionNotSupportedError lorsqu'il est appelé avec une transaction attribuée. Les preuves de remboursement ne peuvent donc être envoyées que pour la transaction de l'acheteur.
  • Le champ revocationType d'Apple distingue REFUND_FULL de REFUND_PRORATED, et revocationPercentage indique la part remboursée en millièmes, donc 40000 signifie 40 pour cent.
  • Les Group Purchases, qui permettent à un client de l'App Store d'acheter plusieurs postes et d'inviter d'autres personnes, peuvent être testés dans le sandbox à partir de novembre 2026 et arrivent sur l'App Store cet hiver.

Apple a commencé à vendre des abonnements d'apps aux organisations, par poste, le 22 octobre 2026, et a activé l'option pour la plupart des développeurs sans leur demander. Les entreprises et les établissements scolaires qui utilisent Apple Business ou Apple School Manager peuvent désormais acheter votre abonnement à renouvellement automatique en volume via un seul achat intégré. Cela change l'allure d'un remboursement d'abonnement multiposte sur votre serveur. Une transaction peut maintenant payer pour des dizaines de personnes, un poste peut disparaître sans aucun remboursement, et l'endpoint qui vous sert à défendre un dossier de remboursement refuse de parler des personnes qui utilisent réellement l'app.

Ce qu'Apple a activé, et où l'entreprise l'a annoncé

Le lancement a pris la forme d'une courte actualité Apple Developer intitulée « Offer your subscriptions to businesses and schools ». Elle indique que les organisations peuvent acheter les postes dont elles ont besoin via un seul achat intégré, puis les attribuer et les gérer avec leurs outils de gestion des appareils existants, et ajouter ou retirer des postes à tout moment. La même actualité précise que l'achat multiposte est activé par défaut dans App Store Connect, sauf si vous aviez déjà modifié le réglage.

La tuyauterie est arrivée au cours du mois précédent, dans les journaux des modifications, pas sur une scène. La version 1.22 de l'App Store Server API, datée du 28 septembre, a ajouté les champs de postes et les endpoints de groupes, uniquement dans le sandbox. Le 23 octobre, une mise à jour serveur d'une ligne a fait passer les endpoints de groupes et la valeur ASSIGNMENT_REVOKE en production. Si votre gestionnaire de notifications n'a pas changé depuis l'été, il reçoit maintenant des données qu'il n'a jamais été écrit pour lire.

DateCe qui a changéOù Apple l'a annoncé
Juin 2026Abonnements multipostes annoncés à la WWDC26Session 391, Offer subscriptions to groups and organizations
16 septembre 2026Achat multiposte activé par défaut dans App Store ConnectActualités Apple Developer
28 septembre 2026quantity indique les postes, ajout de ASSIGNED et ASSIGNMENT_REVOKE, sandbox uniquementJournal des modifications de l'App Store Server API, version 1.22
22 octobre 2026Volume Purchasing disponible pour Apple Business et Apple School ManagerActualités Apple Developer
23 octobre 2026ASSIGNMENT_REVOKE et endpoints de groupes en productionJournaux des modifications de la Server API et des Server Notifications
Novembre 2026Group Purchases testables dans le sandboxActualités Apple Developer
Cet hiverGroup Purchases sur l'App StoreActualités Apple Developer

Qui est activé par défaut

Presque tout le monde. La page d'aide d'App Store Connect indique que les abonnements créés avant le 14 septembre 2026 démarrent désactivés seulement s'ils n'utilisent pas StoreKit 2 ou s'ils ont le Partage familial activé. Les abonnements des apps personnalisées sont proposés automatiquement dans Apple Business et Apple School Manager, et vous ne pouvez pas les désactiver. Modifier le réglage requiert le rôle Titulaire du compte, Admin ou Gestionnaire d'apps, et retirer Apple Business ou Apple School Manager d'un abonnement approuvé requiert le Titulaire du compte.

Comment un achat multiposte apparaît sur votre serveur

Il existe désormais deux types de transaction pour le même abonnement. L'achat de l'organisation est une transaction, et son champ quantity indique combien de postes ont été achetés. Chaque personne qui reçoit un poste obtient sa propre transaction, ce que la session WWDC d'Apple décrit comme l'App Store attribuant une transaction à chaque membre. Ces transactions de membres portent un inAppOwnershipType égal à ASSIGNED, à côté des valeurs PURCHASED et FAMILY_SHARED que vous gérez peut-être déjà.

Apple est catégorique sur l'enregistrement qui décide de l'accès. Sa documentation Get Customer Groups indique que l'appartenance à un groupe est distincte du droit d'accès, et que pour débloquer du contenu, vous devez lire les transactions du client plutôt que vous fier à l'appartenance au groupe. Accordez l'accès à partir des transactions. Réservez les endpoints de groupes à des fonctions comme une vue d'administration.

Champ ou valeurCe qu'il vous indiqueAjouté le
quantityNombre de postes d'un achat multiposte28 septembre 2026
inAppOwnershipType = ASSIGNEDLa personne a accès via une organisation ou un groupe28 septembre 2026
revocationType = ASSIGNMENT_REVOKEL'acheteur a retiré l'abonnement à cette personne28 septembre 2026, production le 23 octobre
revocationType = REFUND_FULL ou REFUND_PRORATEDLa transaction a été remboursée en totalité ou en partie10 décembre 2025
revocationPercentagePart remboursée, en millièmes (40000 = 40%)10 décembre 2025

Un poste retiré n'est pas un remboursement

C'est ici que la plupart des gestionnaires vont se tromper. Lorsqu'une organisation retire un poste à un employé, Apple envoie une notification REVOKE, le même type que lorsqu'un acheteur du Partage familial cesse de partager. Le revocationType de la transaction est ASSIGNMENT_REVOKE, et la consigne d'Apple est directe : révoquez l'accès du client au contenu fourni par la transaction.

Rien dans cet événement n'indique un mouvement d'argent. Si votre code traite chaque révocation comme un remboursement, votre taux de remboursement, votre chiffre d'affaires net et toutes les alertes construites dessus compteront la rotation normale du personnel comme des ventes perdues. Aiguillez d'abord sur revocationType.

  • ASSIGNMENT_REVOKE : mettez fin à l'accès de cette personne. N'enregistrez pas de remboursement.
  • FAMILY_REVOKE : mettez fin à l'accès du membre de la famille. N'enregistrez pas de remboursement.
  • REFUND_FULL : mettez fin à l'accès et enregistrez la transaction entière comme remboursée.
  • REFUND_PRORATED : enregistrez la part indiquée dans revocationPercentage, puis décidez quel accès subsiste.
Une rangée d'iPad d'entreprise identiques alignés sur un bureau, l'un mis à l'écart avec l'écran éteint, comme un poste retiré d'un abonnement multiposte

Pourquoi vous ne pouvez pas défendre un remboursement sur un poste attribué

Apple décide toujours de chaque remboursement sur l'App Store. Lorsqu'un client en demande un, Apple envoie un CONSUMPTION_REQUEST et vous laisse 12 heures pour répondre via Send Consumption Information. Avec le multiposte, la personne qui utilise l'app et celle qui a payé sont différentes, et l'API d'Apple trace désormais une frontière nette entre les deux.

Send Consumption Information rejette les transactions attribuées

Appelez Send Consumption Information, sa version V1 ou Set App Account Token avec une transaction attribuée, et Apple renvoie InvalidAssignedTransactionNotSupportedError. Apple conseille de vérifier si l'inAppOwnershipType vaut ASSIGNED avant l'appel. En pratique, vos preuves vont sur la transaction de l'acheteur ou nulle part. L'usage que votre app enregistre sur les comptes des membres reste utile à conserver, car c'est le seul moyen de savoir si les postes ont réellement servi.

À quoi ressemble un remboursement au prorata

Apple a ajouté REFUND_PRORATED et revocationPercentage en décembre 2025. La demande de consommation vous permet de solliciter ce résultat avec un refundPreference égal à GRANT_PRORATED. Pour un abonnement à renouvellement automatique, Apple demande de ne pas envoyer de consumptionPercentage avec GRANT_PRORATED, car elle calcule elle-même le pourcentage. Si le remboursement est annulé par la suite, revocationPercentage disparaît de la transaction.

Puis-je prolonger l'abonnement d'un seul employé en geste commercial ?

Non. Extend a Subscription Renewal Date renvoie AssignedSubscriptionExtensionIneligibleError pour un abonnement attribué. Apple explique qu'un abonnement attribué se renouvelle selon le même calendrier que celui acheté par l'acheteur, donc un membre ne peut pas être décalé seul.

Ce que vous coûte le remboursement d'un abonnement multiposte

L'échelle est le nouveau risque. La session WWDC d'Apple présente une tarification au volume avec jusqu'à cinq paliers. Son exemple vend les postes à 19,99 $ par mois jusqu'à 20 postes, 13,99 $ pour les postes 21 à 40, et 10,99 $ à partir du poste 41. Avec ces chiffres, une commande de 50 postes facture 789,50 $ par mois, soit environ 15,79 $ par poste. Un REFUND_FULL sur cette seule transaction rend la totalité des 789,50 $, pas le prix d'un abonnement.

Le coût de service suit la même échelle. Cinquante postes, ce sont cinquante personnes qui ouvrent des sessions sur vos serveurs, déclenchent les appels d'API tierces que vos fonctionnalités paient et remplissent un stockage qui vous est facturé. Si les titulaires de postes d'une commande remboursée gardent l'accès parce que votre gestionnaire n'a regardé que la transaction de l'acheteur, vous continuez à payer pour chacun d'eux. Un ASSIGNMENT_REVOKE manqué coûte moins mais arrive plus souvent : l'achat ne couvre plus cette personne, et chacune de ses requêtes est un coût sans revenu en face.

ÉvénementArgent concernéAccès à couperPreuves que vous pouvez envoyer
ASSIGNMENT_REVOKE sur un membreAucun signaléCe membreSans objet
REFUND_FULL sur l'achat multiposteToute la transaction, chaque poste inclusL'acheteur et chaque titulaire de posteTransaction de l'acheteur uniquement, dans les 12 heures suivant le CONSUMPTION_REQUEST
REFUND_PRORATED sur l'achat multiposteLa part de revocationPercentageSelon ce que couvre le remboursementTransaction de l'acheteur uniquement
Réponse de consommation sur une transaction attribuéeNon acceptéeSans objetRejetée avec InvalidAssignedTransactionNotSupportedError

Quels circuits de remboursement vous demandent votre version

Le multiposte ne change pas la courte liste. Seuls deux circuits de remboursement demandent des preuves au développeur : le CONSUMPTION_REQUEST d'Apple, auquel on répond via Send Consumption Information sous 12 heures, et l'examen des rétrofacturations de Google Play, auquel on répond via orders.reviewrefund sous 24 heures. Tout le reste se décide sans vous, et pour les commandes Google Play passées après le 3 août 2026, une rétrofacturation coûte au développeur le prix d'achat, moins les frais de service de Play, plus les frais de rétrofacturation de la banque. RefundHalt répond aux demandes de consommation d'Apple dans le délai de 12 heures, à partir des données d'usage que vous collectez déjà.

Ce qu'il faut changer cette semaine dans votre gestionnaire App Store

  • Lisez quantity sur chaque transaction d'abonnement et stockez-le avec l'achat.
  • Stockez inAppOwnershipType et traitez ASSIGNED comme un cas à part entière, à côté de PURCHASED et FAMILY_SHARED.
  • Aiguillez le traitement des REVOKE sur revocationType, pour qu'ASSIGNMENT_REVOKE coupe l'accès sans enregistrer de remboursement.
  • Enregistrez REFUND_PRORATED à hauteur de revocationPercentage, et non comme un remboursement total.
  • Vérifiez ASSIGNED avant d'appeler Send Consumption Information, Set App Account Token ou Extend a Subscription Renewal Date.
  • Décidez dans App Store Connect si vous voulez vendre aux organisations, avant que l'une d'elles achète 50 postes.

Questions fréquentes

Les abonnements multipostes d'Apple sont-ils activés pour mon app ?
Probablement. Apple a activé l'achat multiposte par défaut dans App Store Connect. Les abonnements créés avant le 14 septembre 2026 démarrent désactivés seulement s'ils n'utilisent pas StoreKit 2 ou s'ils ont le Partage familial activé, et les abonnements des apps personnalisées ne peuvent pas être désactivés. Vous pouvez vérifier dans Purchase Options, sur la page de chaque abonnement.
Une notification REVOKE avec ASSIGNMENT_REVOKE signifie-t-elle que j'ai perdu de l'argent ?
Non. ASSIGNMENT_REVOKE signifie que l'organisation ou l'acheteur du groupe a retiré l'abonnement à une personne. Apple vous demande de mettre fin à l'accès de cette personne, mais l'événement ne signale aucun remboursement. N'enregistrez des remboursements que sur REFUND_FULL ou REFUND_PRORATED.
Puis-je envoyer des informations de consommation pour un employé qui utilise un poste attribué ?
Non. L'endpoint Send Consumption Information d'Apple renvoie InvalidAssignedTransactionNotSupportedError pour les transactions qu'une organisation ou un groupe a attribuées à un client. Vérifiez d'abord si l'inAppOwnershipType vaut ASSIGNED, et envoyez les preuves sur la transaction de l'acheteur.
Comment savoir quelle part d'un achat multiposte Apple a remboursée ?
Lisez revocationType et revocationPercentage sur la transaction. REFUND_FULL signifie que toute la transaction a été remboursée. REFUND_PRORATED s'accompagne de revocationPercentage en millièmes, donc 40000 signifie 40 pour cent de la transaction.
Quand les Group Purchases d'Apple seront-ils lancés ?
Apple indique que les Group Purchases, qui permettent à un client de l'App Store d'acheter plusieurs postes et d'inviter d'autres personnes, peuvent être configurés et testés dans le sandbox à partir de novembre 2026 et seront disponibles sur l'App Store cet hiver. Volume Purchasing pour les entreprises et les établissements scolaires a été lancé le 22 octobre 2026.

Sources et lectures complémentaires

RefundHalt

Le pilote automatique des remboursements pour l'App Store et Google Play

Poursuivre la lecture

La prochaine demande de remboursement est déjà en route.

Configurez RefundHalt dans le temps qu'il vous faudrait pour lire un nouvel e-mail d'assistance au sujet d'un remboursement que vous n'avez pas pu contester.