Passer à la navigation principale

Créer une souscription iOS Auto-Renewable

GitHub

Les abonnements renouvelables automatiques fournissent un accès récurrent à du contenu, des services ou des fonctionnalités premium dans votre application iOS. Ce guide vous guide à travers la création d'abonnements dans App Store Connect.

Les abonnements renouvelables automatiques se renouvellent automatiquement à la fin de chaque période de facturation tant que les utilisateurs ne les annulent pas. Ils sont parfaits pour :

  • Contenu et fonctionnalités premium
  • Expériences sans publicités
  • Stockage et synchronisation sur le cloud
  • Services de streaming
  • Outils et utilitaires professionnels

Avant de créer des abonnements, vous devez :

  1. Créer un groupe d'abonnements pour organiser vos abonnements
  2. Avoir un abonnement actif au programme Apple Developer
  3. Compléter les informations bancaires et fiscales dans App Store Connect
  1. Naviguez vers les Abonnements

    Dans App Store Connect, sélectionnez votre application et allez à Monétiser > Abonnements.

    Sélectionnez votre groupe d'abonnements ou créez-en un nouveau si nécessaire.

    Navigatez vers les abonnements

  2. Créez un nouvel abonnement

    Cliquez sur l' + icône située à côté de votre groupe d'abonnements pour ajouter un nouvel abonnement.

  3. Entrez les informations de base

    Nom de référence: Nom déscriptif pour votre utilisation interne (ne sera pas affiché aux clients)

    • Exemples : « Abonnement Premium Mensuel », « Abonnement Annuel Ultime », « Plan de Base »

    ID du produit: Identifiant unique pour cet abonnement (ne peut pas être modifié ultérieurement)

    • Format : com.yourcompany.yourapp.premium_monthly
    • Utilisez des noms déscriptifs en minuscule avec des tirets bas
    • Nécessaire pour la configuration du plugin native-purchases

    Entrer les détails de l'abonnement

  4. 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 combien de fois les utilisateurs sont facturés.

  5. Définir les tarifs

    Cliquez Ajoutez le prix d'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 en autres devises
    • Choisissez parmi les paliers de tarifs d'Apple
    • Pensez à la valeur perçue et aux taux du marché

    Configurez les tarifs

  6. Partage familial (Facultatif)

    Decidez si activer la partage de famille, qui permet jusqu'à 6 membres de la famille d'accéder à l'abonnement.

    Activer si :

    • Le contenu est approprié pour un usage familial
    • Vous souhaitez augmenter la valeur proposition
    • Votre modèle commercial le supporte

    Ne pas activer si :

    • L'abonnement est réservé à un usage individuel
    • Le contenu est personnalisé pour l'utilisateur
    • Vous souhaitez maximiser le revenu par utilisateur
  7. Ajouter les localisations

    Ajoutez les informations de visualisation de l'abonnement dans toutes les langues que votre application prend en charge :

    Nom de l'abonnement (visuel): Nom affiché à l'utilisateur (par exemple, « Premium mensuel »)

    Description: Description concise de ce que l'abonnement comprend

    • Tenez-le concis et axé sur les avantages
    • Mentionnez les fonctionnalités clés
    • Mettez en avant la proposition de valeur

    Ajouter les localisations

  8. Image de promotion de l'App Store (facultatif)

    Téléchargez une image de promotion pour cet abonnement (312x390 pixels) :

    • Affichez la page de l'abonnement de l'App Store
    • Correspond à la conception de votre application
    • Incluez le nom de l'abonnement pour plus de clarté
  9. Enregistrer et Soumettre

    Cliquez Enregistrer Pour la première abonnement :

    Doit être soumis avec une nouvelle version de l'application

    • Créez l'abonnement.
    • Incluez dans votre prochaine soumission sur l'App Store
    • Ne peut pas être soumis indépendamment

    Pour les abonnements ultérieurs :

    • Peut être soumis directement depuis la page Abonnements
    • Ne nécessitent pas une nouvelle version de l'application
    • Disponible après que le premier abonnement soit approuvé

Votre abonnement aura l'un de ces statuts :

StatutDescriptionPouvez-vous tester ?
Données manquantesConfiguration incomplèteOui (sandbox)
Prêt à soumettreComplet mais non soumisOui (sandbox)
En attente de revueSoumis à AppleOui (sandbox)
En examenEn cours d'examen par AppleOui (sandbox)
ApprouvéDisponible à l'achatOui
RejetéA besoin de changementsOui (mode sandbox)

