Passer au contenu

Créer une offre de souscription iOS introductive

GitHub

Les offres d'introduction vous permettent de fournir aux utilisateurs éligibles des essais gratuits ou des tarifs d'introduction réduits pour réduire les barrières d'accès et augmenter les conversions de souscriptions.

Les offres d'introduction 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

L'iOS prend en charge trois types d'offres d'introduction :

Les clients ont accès gratuit pendant une durée spécifiée. Après l'essai, 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 de flux d'argent
  • Évaluation de la 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
  • Ils n'ont pas eu d'abonnement actif pour le produit

Vous devez créer d'abord un abonnement auto-renouvelable avant d'ajouter une offre d'introduction. Note: __CAPGO_KEEP_0__

  1. Naviguez vers l'abonnement

    Allez dans votre application dans l'App Store Connect, puis dans la section « Monétisation > Abonnements » Monétisation > Abonnements section et sélectionnez l'abonnement que vous souhaitez ajouter une offre.

  2. Ajouter le prix de l'abonnement

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

  3. Créer une offre d'introduction

    Sélectionnez « Créer une offre d'introduction » Créer une offre d'introduction à partir des options.

    Créer une offre d'introduction

  4. Configurer 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 couverture 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 programmé pour l'avenir
    • Utile pour coordonner avec les campagnes de marketing

    Date de fin (Facultatif)Lorsque l'offre expire

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

    Sélectionnez l'un des trois types d'offres :

    Gratuit (Essai gratuit)

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

    Payez d'office

    • Fixer le prix de la seule facture
    • Fixer la durée couverte par le paiement
    • Example: 1,99 $ pour 2 mois

    Paye à la consommation

    • Fixer le prix réduit par période
    • Fixer le nombre de périodes
    • Example: 2,99 $ par mois pendant 3 mois
  6. Vérifiez et Confirmez

    Vérifiez le récapitulatif montrant :

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

    Cliquez Enregistrer Créer l'offre introductive. Elle sera disponible pour les tests immédiatement en mode sandbox.

Exemples de configuration de l'offre

Exemples de configuration de l'offre

Exemple 1 : Essai gratuit standard

Copier dans le presse-papier
Type: Free
Duration: 7 days
Then: $9.99/month

Accès gratuit pendant 1-7 jours

  • Première facture de 9,99 $ le jour 8
  • Factures mensuelles continuent
  • Sauvegarder
Type: Pay Up Front
Price: $4.99
Duration: 3 months
Then: $9.99/month

Parcours de l'utilisateur :

  • Jour 1 : Facturé 4,99 $
  • Accès pendant 90 jours
  • Jour 91 : Facturé 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+ : 9,99 $ par mois

Utilisation dans votre application

Sous-titre « Utilisation dans votre application »

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

Sous-titre « Meilleures pratiques pour l'interface utilisateur »

Proposition de valeur claire :

Copier dans le presse-papier

Insister sur les économies :

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 et les jeux
  • 7-14 jours: Standard for most apps
  • 14-30 jours: Complex tools, professional apps
  • 30+ jours: High-value B2B or enterprise
  • $0.99-$1.99: Barrière très faible, bien pour les tests
  • 50% de remise: Forte valeur perçue
  • Premier mois gratuit: Modèle familier, courant
  • Avant que la période d'essai se termine: Rappelle aux utilisateurs la facturation imminente
  • Highlight value: Affiche les statistiques d'utilisation, les réalisations
  • Annulation facile: Construisez la confiance avec un processus transparent

Utilisez la mise en scène de test 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 et par groupe d'abonnement (à vie)
  • Seuls les nouveaux abonnés sont concernés
  • Ne peut pas être utilisé à 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 vérifie si l'utilisateur est éligible
  • Appliqué automatiquement lors de l'achat
  • Aucun méthode d'achat spéciale nécessaire
  • Seulement une offre introductive 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 d'éligibilité

Offre introductive 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 souscrit à quelque chose dans le groupe
  • Testez avec un nouveau compte sandbox

Échec de la vérification d'éligibilité:

  • 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 de souscription
  • Testez dans le sandbox avec un compte de test frais

Tarif incorrect affiché:

  • Vérifiez les paramètres de tarification régionale
  • Vérifiez la conversion de devise
  • Assurez-vous que les dates des offres soient actuelles
  • Rafraîchir les informations de produit

Problèmes de test de 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 la période d'essai se termine naturellement
  • Vérifiez le nombre de renouvellements (max 6 dans le sandbox)
  • Taux d'acceptation de l'offre initiale
  • taux de conversion de l'essai vers le paiement
  • annulation pendant l'essai
  • retention après la première facture
  • impact des revenus
  • essai gratuit vs. introduction payante
  • variations de la 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,
});
}
});

Étapes suivantes

Étapes suivantes
  • Configurer les tests de sandbox pour tester vos offres introductives
  • Configurer les offres promotionnelles pour les campagnes de rappel
  • Implémenter l'analyse des abonnements
  • Créer des campagnes de marketing ciblées

Ressources supplémentaires

Ressources supplémentaires

Pour plus de détails, consultez la documentation officielle d'Apple sur les offres introductives official Apple documentation on introductory offers.

Continuez de la création d'une offre d'introduction pour les abonnements iOS

Titre de la section « Continuez de la création d'une offre d'introduction pour les abonnements iOS »

Si vous utilisez Créer une offre d'introduction pour les abonnements iOS pour planifier les paiements et les achats, connectez-l’avec En utilisant @capgo/native-purchases pour la capacité native dans En utilisant @capgo/native-purchases, Capgo Pricing pour le flux de travail du produit dans Capgo Pricing, Système de paiement pour le détail d'implémentation dans Système de paiement, @capgo/native-purchases pour les détails d'implémentation dans @capgo/achats natifs, et Démarrage pour les détails d'implémentation dans Démarrage.