Sauter au contenu

Créer l'offre d'abonnement iOS introductive

GitHub

Les offres initiales vous permettent de fournir aux utilisateurs éligibles des essais gratuits ou des tarifs de démarrage réduits pour réduire les barrières à l'entrée et augmenter les conversions de souscriptions.

Les offres initiales sont l'un des outils les plus efficaces pour faire croître votre base de souscripteurs. Elles permettent aux utilisateurs de:

  • Essayer vos fonctionnalités premium sans risque
  • Expérimenter la valeur avant de s'engager
  • Démarrer à un point de prix inférieur
  • Construire la confiance dans votre produit

iOS prend en charge trois types d'offres initiales :

Les clients ont accès gratuit pendant une durée spécifiée. Une fois l'essai terminé, ils sont facturés au tarif standard si ils ne se désinscrivent pas.

Exemples :

  • 7 jours gratuits
  • 14 jours gratuits
  • 1 mois gratuit

Meilleur pour :

  • Abonnements de haute valeur
  • Applications riches en fonctionnalités
  • Création de l'habitude de l'utilisateur

Les clients paient un prix réduit unique qui couvre la période d'introduction.

Exemples :

  • $1.99 pour 2 mois (puis $9.99/mois)
  • $9.99 pour 3 mois (puis $19.99/mois)

Meilleur pour :

  • Signaux de engagement
  • Besoins en flux de trésorerie
  • Test de sensibilité au prix

Les clients paient un prix réduit pour plusieurs cycles de facturation.

Exemples :

  • 1,99 $ par mois pendant 3 mois (puis 9,99 $ par mois)
  • 4,99 $ par mois pendant 6 mois (puis 14,99 $ par mois)

Meilleur pour :

  • Engagement progressif
  • Démonstration de valeur à long terme
  • Réduction du risque perçu

Les utilisateurs ne peuvent recevoir des offres d'introduction que si :

  • Ils n'ont pas reçu précédemment une offre d'introduction pour le produit
  • Ils n'ont pas reçu d'offre d'introduction pour aucun produit du même groupe d'abonnement
  • N'avez-vous pas souscrit activement au produit

Vous devez d'abord créer une souscription auto-renouvelable avant d'ajouter une offre d'introduction.

  1. Naviguez vers Souscription

    Dans App Store Connect, allez dans la section Monétisation > Abonnements de votre application et sélectionnez l'abonnement que vous souhaitez ajouter une offre à.

  2. Ajouter un prix d'abonnement

    Cliquez sur + l'icône à côté de « Prix d'abonnement » pour ouvrir le modal de tarification.

  3. Créer une offre promotionnelle

    Sélectionnez « Créer une offre promotionnelle » des options.

    Créer une offre promotionnelle

  4. Configurez les pays et la date de début

    Pays et Régions: Sélectionnez où l'offre sera disponible

    • Choisissez tous les pays pour une portée maximale
    • Ou restreignez à des marchés spécifiques pour les tests

    Date de Début: Lorsque l'offre devient disponible

    • Peut être immédiat ou planifié pour l'avenir
    • Utile pour la coordination avec les campagnes de marketing

    Date de Fin (Optionnel): Lorsque l'offre expire

    • Laissé vide pour une disponibilité continue
    • Fixez une date pour des promotions à durée limitée
  5. Sélectionner le type d'offre

    Choisissez l'un des trois types d'offres :

    Gratuit (Essai gratuit)

    • Sélectionner la durée (jours, semaines, mois)
    • Exemples : 7 jours, 2 semaines, 1 mois

    Payer d'avance

    • Définir le prix de paiement unique
    • Définir la durée couverte par le paiement
    • Exemple : 1,99 $ pour 2 mois

    Payer à mesure

    • Définir le prix dégressif par période
    • Fixer le nombre de périodes
    • Exemple : 2,99 $ par mois pendant 3 mois
  6. Vérifier et Confirmer

    Vérifiez le résumé montrant :

    • Type et durée de l'offre
    • Détails de tarification
    • Prix régulier après la période d'introduction
    • Dates et pays d'availability
  7. Enregistrer

    Cliquez Enregistrer pour créer l'offre d'introduction. Elle sera disponible pour les tests immédiatement en mode sandbox.

