Créer un abonnement iOS à renouvellement automatique
Copiez un prompt de configuration incluant les étapes d'installation et le guide markdown complet pour ce plugin.
Les abonnements renouvelables automatiquement offrent un accès récurrent à du contenu, des services ou des fonctionnalités premium dans votre application iOS. Ce guide vous accompagne dans la création d'abonnements via App Store Connect.
Les abonnements renouvelables automatiquement se renouvellent à la fin de chaque période de facturation jusqu'à ce que l'utilisateur les annule. Ils sont parfaits pour :
- Le contenu et les fonctionnalités premium
- Expérience sans publicité
- Le stockage cloud et la synchronisation
- Les services de streaming
- Les outils et utilitaires professionnels
Prerequisites
Section intitulée « Prérequis »Avant de créer des abonnements, vous devez :
- Créer un groupe d'abonnements pour organiser vos abonnements
- Avoir un compte Apple Developer Program actif
- Compléter les informations bancaires et fiscales dans App Store Connect
Créer un abonnement
Section intitulée « Créer un abonnement »-
Accéder aux abonnements
Dans App Store Connect, sélectionnez votre app et allez dans Monétisation > Abonnements.
Sélectionnez votre groupe d'abonnements ou créez-en un nouveau si nécessaire.

-
Créer un nouvel abonnement
Cliquez sur les + l'icône à côté de votre groupe d'abonnement pour ajouter un nouvel abonnement.
-
Saisir les informations de base
Nom de référence: Nom descriptif pour votre usage interne (non visible par les clients)
- Exemples : « Premium Mensuel », « Ultimate Annuel », « Plan Basic »
ID du produit: Identifiant unique pour cet abonnement (ne pourra plus être modifié)
- Format :
com.yourcompany.yourapp.premium_monthly - Utilisez des noms descriptifs en minuscules avec des underscores
- Requis pour configurer le plugin native-purchases

-
Configurer la durée
Sélectionnez la durée de l'abonnement parmi les options disponibles :
- 1 semaine
- 1 mois
- 2 mois
- 3 mois
- 6 mois
- 1 an
La durée détermine la fréquence de facturation des utilisateurs.
-
Configurer les tarifs
Cliquez Ajouter le prix de l'abonnement pour configurer les tarifs :
Territoire de base: Sélectionnez votre marché principal (généralement votre pays)
Prix: Définissez le prix de l'abonnement
- Apple convertit automatiquement vers les autres devises
- Choisissez parmi les paliers de prix d'Apple
- Tenez compte de la valeur perçue et des prix du marché

-
Partage familial (optionnel)
Décidez d'activer ou non le partage familial, qui permet jusqu'à 6 membres de la famille d'accéder à l'abonnement.
Activez si :
- Le contenu est adapté à un usage familial
- Vous souhaitez renforcer votre proposition de valeur
- Votre modèl’économique le permet
N'activez pas si :
- L'abonnement est réservé à un usage individuel
- Le contenu est personnalisé pour l'utilisateur
- Vous voulez maximiser les revenus par utilisateur
-
Ajouter des localisations
Add subscription display information in all languages your app supports:
Nom d'affichage de l'abonnement: Nom visible par le client (ex: « Premium Mensuel »)
Description: Brève description du contenu de l'abonnement
- Soyez concis et axé sur les bénéfices
- Mentionnez les fonctionnalités clés
- Mettez en avant la proposition de valeur

