---
title: "Release checklist"
description: "Suivez la checklist de publication d'Adapty pour garantir une mise à jour fluide de votre application."
---

Nous sommes ravis que vous ayez choisi d'utiliser Adapty ! Nous espérons que l'intégration s'est bien passée. Ce guide vous accompagne étape par étape pour vous assurer que votre application est prête à être publiée sur les stores et que le flux de monétisation fonctionne correctement.

## Prérequis avant de commencer \{#pre-flight-essentials\}

Ce dont vous avez besoin avant de démarrer la validation :

- Un vrai appareil avec un compte sandbox

- Accès à l'Adapty Dashboard

- Accès à App Store Connect / Google Play Console

:::note
Bien que les achats sandbox puissent fonctionner sur des simulateurs, les vrais appareils sont nécessaires pour tester tous les flux, notamment les fenêtres de paiement et les invites biométriques.
:::

<Button id="test-purchases-in-sandbox">
    Guide de test pour App Store
</Button>

<Button id="testing-on-android">
    Guide de test pour Google Play
</Button>

## Validations universelles \{#universal-validations\}

- [ ] **Connexion au store** : Assurez-vous d'avoir connecté Adapty à l'App Store et/ou Google Play :
    - [ ] [App Store](initial_ios)
    - [ ] [Google Play](initial-android)
- [ ] **Livraison des événements d'abonnement** : Confirmez que les notifications serveur sont configurées :
    - [ ] [Notifications serveur App Store](enable-app-store-server-notifications)
    - [ ] [Notifications développeur en temps réel (RTDN)](enable-real-time-developer-notifications-rtdn)