Une fois créé, référez-vous à l'abonnement dans votre application en utilisant l'ID du produit :

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Fetch subscription products direct from StoreKit
const { 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 data
const { 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();
}

Si votre abonnement App Store Connect est configuré avec un plan de facturation mensuel et un engagement de 12 mois, StoreKit peut retourner des termes de tarification supplémentaires pour ce produit. Utilisez ces termes pour afficher le coût mensuel, le prix total de l'engagement et la période d'engagement complète 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 la mise en œuvre complète de la barrière payante et des droits, voir Plans de facturation mensuelle avec engagement sur iOS.

Stratégie de tarification

Section intitulée « Plans mensuels »
  • Plans mensuels: Barrière d'entrée plus faible, création de l'habitude
  • Plans annuels: Meilleure valeur, LTV plus élevé, taux de rotation plus bas
  • Niveaux multiples: Base, Premium, Ultimate pour différents segments d'utilisateurs
  • Analyse concurrentielle: Recherchez les tarifs similaires des applications concurrentes
  • Utilisez des noms de convention : company.app.tier_duration
  • Incluez le niveau et la durée dans l'ID : premium_monthly, ultimate_annual
  • Évitez de modifier les IDs de produit (ceux-ci sont permanents)
  • Documentez tous les identifiants de produit pour votre équipe
  • Activer pour les applications axées sur la famille (jeux, éducatif, divertissement)
  • Considérez l'impact sur les revenus
  • Testez le comportement de partage soigneusement
  • Communiquer la capacité de partage dans la publicité
  • Traduire tous les noms et descriptions de souscription
  • Considérez les différences de tarification régionale
  • Testez la mise en page dans toutes les langues prises en charge
  • Utilisez un langage marketing approprié à la culture
  • Maintenez un style visuel cohérent
  • Incluez le nom de l'abonnement et son bénéfice clé
  • Mise à jour pour les promotions saisonnières
  • Conformez-vous au langage de design de l'application
Free App + Premium Subscription
- Basic: Free (limited features)
- Premium Monthly: $4.99
- Premium Annual: $39.99 (save 33%)
- Basic Monthly: $4.99
- Premium Monthly: $9.99
- Ultimate Monthly: $19.99
- Basic Annual: $49.99
- Premium Annual: $99.99
- Ultimate Annual: $199.99
- Credit packs (consumable)
- Monthly subscription (unlimited credits)
- Annual subscription (unlimited + bonus features)

Le souscripton ne charge pas dans l'application :

  • Vérifiez que l'ID du produit correspond exactement (sensibilité à la casse)
  • Vérifiez que la souscription est dans le groupe de souscriptions
  • Assurez-vous que l'identifiant de l'application correspond à App Store Connect
  • Attendez 2-3 heures après avoir créé le produit

Impossible de soumettre la souscription :

  • Remplissez tous les champs obligatoires (nom, description, prix)
  • Ajoutez au moins une localisation
  • Vérifiez que les informations bancaires/taxes sont approuvées
  • Vérifiez si la première souscription (nécessite une mise à jour de l'application)

La fonctionnalité de partage familial est désactivée :

  • Déjà activée (ne peut pas être désactivée)
  • Vérifiez les détails de la souscription
  • Contactez le support Apple si vous êtes bloqué

Niveau de tarification non disponible :

  • Peut être restreint dans certaines régions
  • Choisissez un niveau alternatif
  • Contactez Apple pour poser des questions sur les tarifs

“Erreur de produit ID invalide” :

  • Doit être au format de domaine inversé
  • Ne doit pas contenir d'espaces ou de caractères spéciaux
  • Vérifiez les fautes d'orthographe
  • Vérifiez l'unicité par rapport à tous les produits

Pour plus de détails, consultez la documentation officielle d'Apple sur les souscriptions auto-renouvelables.

Continuez de la section Créer une souscription iOS auto-renouvelable

Section intitulée « Continuez de la section Créer une souscription iOS auto-renouvelable »

Si vous utilisez Créer une souscription iOS Auto-Renewable pour planifier l'approbation et la distribution dans l'app Store, connectez-l’à En utilisant @capgo/achats-natifs pour la capacité native dans En utilisant @capgo/achats-natifs, @capgo/capacitor-avis-de-l'utilisateur pour le détail d'implémentation dans @capgo/capacitor-avis-de-l'utilisateur, En utilisant @capgo/capacitor-avis-de-l'utilisateur pour la capacité native dans En utilisant @capgo/capacitor-avis-de-l'utilisateur, @capgo/capacitor-marché-natif pour le détail d'implémentation dans @capgo/capacitor-marché-natif, et En utilisant @capgo/capacitor-marché-natif pour la capacité native dans En utilisant @capgo/capacitor-marché-natif.