-
Image promotionnelle App Store (optionnel)
Envoyez une image promotionnelle pour cet abonnement (312x390 pixels) :
- S'affiche sur la page d'abonnement de l'App Store
- Doit correspondre au design de votre app
- Inclure le nom de l'abonnement pour plus de clarté
-
Enregistrer et soumettre
Cliquez Enregistrer pour créer l'abonnement.
Pour le premier abonnement :
- Doit être soumis avec une nouvelle version de l'app
- À inclure dans votre prochaine soumission sur l'App Store
- Ne peut pas être soumis indépendamment
Pour les abonnements suivants :
- Peuvent être soumis directement depuis la page Subscriptions
- Ne nécessitent pas de nouvelle version de l'app
- Disponibles après l'approbation du premier abonnement
Statut de l'abonnement
Section intitulée « Statut de l'abonnement »Votre abonnement aura l'un des statuts suivants :
| Statut | Description | Test possible ? |
|---|---|---|
| Métadonnées manquantes | Configuration incomplète | Oui (sandbox) |
| Prêt pour la soumission | Terminé mais non soumis | Oui (sandbox) |
| En attente de révision | Soumis à Apple | Oui (sandbox) |
| En cours d'examen | En cours de révision par Apple | Oui (sandbox) |
| Approuvé | Disponible à l'achat | Oui |
| Refusé | Modifications requises | Oui (sandbox) |
Utilisation dans votre application
Section titled “Using in Your App”Une fois créée, référencez l'abonnement dans votre application via l'ID du produit :
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Fetch subscription products direct from StoreKitconst { products } = await NativePurchases.getProducts({ productIdentifiers: [ 'com.yourcompany.yourapp.premium_monthly', 'com.yourcompany.yourapp.premium_annual', ], productType: PURCHASE_TYPE.SUBS,});
products.forEach((product) => { console.log(`${product.title}: ${product.priceString}`); console.log(`Duration: ${product.subscriptionPeriod}`); console.log(`Description: ${product.description}`);});
// Purchase a subscription (StoreKit 2 automatically handles intro pricing and offers)try { const transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'com.yourcompany.yourapp.premium_monthly', productType: PURCHASE_TYPE.SUBS, });
console.log('Transaction ID:', transaction.transactionId);
// StoreKit receipts are included on iOS for server-side validation await sendReceiptToBackend(transaction.receipt);} catch (error) { console.error('Purchase failed:', error);}
// Check subscription status using the store's dataconst { purchases } = await NativePurchases.getPurchases({ productType: PURCHASE_TYPE.SUBS,});
const premium = purchases.find( (purchase) => purchase.productIdentifier === 'com.yourcompany.yourapp.premium_monthly',);
if (premium?.isActive) { console.log('Expires:', premium.expirationDate); console.log('Will renew:', premium.willCancel === false); console.log('Store state:', premium.subscriptionState); unlockPremiumFeatures();} else { showPaywall();}Mensuel avec engagement de 12 mois
Section intitulée « Plans mensuels avec engagement de 12 mois »Si votre abonnement dans App Store Connect est configuré avec un plan de facturation mensuel et un engagement de 12 mois, StoreKit peut renvoyer des conditions tarifaires supplémentaires pour ce produit. Utilisez ces conditions pour afficher le montant mensuel, le prix total de l'engagement et la durée totale de l'engagement avant l'achat.
const yearlyProduct = products.find( (product) => product.identifier === 'com.yourcompany.yourapp.premium_annual',);
const monthlyCommitment = yearlyProduct?.pricingTerms?.find( (term) => term.billingPlanType === 'monthly',);
if (yearlyProduct && monthlyCommitment) { console.log('Monthly charge:', monthlyCommitment.billingDisplayPrice); console.log('Total commitment:', monthlyCommitment.commitmentInfo?.priceString);
await NativePurchases.purchaseProduct({ productIdentifier: yearlyProduct.identifier, productType: PURCHASE_TYPE.SUBS, billingPlanType: 'monthly', });}Pour le flux complet du paywall et des entitlements, consultez Plans de facturation mensuels avec engagement sur iOS.
Bonnes pratiques
Section intitulée « Bonnes pratiques »Stratégie de tarification
Section intitulée « Stratégie de tarification »- Plans mensuels: Barrière à l'entrée plus faible, crée l'habitude
- Plans annuels: Plus de valeur, LTV plus élevée, churn réduit
- Plusieurs niveaux: Basic, Premium, Ultimate pour différents segments d’utilisateurs
- Analyse concurrentielle: Étudiez les tarifs des applications similaires
ID de produit
Section intitulée « Product IDs »- Utilisez une nomenclature cohérente :
company.app.tier_duration - Incluez le niveau et la durée dans l’ID :
premium_monthly,ultimate_annual - Évitez de modifier les product IDs (ils sont permanents)
- Documentez tous les product IDs pour votre équipe
Partage familial
Section intitulée « Partage familial »- Activez pour les apps familiales (jeux, éducation, divertissement)
- Évaluez l'impact sur vos revenus
- Testez minutieusement le comportement du partage
- Communiquez les fonctionnalités de partage dans votre marketing
Localisation
Section intitulée « Localisation »- Traduisez tous les noms et descriptions d'abonnements
- Prenez en compte les différences de prix régionales
- Testez l'affichage dans toutes les langues supportées
- Utilisez un langage marketing adapté à la culture locale
Images promotionnelles
Section intitulée « Images promotionnelles »- Maintenir un style visuel cohérent
- Inclure le nom de l'abonnement et l'avantage clé
- Mettre à jour pour les promotions saisonnières
- Respecter la charte graphique de l'application
Modèles d'abonnement courants
Section intitulée « Modèles d'abonnement courants »Niveau unique (Freemium)
Section intitulée « Niveau unique (Freemium) »Free App + Premium Subscription- Basic: Free (limited features)- Premium Monthly: $4.99- Premium Annual: $39.99 (save 33%)Multi-niveaux (Basique, Premium, Pro)
Section intitulée « Multi-niveaux (Basique, Premium, Pro) »- Basic Monthly: $4.99- Premium Monthly: $9.99- Ultimate Monthly: $19.99
- Basic Annual: $49.99- Premium Annual: $99.99- Ultimate Annual: $199.99Hybride consommable + abonnement
Section intitulée « Hybride Consommable + Abonnement »- Credit packs (consumable)- Monthly subscription (unlimited credits)- Annual subscription (unlimited + bonus features)Troubleshooting
Section intitulée « Dépannage »L'abonnement ne se charge pas dans l'app :
- Vérifiez que l'ID du produit correspond exactement (sensible à la casse)
- Vérifiez que l'abonnement fait partie d'un groupe d'abonnements
- Assurez-vous que le bundle identifier correspond à App Store Connect
- Attendez 2 à 3 heures après la création du produit
Impossible de soumettre l'abonnement :
- Remplissez tous les champs requis (nom, description, prix)
- Ajoutez au moins une localisation
- Vérifier l'approbation des infos bancaires/fiscales
- Vérifier si c'est le premier abonnement (nécessite une version de l'app)
Option Family Sharing désactivée :
- Déjà activée (impossible de la désactiver)
- Vérifiez dans les détails de l'abonnement
- Contacter le support Apple en cas de blocage
Palier de prix indisponible :
- Peut être restreint dans certains territoires
- Choisissez un autre palier
- Contacter Apple pour toute question sur les prix
Erreur « Invalid Product ID » :
- Doit être au format domaine inversé
- Ne peut pas contenir d'espaces ou de caractères spéciaux
- Vérifiez les fautes de frappe
- Vérifiez l'unicité de l'ID parmi tous les produits
Étapes suivantes
Section intitulée « Étapes suivantes »- Créez une offre d'introduction pour attirer de nouveaux abonnés
- Plans de facturation mensuels pour produits dérivés pour les offres d'abonnement annuel prises en charge
- Configurer le test sandbox pour tester vos abonnements
- Configurez des offres promotionnelles pour la réactivation et la rétention
- Implémentez le suivi analytique des abonnements
Ressources complémentaires
Section intitulée « Ressources complémentaires »Pour plus de détails, consultez la documentation officielle d'Apple sur les abonnements renouvelables automatiquement.
Continuer après Créer un abonnement iOS renouvelable automatiquement
Section intitulée « Continuer après Créer un abonnement iOS renouvelable automatiquement »Si vous utilisez Créer un abonnement iOS à renouvellement automatique pour planifier la validation et la distribution sur le store, connectez-l’à Utiliser @capgo/native-purchases pour la capacité native dans Utiliser @capgo/native-purchases @capgo/capacitor-in-app-review pour le détail d'implémentation dans @capgo/capacitor-in-app-review, Utiliser @capgo/capacitor-in-app-review pour la capacité native dans Utiliser @capgo/capacitor-in-app-review, @capgo/capacitor-native-market pour le détail d'implémentation dans @capgo/capacitor-native-market, et Utiliser @capgo/capacitor-native-market pour la capacité native dans Utiliser @capgo/capacitor-native-market.