# Transférer une app vers un autre compte Apple Developer

> Transférer une app : le titulaire lance App Transfer, le destinataire accepte sous 60 jours. L'app garde ses avis et son Bundle ID. Conditions, étapes, pièges.

Page originale : [Transférer une app vers un autre compte Apple Developer](https://devoria.fr/blog/transfert-app-autre-compte-developpeur)
Auteur : [Mehdi Azizi](https://devoria.fr/mehdi-azizi)
Publication : 2026-11-04
Dernière révision du contenu : 2026-11-04


Pour faire passer une app d'un compte Apple Developer à un autre, Apple propose le transfert d'app dans App Store Connect. **Le titulaire du compte qui cède lance le transfert, le titulaire du compte qui reçoit l'accepte dans les 60 jours, puis l'opération prend jusqu'à deux jours ouvrés.** L'app reste en vente, garde ses notes, ses avis et son Bundle ID, et ses utilisateurs continuent de recevoir les mises à jour.

Ce qui casse se prépare avant de cliquer : TestFlight, abonnements, Sign in with Apple, notifications push, trousseau partagé. Je n'ai pas encore transféré d'app moi-même. Ce guide suit les pages d'aide d'Apple, relues le 3 novembre 2026, et la liste finale est celle que j'appliquerais à mes apps, construites avec Expo et RevenueCat.

## Quand transférer une app

D'après la [présentation du transfert d'app](https://developer.apple.com/help/app-store-connect/transfer-an-app/overview-of-app-transfer), il sert quand tu as vendu l'app à un autre développeur, ou quand tu veux la déplacer vers un autre compte ou une autre organisation. Exemple typique pour un indépendant : passer d'un compte personnel au compte de sa société. Pour ouvrir ce compte, lis d'abord le guide du [numéro D-U-N-S](https://devoria.fr/blog/numero-duns-apple-developer).

**Le transfert déplace l'app, pas ton compte.** Chaque app se transfère à part, et elle quitte entièrement ton compte une fois l'opération finie.

## Les neuf conditions d'Apple

La page des [critères de transfert](https://developer.apple.com/help/app-store-connect/transfer-an-app/app-transfer-criteria) en liste neuf, dans cet ordre :

| Critère d'Apple                                                                                                                                         | Ce que tu vérifies                          |
| ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
| Aucun des deux comptes n'est en attente ou en cours de changement, et les deux ont accepté la dernière version de leurs contrats payants et gratuits    | Business, onglet Agreements, des deux côtés |
| L'app a au moins une version publiée sur l'App Store                                                                                                    | Une app jamais sortie ne se transfère pas   |
| L'app n'est en précommande dans aucun pays ou région                                                                                                    | Précommande terminée ou retirée             |
| L'app n'a aucun de ces statuts : Processing for Distribution, Waiting for Review, In Review, Accepted, Pending Developer Release, Pending Apple Release | Ta dernière version est en vente            |
| Les achats intégrés ont l'un de ces statuts : Approved, Ready to Submit, Developer Removed from Sale, Rejected                                          | Aucun achat intégré en revue ou incomplet   |
| Les packs de ressources hébergés par Apple n'ont aucune version en Waiting for Review ou In Review, sur TestFlight ou l'App Store                       | Rien en revue de ce côté                    |
| Aucun identifiant de produit d'achat intégré de l'app n'est déjà utilisé par une app du destinataire                                                    | Compare les identifiants des deux comptes   |
| Une app Mac qui a utilisé le sandbox et partage son Application Group Container Directory avec d'autres apps Mac ne se transfère pas                    | Seulement certaines apps Mac                |
| Une app Apple Arcade ne se transfère pas                                                                                                                | Concerne peu de projets                     |

**Attends que ta dernière version soit en vente avant de lancer le transfert.**

## Préparer le transfert

Ces points se règlent avant de cliquer, d'après les pages d'aide d'Apple :

- **Sauvegarde tout.** L'app quitte ton compte : exporte métadonnées, prix, dates de disponibilité, ventes et téléchargements.
- **Coupe TestFlight.** Retire tous les builds et tous les testeurs, et vide les champs de Test Information dans chaque langue. Le fonctionnement des groupes est dans [le guide TestFlight](https://devoria.fr/blog/testflight-tester-son-app-iphone).
- **Vide Xcode Cloud** et retire l'entitlement App Replacement s'il existe, avec une mise à jour publiée.
- **Abonnements : partage le secret propre à l'app.** Une app qui vend des abonnements renouvelables doit utiliser un secret partagé propre à l'app. Tu le génères, tu le transmets au destinataire, puis tu lances le transfert. Le destinataire met ses serveurs à jour avant d'accepter, et génère un nouveau secret une fois le transfert fini.
- **Sign in with Apple : dégroupe et prépare les identifiants.** Détaillé plus bas.
- **Webhooks : décide.** Ils suivent l'app. Supprime-les avant si tu ne veux plus recevoir d'événements, ou laisse le destinataire les rediriger.

Deux effets à connaître côté argent. D'après la [page du Small Business Program](https://developer.apple.com/app-store/small-business-program/), les revenus nets de l'app sur l'année civile sont rattachés à tous les comptes qui lancent ou acceptent le transfert. Le seuil de 1 million de dollars s'apprécie donc avec cette app, des deux côtés : voir [la commission à 15 %](https://devoria.fr/blog/small-business-program-apple-commission-15). Et après le transfert, plus aucun code promo ne peut être créé pour l'app : les codes existants restent valables quatre semaines après leur création.

## Les étapes côté cédant

Seul le titulaire du compte (Account Holder) peut lancer le transfert. Il lui faut l'identifiant Apple du titulaire qui reçoit, et le Team ID de son compte. D'après [l'aide sur le lancement d'un transfert](https://developer.apple.com/help/app-store-connect/transfer-an-app/initiate-an-app-transfer) :

1. Dans Apps, choisis l'app.
2. Dans la barre latérale, sous General, clique sur App information, puis descends jusqu'à Additional Information.
3. Clique sur Transfer App. Un code de double authentification peut t'être demandé.
4. Si tous les critères sont remplis, clique sur Continue. Sinon, Cancel, et règle ce qui manque.
5. Saisis l'identifiant Apple du titulaire destinataire et son Team ID, puis Continue.
6. Lis les conditions, coche la case d'accord, puis clique sur Request Transfer.
7. Clique sur Done.

L'app garde son statut, avec la mention Pending App Transfer en plus. Pendant ce temps, tu ne peux plus modifier ses métadonnées, son prix, sa disponibilité ni ses achats intégrés. Les échanges en cours avec App Review sont fermés.

## Les étapes côté destinataire

Seul le titulaire du compte qui reçoit peut accepter, dans les 60 jours. D'après [l'aide sur l'acceptation](https://developer.apple.com/help/app-store-connect/transfer-an-app/accept-an-app-transfer) :

1. Connecte-toi à App Store Connect : une alerte annonce l'app à transférer.
2. Ouvre Business : l'alerte apparaît dans Agreements.
3. Sous App Transfers, clique sur Review.
4. Renseigne l'URL d'assistance, l'URL marketing et l'URL de la politique de confidentialité si l'app en avait, et les contacts pour App Review et l'App Store.
5. Dans User Access, choisis qui dans ton équipe voit l'app.
6. Dans App privacy, reprends ou refais les réponses de l'ancien propriétaire. Sans réponses, tu les complètes avant la prochaine version.
7. Lis les conditions, coche la case d'accord, puis clique sur Accept.

Le transfert passe en Processing App Transfer, jusqu'à deux jours ouvrés. Si l'app demande des documents d'export, elle passe par Waiting for Export Compliance. À la fin, les deux titulaires sont prévenus, et l'app disparaît du compte du cédant. **Le destinataire crée ensuite de nouveaux profils de provisionnement**, liés à l'App ID de l'app et à son certificat de distribution : voir [certificats et profils iOS](https://devoria.fr/blog/certificat-provisioning-profile-ios).

Tant que le statut est Waiting for Recipient, chacun peut annuler : Cancel Transfer pour le cédant, Decline pour le destinataire, dans la section App Transfers de Business.

## Ce qui suit l'app et ce qui casse

| Élément                             | Après le transfert                                          | À faire                                                         |
| ----------------------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| Bundle ID et App ID                 | Ils suivent, un App ID générique devient explicite          | Rien                                                            |
| Notes, avis, mises à jour           | Ils suivent, l'app reste en vente                           | Rien                                                            |
| Abonnements renouvelables           | Ils exigent un secret partagé propre à l'app                | Secret transmis avant, régénéré après                           |
| iCloud                              | Données, conteneurs et identifiants clé-valeur suivent      | Mettre à jour les identifiants clé-valeur des entitlements      |
| Service ID Sign in with Apple       | Il suit, sauf si tu retires l'association avant             | Identifiants de transfert à échanger sous 60 jours              |
| Webhooks                            | Ils suivent                                                 | Les supprimer avant, ou les rediriger après                     |
| Notifications push                  | Les certificats restent valables jusqu'à leur expiration    | Clé APNs du destinataire, serveurs mis à jour                   |
| Trousseau partagé                   | Il marche jusqu'à la mise à jour suivante                   | Groupe recréé avec le Team ID du destinataire                   |
| App Groups                          | L'app reste disponible                                      | Groupe supprimé chez le cédant, enregistré chez le destinataire |
| Apple Pay                           | Le merchant ID ne suit pas                                  | Nouveau merchant ID avant la prochaine mise à jour              |
| Cartes Wallet                       | Celles mises à jour par l'app doivent être réémises         | Nouvel identifiant                                              |
| Codes promo                         | Plus aucun nouveau code                                     | Anciens codes valables quatre semaines                          |
| Ventes et paiements                 | Le cédant garde l'avant, le destinataire reçoit l'après     | Exporter avant de lancer                                        |
| App Analytics                       | Le cédant perd l'accès, le destinataire reçoit l'historique | Rien                                                            |
| Nominations, historique des bundles | Ils ne suivent pas                                          | Les noter et les transmettre avant de lancer                    |

Le trousseau mérite une attention particulière. Apple prévient : après la mise à jour, l'app ne retrouve plus le jeton de connexion rangé dans le trousseau partagé, et **les utilisateurs doivent se reconnecter une fois**. Si ton app partage son trousseau avec une autre app ou une extension, préviens tes utilisateurs avant de publier cette mise à jour.

Pour Game Center, les groupes, les classements fusionnés et les règles de matchmaking sont à refaire par le destinataire. Les apps Mac Catalyst se transfèrent en deux temps, l'app iPad d'abord.

## Sign in with Apple : les identifiants de transfert

Avec Sign in with Apple, l'identifiant de chaque utilisateur est propre à ton équipe. Le destinataire ne peut pas le réutiliser tel quel. La [documentation d'Apple sur le transfert des utilisateurs](https://developer.apple.com/documentation/signinwithapple/transferring-your-apps-and-users-to-another-team) prévoit trois temps :

1. **Dégroupe tes apps.** Une app groupée avec d'autres pour Sign in with Apple ne se transfère pas.
2. **Génère un identifiant de transfert par utilisateur.** Avec un jeton obtenu sous le scope `user.migration`, tu appelles le point d'accès `usermigrationinfo` avec l'identifiant de l'utilisateur et le Team ID du destinataire. La réponse contient un `transfer_sub`.
3. **Transmets seulement les identifiants de transfert.** Ni les identifiants de ton équipe, ni les adresses e-mail privées.

Tu peux générer ces identifiants avant l'acceptation, ou jusqu'à 60 jours après. **Le destinataire a 60 jours après l'acceptation pour les échanger contre ses propres identifiants.** Planifie cet échange avant de lancer le transfert. Autre effet : si un utilisateur n'a aucune autre de tes apps, tu ne peux plus lui écrire à son adresse privée après le transfert. Les règles de connexion sont dans [la guideline 4.8](https://devoria.fr/blog/guideline-4-8-connexion-avec-apple).

## Les délais à retenir

| Étape                                       | Délai                               |
| ------------------------------------------- | ----------------------------------- |
| Acceptation par le destinataire             | 60 jours après le lancement         |
| Traitement après l'acceptation              | Jusqu'à deux jours ouvrés           |
| Échange des identifiants Sign in with Apple | 60 jours après l'acceptation        |
| Codes promo existants                       | Quatre semaines après leur création |
| Certificats APNs du transfert               | Jusqu'à leur date d'expiration      |

## Ma liste pour une app Expo avec RevenueCat

Voici ce que je vérifierais, dans l'ordre, pour l'une de mes apps :

1. **Exporter** ventes, téléchargements et analytics avant de lancer.
2. **Attendre** que la dernière version soit en vente, et que les achats intégrés aient un statut autorisé.
3. **Couper TestFlight** : builds, testeurs et Test Information.
4. **Transmettre le secret partagé** propre à l'app, puis lancer le transfert.
5. **Côté destinataire, après l'acceptation** : un nouveau secret partagé, renseigné dans tout service qui vérifie les abonnements, RevenueCat compris. Les clés d'achat intégré se créent dans Users and Access, onglet Integrations, et ne se téléchargent qu'une fois, d'après [l'aide d'App Store Connect](https://developer.apple.com/help/app-store-connect/configure-in-app-purchase-settings/generate-keys-for-in-app-purchases).
6. **Vérifier l'adresse des notifications serveur** dans la fiche de l'app. La page d'Apple sur le transfert n'en parle pas : contrôle-la plutôt que de la supposer.
7. **Recréer les profils** et la clé APNs dans le compte du destinataire. Pour une app Expo, la marche à suivre est dans [le certificat push APNs avec Expo](https://devoria.fr/blog/certificat-push-apns-expo).
8. **Publier une mise à jour** signée par le nouveau compte, en prévenant d'une reconnexion si le trousseau est partagé.

## Publier sans perdre ce qui marche

Le [Kit iOS](https://devoria.fr/kits/ios) part du code de départ de mes apps et suit quatre étapes jusqu'à l'App Store, à ton rythme. La démarche complète est sur la page [publier une application sur l'App Store](https://devoria.fr/expertise/publier-une-application-sur-app-store).

Avant de changer quoi que ce soit, [fais ton diagnostic gratuit](https://devoria.fr/diagnostic) : il remet les étapes dans l'ordre et t'envoie ma checklist anti-refus Apple.

## Questions fréquentes

### Combien de temps prend un transfert d'app sur l'App Store ?

Le destinataire a 60 jours pour accepter. Une fois l'acceptation faite, Apple annonce jusqu'à deux jours ouvrés de traitement. Si l'app demande des documents d'export, une étape de vérification s'ajoute.

### L'app disparaît-elle de l'App Store pendant le transfert ?

Non. L'app reste en vente pendant et après le transfert. Elle garde ses notes, ses avis et son Bundle ID, et ses utilisateurs continuent de recevoir les mises à jour.

### Les abonnés gardent-ils leur abonnement après un transfert ?

Apple ne décrit aucune coupure pour les abonnés. Sa seule exigence porte sur le secret partagé propre à l'app : le cédant le transmet avant, le destinataire met ses serveurs à jour, puis en génère un nouveau après le transfert.

### Peut-on transférer une app qui n'a jamais été publiée ?

Non. L'app doit avoir au moins une version publiée sur l'App Store. Elle ne doit pas non plus être en précommande ni en cours de revue.

### Qui peut lancer et accepter un transfert d'app ?

Seuls les titulaires des comptes, appelés Account Holder. Le cédant a besoin de l'identifiant Apple du titulaire destinataire et du Team ID de son compte.

### Peut-on annuler un transfert d'app ?

Oui, tant que le statut est Waiting for Recipient. Le cédant clique sur Cancel Transfer, et le destinataire sur Decline, dans la section App Transfers de Business. Sans réponse, le transfert expire après 60 jours.


## Ton projet

[Kit Review](https://devoria.fr/kits/review-apple) : Tout ce que je vérifie avant d'envoyer une app à Apple, la même vérification pour Google Play, et trois skills qui font la relecture avec Claude Code. 49 €, paiement unique. Inclus : La checklist avant l'envoi ; Les refus que j'ai pris, et ce que j'ai corrigé ; Les notes pour le testeur ; Les skills de vérification. Prérequis : une app iPhone ou Android presque prête, et Claude Code ou Cursor. Téléchargement immédiat après le paiement.

[Kit iOS & Android Devoria](https://devoria.fr/kits/ios) : Le code de départ de mes apps, le parcours jusqu'à l'App Store et Google Play avec les messages à donner à Claude, et tous les kits. Claude part d'une app qui tourne déjà. 99 €, paiement unique. Inclus : Le code de départ de ton app ; Les styles visuels ; Le parcours pas à pas ; Kit Review ; Kit Captures ; Kit ASO ; Mises à jour à vie ; Bonus : la séance 1:1 à moitié prix. Prérequis : pour l'iPhone, un Mac avec Xcode 26 ou plus et un compte Apple Developer (99 $ par an) pour publier. Pour Android, Android Studio sur un Mac, un PC Windows ou Linux, et un compte Google Play Console (25 $, une fois). Et Claude Code (abonnement payant) ou Cursor. Téléchargement immédiat après le paiement.

[Diagnostic gratuit](https://devoria.fr/diagnostic) : quelques questions sur ton projet. Il dit ce qui te bloque vraiment, l'ordre des quatre étapes et le kit qui correspond. En laissant ton e-mail, tu reçois la checklist anti-refus Apple : les points vérifiés avant chaque envoi, tirés des refus reçus par les apps du studio.

[Une heure avec moi](https://devoria.fr/coaching) : On regarde ton app ou ton projet Claude, écran partagé : ce qui bloque, ce que je change en premier, et dans quel ordre. 100 € la séance d'une heure, en visio, paiement en une fois. Sujets : L'audit de ton app ; Ton travail avec Claude ; Ta fiche et ton paywall ; Un refus d'Apple.