Type: Free
Duration: 7 days
Then: $9.99/month

Parcours de l'utilisateur :

  • Jour 1-7 : Accès gratuit
  • Jour 8 : Première facture de 9,99 $
  • Les factures mensuelles continuent
Type: Pay Up Front
Price: $4.99
Duration: 3 months
Then: $9.99/month

Parcours de l'utilisateur :

  • Jour 1 : Chargé $4.99
  • Accès pendant 90 jours
  • Jour 91 : Chargé $9.99/mois
Type: Pay As You Go
Price: $2.99/month
Periods: 6 months
Then: $9.99/month

Parcours de l'utilisateur :

  • Mois 1-6 : $2.99/mois
  • Mois 7 et + : $9.99/mois

Le plugin native-purchases gère automatiquement la présentation et l'éligibilité aux offres d'introduction :

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Fetch products with intro offer information
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['com.yourapp.premium_monthly'],
productType: PURCHASE_TYPE.SUBS,
});
const product = products[0];
// Display intro offer details (StoreKit sends localized metadata)
if (product.introductoryPrice) {
console.log('Intro price:', product.introductoryPriceString);
console.log('Intro period:', product.introductoryPricePeriod);
console.log('Intro cycles:', product.introductoryPriceCycles);
console.log('Regular price:', product.priceString);
} else {
console.log('No intro offer configured');
}
// Purchase (StoreKit automatically applies intro pricing if eligible)
try {
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: 'com.yourapp.premium_monthly',
productType: PURCHASE_TYPE.SUBS,
});
console.log('Subscription active, receipt length:', transaction.receipt?.length);
await validateReceiptOnServer(transaction.receipt);
} catch (error) {
console.error('Purchase failed:', error);
}

Afficher les offres d'introduction aux utilisateurs

Section intitulée “Afficher les offres d'introduction aux utilisateurs”

Proposition de valeur claire :

Try Premium Free for 7 Days
Then $9.99/month. Cancel anytime.

Insister sur les économies :

Start at Just $1.99
Get 3 months of Premium for only $1.99
Then $9.99/month

Communication transparente :

Your Free Trial
• Access all premium features
• No charge for 7 days
• $9.99/month after trial
• Cancel anytime, even during trial
function formatIntroOffer(product: any): string {
if (!product.introductoryPrice) {
return `${product.priceString} per ${product.subscriptionPeriod}`;
}
const intro = product.introductoryPrice;
const regular = product.priceString;
if (intro.price === 0) {
// Free trial
return `Try free for ${intro.periodString}, then ${regular}`;
} else if (intro.cycles === 1) {
// Pay up front
return `${intro.priceString} for ${intro.periodString}, then ${regular}`;
} else {
// Enterprise
return `${intro.priceString} for ${intro.cycles} ${intro.periodString}s, then ${regular}`;
}
}
  • 3-7 jours: Décisions rapides pour les applications, les jeux
  • 7-14 jours: Standard pour la plupart des applications
  • 14-30 jours: Outils complexes, applications professionnelles
  • 30+ jours: B2B ou entreprise de haute valeur
  • $0.99-$1.99: Barrière très faible, bien adapté pour les tests
  • 50% de réduction: Forte valeur perçue
  • Premier mois gratuit: Modèle commun, patern de reconnaissance
  • Avant la fin de l'essai: Rappellez aux utilisateurs la prochaine facture
  • Met en avant la valeur: Affichez les statistiques d'utilisation, les réalisations
  • Annulation facile: Créez de la confiance avec un processus transparent