- [ ] **Identification du profil** : Validez la logique d'identification des utilisateurs et assurez-vous que les achats sont associés au bon profil :
    - [ ] [Vérifiez que la logique d'identification dans le code de votre application correspond à votre cas d'usage](ios-quickstart-identify)
    - [ ] [Assurez-vous de comprendre la logique parent/héritier pour le partage d'accès payant entre les profils utilisateurs](sharing-paid-access-between-user-accounts)
- [ ] **Offres** : Si vous avez des offres promotionnelles App Store dans l'application, assurez-vous d'avoir [ajouté votre clé d'achat intégré](app-store-connection-configuration#step-4-for-trials-and-special-offers--set-up-promotional-offers) à la fois dans le champ principal et dans la section **App Store promotional offers**.
- [ ] **Collecte de données** : Assurez-vous de respecter la confidentialité :
    - [ ] Si vous devez vous conformer à des réglementations sur la vie privée comme le RGPD ou le CCPA, ou si votre application est destinée aux enfants, contrôlez si vous [activez la collecte et le partage de l'IDFA et de l'IP](sdk-installation-ios#data-policies).
    - [ ] Si votre application utilise AppTrackingTransparency, assurez-vous d'[envoyer le statut d'autorisation à Adapty](ios-deal-with-att).
- [ ] **Labels de confidentialité** : [En savoir plus](apple-app-privacy) sur les données collectées par Adapty et les indicateurs à définir pour la revue.

## Validations des achats \{#purchase-validations\}

:::tip
Des questions ou des problèmes ? Consultez notre [forum d'assistance](https://adapty.featurebase.app/) où vous trouverez des réponses aux questions fréquentes ou pourrez poser les vôtres. Notre équipe et notre communauté sont là pour vous aider !
:::

Avant le lancement, assurez-vous que les achats intégrés fonctionnent correctement dans votre application et que votre paywall est prêt pour la revue du store.

La façon dont vous validez les achats intégrés dépend de la manière dont vous les implémentez :

- Vous affichez un paywall créé avec le Paywall Builder d'Adapty
- Vous avez implémenté votre propre paywall et utilisez la méthode `makePurchase` pour gérer les achats
- Vous utilisez Adapty en mode observateur (avec le Paywall Builder d'Adapty ou votre propre paywall)

<Tabs groupId="paywall" queryString>
<TabItem value="builder" label="Adapty Paywall Builder" default>

**Objectif** : Adapty affiche le paywall, les utilisateurs peuvent acheter des produits, l'accès se déverrouille et le flux de restauration fonctionne.

- [ ] Votre application [affiche le paywall](ios-present-paywalls) depuis le même placement que celui que vous allez déployer.
    - [ ] Le paywall s'affiche à l'écran. Si le chargement prend trop de temps (par exemple, si vous ou vos utilisateurs avez une connexion instable), envisagez d'[ajuster votre politique de récupération](get-pb-paywalls#fetch-paywall-designed-with-paywall-builder).
    - [ ] Le paywall correspond à la variante attendue (audience/langue si applicable). Vous pouvez [modifier la priorité de l'audience](change-audience-priority) si nécessaire.
- [ ] Les produits et les prix s'affichent sur le paywall. Notez que l'API d'Apple peut occasionnellement fournir des prix inexacts lors des tests (notamment avec différentes configurations de région), donc privilégiez le test du fonctionnement du flux d'achat plutôt que la précision des prix, car Adapty n'a pas d'influence sur les prix du store.
- [ ] L'achat sandbox se termine avec succès. Le callback d'achat réussi est bien reçu.
- [ ] L'accès se déverrouille et persiste. Confirmez que [l'accès payant est accordé en fonction du profil Adapty actuel](ios-check-subscription-status#connect-profile-with-paywall-logic).
    - [ ] Après l'achat, le profil Adapty a un niveau d'accès actif.
    - [ ] Les fonctionnalités payantes se déverrouillent quand le profil contient ce niveau d'accès (pas seulement au moment du callback d'achat).
- [ ] La restauration des achats fonctionne. Quand vous réinstallez l'application ou l'installez sur un nouvel appareil, la restauration automatique des achats fonctionne conformément au paramètre [Partage d'accès payant](sharing-paid-access-between-user-accounts). Si vous n'avez pas d'authentification backend, les achats sont restaurés automatiquement quel que soit le paramètre. Dans les autres cas, assurez-vous que les utilisateurs peuvent restaurer leurs achats après avoir réinstallé l'application.
- [ ] Exigences pour la revue du store :
    - [ ] Le bouton **Restore purchases** est présent sur le paywall. Vous pouvez l'ajouter dans le Paywall Builder, et il traitera automatiquement les restaurations d'achats lorsqu'il est tapé.
    - [ ] Les Conditions d'utilisation et la Politique de confidentialité sont accessibles depuis l'écran du paywall, et cliquer sur ces liens les ouvre dans un navigateur.

</TabItem>
<TabItem value="makepurchase" label="Custom paywall (makePurchase)" default>

**Objectif** : Vous affichez l'interface ; Adapty gère les achats, les mises à jour de profil et les restaurations.

- [ ] Les identifiants de produits ne sont pas codés en dur dans votre code. Vous ne codez en dur que les identifiants de [placement](placements).
- [ ] Votre application [récupère les produits](fetch-paywalls-and-products) depuis le même placement que celui que vous allez déployer.
    - [ ] La liste des produits se charge correctement. Si le chargement prend trop de temps (par exemple, si vous ou vos utilisateurs avez une connexion instable), envisagez d'[ajuster votre politique de récupération](fetch-paywalls-and-products#fetch-paywall-information).
    - [ ] Les produits récupérés correspondent à la variante attendue (audience/langue si applicable). Vous pouvez [modifier la priorité de l'audience](change-audience-priority) si nécessaire.
- [ ] Les produits et les prix s'affichent sur le paywall. Notez que l'API d'Apple peut occasionnellement fournir des prix inexacts lors des tests (notamment avec différentes configurations de région), donc privilégiez le test du fonctionnement du flux d'achat plutôt que la précision des prix, car Adapty n'a pas d'influence sur les prix du store.
- [ ] L'achat sandbox avec [makePurchase](making-purchases) se termine avec succès :
    - [ ] Le résultat d'achat réussi est bien géré.
    - [ ] Les résultats en attente/échoués/annulés sont gérés correctement.
- [ ] Si vous [utilisez un Remote Config](present-remote-config-paywalls), ses valeurs sont correctement transmises à votre paywall.
- [ ] Quand un paywall est affiché, la méthode [`logShowFlow` (iOS SDK v4+) / `logShowPaywall`](present-remote-config-paywalls#track-paywall-view-events) est appelée.
- [ ] L'achat sandbox se termine avec succès. Le callback d'achat réussi est bien reçu.
- [ ] L'accès se déverrouille et persiste. Confirmez que [l'accès payant est accordé en fonction du profil Adapty actuel](ios-check-subscription-status#connect-profile-with-paywall-logic).
    - [ ] Après l'achat, le profil Adapty a un niveau d'accès actif.
    - [ ] Les fonctionnalités payantes se déverrouillent quand le profil contient ce niveau d'accès (pas seulement au moment du callback d'achat).
- [ ] La restauration des achats fonctionne. Quand vous réinstallez l'application ou l'installez sur un nouvel appareil, la restauration automatique des achats fonctionne conformément au paramètre [Partage d'accès payant](sharing-paid-access-between-user-accounts). Si vous n'avez pas d'authentification backend, les achats sont restaurés automatiquement quel que soit le paramètre. Dans les autres cas, assurez-vous que les utilisateurs peuvent restaurer leurs achats après avoir réinstallé l'application.
- [ ] Exigences pour la revue du store :
    - [ ] Le bouton **Restore purchases** est accessible et [gère les restaurations](restore-purchase).
    - [ ] Les Conditions d'utilisation et la Politique de confidentialité sont accessibles depuis l'écran du paywall, et cliquer sur ces liens les ouvre dans un navigateur.

</TabItem>
<TabItem value="observer" label="Observer mode">

**Objectif** : Vous gérez les achats, les mises à jour de profil et les restaurations vous-même ; Adapty reçoit les rapports de transactions.

- [ ] **Votre application effectue les achats via votre propre flux d'achat** (StoreKit / BillingClient / backend) :
    - [ ] L'achat sandbox réussit dans l'interface du store.
    - [ ] Les résultats en attente/échoués/annulés sont gérés correctement dans votre application.
- [ ] **Les transactions sont signalées à Adapty**.
    - [ ] Le mode observateur est [activé dans le code de votre application](implement-observer-mode).
    - [ ] L'achat apparaît dans le fil d'événements Adapty.
    - [ ] Les renouvellements, annulations et remboursements sont reflétés au fil du temps (le cas échéant).
- [ ] **Les vues de paywall sont suivies**. La méthode [`logShowFlow` (iOS SDK v4+) / `logShowPaywall`](present-remote-config-paywalls#track-paywall-view-events) est appelée lorsqu'un paywall est affiché.
- [ ] **La restauration des achats fonctionne pour votre implémentation**. La réinstallation de l'application ou le changement d'appareil restaure correctement l'accès.
- [ ] **Exigences pour la revue du store** :
    - [ ] L'action **Restore purchases** est accessible et déclenche votre flux de restauration.
    - [ ] Les Conditions d'utilisation et la Politique de confidentialité sont accessibles depuis le paywall ou l'écran d'achat et s'ouvrent dans un navigateur.
</TabItem>

</Tabs>

Si vous avez des questions sur l'intégration du SDK Adapty, utilisez le chatbot IA en bas à droite ou contactez-nous à [support@adapty.io](mailto:support@adapty.io).