Utilisez les tests de sandbox pour vérifier le comportement:

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// In sandbox mode, accelerated subscription durations apply:
// - 3 days free trial = 3 minutes
// - 1 week free trial = 3 minutes
// - 1 month free trial = 5 minutes
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['premium_monthly'],
productType: PURCHASE_TYPE.SUBS,
});
// Purchase with intro offer
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: 'premium_monthly',
productType: PURCHASE_TYPE.SUBS,
});
console.log('Intro purchase transaction:', transaction.transactionId);
// Wait for accelerated renewal
setTimeout(async () => {
const { purchases } = await NativePurchases.getPurchases({
productType: PURCHASE_TYPE.SUBS,
});
const premium = purchases.find((purchase) => purchase.productIdentifier === 'premium_monthly');
console.log('After trial state:', premium?.subscriptionState);
}, 180000); // 3 minutes for weekly trial
  • Une offre d'introduction par utilisateur par groupe d'abonnement (à vie)
  • Seuls les nouveaux abonnés sont concernés
  • Cette offre ne peut pas être utilisée à nouveau après l'annulation
  • Non disponible pour les mises à niveau/échanges de souscription
  • introductoryPrice affiche les détails de l'offre d'introduction
  • eligibility la méthode vérifie si l'utilisateur est éligible
  • Appliqué automatiquement à l'heure de l'achat
  • Aucun méthode d'achat spéciale n'est nécessaire
  • Seule une offre d'introduction active par abonnement à la fois
  • Impossible de combiner avec d'autres types de remises
  • Impossible de modifier les règles d'éligibilité
  • Apple contrôle le contrôle de l'éligibilité

L'offre d'introduction ne s'affiche pas :

  • Vérifiez si l'offre est activée dans App Store Connect
  • Vérifiez que l'utilisateur n'a pas utilisé une offre d'introduction avant
  • Assurez-vous que l'utilisateur n'a pas abonné à quelque chose dans le groupe
  • Testez avec un nouveau compte sandbox

La vérification de l'éligibilité échoue :

  • Attendez la synchronisation de l'App Store (cela peut prendre 2-3 heures)
  • Vérifiez que l'ID du produit est correct
  • Vérifiez la configuration du groupe d'abonnement
  • Testez dans le sandbox avec un compte de test frais

Le prix incorrect s'affiche :

  • Vérifiez les paramètres de tarification régionale
  • Vérifiez la conversion de devise
  • Assurez-vous que les dates des offres sont actuelles
  • Actualisez les informations du produit

Problèmes de test dans le sandbox :

  • Utilisez des durées accélérées (3 min = 1 semaine)
  • Créez de nouveaux comptes de test pour chaque test
  • Attendez que le essai se termine naturellement
  • Vérifiez le nombre de renouvellements (max 6 dans le sandbox)
  • Taux d'acceptation de l'offre introductive
  • Taux de conversion essai-payé
  • Annulation pendant l'essai
  • Rétention après la première facture
  • Impact sur le chiffre d'affaires
  • Essai gratuit vs. introduction payante
  • Variations de durée de l'essai
  • Pourcentage de remise
  • Paiement unique vs. remise récurrente
// Track offer performance
analytics.track('intro_offer_displayed', {
product_id: product.identifier,
offer_type: product.introductoryPriceType,
offer_duration: product.introductoryPricePeriod
});
analytics.track('intro_offer_accepted', {
product_id: product.identifier
});
// Monitor conversion
NativePurchases.addListener('transactionUpdated', (transaction) => {
if (transaction.productIdentifier === product.identifier && transaction.isActive) {
analytics.track('trial_converted', {
transactionId: transaction.transactionId,
productId: transaction.productIdentifier,
});
}
});
  • Configure le test de sandbox pour tester vos offres d'introduction
  • Configurer les offres promotionnelles pour les campagnes de rappel
  • Mettre en œuvre l'analyse des abonnements
  • Créer des campagnes de marketing ciblées

Pour plus de détails, consultez la documentation officielle d'Apple sur les offres d'introduction.

Continuez de la section Créer l'offre d'introduction de souscription iOS

Section intitulée “Continuez de la section Créer l'offre d'introduction de souscription iOS”

Si vous utilisez Créer une offre de souscription iOS introductive pour planifier les paiements et les achats, connectez-le à En utilisant @capgo/native-purchases pour la capacité native dans En utilisant @capgo/native-purchases, Tarification de Capgo pour le flux de travail du produit dans Tarification de Capgo, Système de paiement pour le détail d'implémentation dans Système de paiement, @capgo/native-purchases pour le détail d'implémentation dans @capgo/native-purchases, et Démarrage pour le détail d'implémentation dans Démarrage.