Saltare al contenuto

Continua con la Creazione di un Abbonamento iOS con Offerta Introduttiva

Repository di Acquisti Nativi GitHub

Gli offerti introduttivi consentono di fornire agli utenti idonei prove gratuite o prezzi introduttivi scontati per ridurre le barriere di ingresso e aumentare le conversioni di abbonamento.

Gli offerti introduttivi sono uno degli strumenti piĂš efficaci per aumentare la tua base di abbonati. Consentono agli utenti di:

  • Provare le tue funzionalitĂ  premium senza rischi
  • Vivere l'esperienza del valore prima di impegnarsi
  • Iniziare con un punto di partenza piĂš basso
  • Costruire la fiducia nel tuo prodotto

iOS supporta tre tipi di offerte introduttive:

I clienti hanno accesso gratuito per un periodo specifico. Dopo la prova, vengono addebitati i prezzi standard se non annullano l'abbonamento.

Esempi:

  • 7 giorni gratuiti
  • 14 giorni gratuiti
  • 1 mese gratuito

Migliore per:

  • Abbonamenti di alta valore
  • Applicazioni ricche di funzionalitĂ 
  • Costruire un'abitudine utente

I clienti pagano un prezzo scontato unico che copre il periodo introduttivo.

Esempi:

  • $1.99 per 2 mesi (poi $9.99/mese)
  • $9.99 per 3 mesi (poi $19.99/mese)

Migliore per:

  • Segnali di impegno
  • NecessitĂ  di flusso di cassa
  • Testare la sensibilitĂ  al prezzo

I clienti pagano un prezzo ridotto per piĂš cicli di fatturazione.

Esempi:

  • $1.99 al mese per 3 mesi (poi $9.99 al mese)
  • $4.99 al mese per 6 mesi (poi $14.99 al mese)

Migliore per:

  • Impegno graduale
  • Dimostrazione di valore a lungo termine
  • Riduzione del rischio percepito

Gli utenti possono ricevere offerte introduttive solo se:

  • Non hanno giĂ  ricevuto un'offerta introduttiva per il prodotto
  • Non hanno ricevuto un'offerta introduttiva per alcun prodotto nel medesimo gruppo di abbonamento
  • Non hanno mai avuto un abbonamento attivo al prodotto

Devi creare un abbonamento auto-rinnovabile prima di aggiungere un'offerta introduttiva. Users can only receive introductory offers if they:

  1. Naviga a Abbonamenti

    In Cloudflare, vai alla sezione dei tuoi abbonamenti e seleziona l'abbonamento che vuoi aggiungere un'offerta. Aggiungi Prezzo Abbonamento Clicca l'icona accanto a “Prezzi Abbonamento” per aprire il modulo di prezzo.

  2. Crea Offerta Introdotiva

    Seleziona “Crea offerta introduttiva” + Monetizza > Abbonamenti

  3. In Cloudflare, vai alla sezione dei tuoi abbonamenti e seleziona l'abbonamento che vuoi aggiungere un'offerta a.

    Clicca l'icona accanto a “Prezzi Abbonamento” per aprire il modulo di prezzo. Seleziona l'abbonamento che vuoi aggiungere un'offerta a. Dal menu delle opzioni.

    Crea offerta introduttiva.

  4. Configura Paesi e Data di Inizio.

    Paesi e Regioni.: Seleziona dove l'offerta sarĂ  disponibile.

    • Scegli tutti i paesi per una maggiore copertura.
    • O limita a specifici mercati per le prove.

    Data di Inizio.: Quando l'offerta diventa disponibile.

    • Può essere immediata o programmata per il futuro.
    • Utile per coordinarsi con le campagne di marketing.

    Data di Fine (Facoltativa): Quando l'offerta scade

    • Lascia vuoto per disponibilitĂ  in corso
    • Imposta una data per promozioni a tempo limitato
  5. Seleziona Tipo di Offerta

    Scegli uno dei tre tipi di offerta:

    Gratis (Prova Gratuito)

    • Seleziona durata (giorni, settimane, mesi)
    • Esempi: 7 giorni, 2 settimane, 1 mese

    Pagamento a Fronte

    • Imposta prezzo di pagamento singolo
    • Imposta durata coperta dal pagamento
    • Esempio: $1.99 per 2 mesi

    Pagamento a consumo

    • Imposta il prezzo scontato per periodo
    • Imposta il numero di periodi
    • Esempio: $2.99/mese per 3 mesi
  6. Rivedi e Conferma

    Rivedi la sintesi mostrando:

    • Tipo di offerta e durata
    • Dettagli di prezzo
    • Prezzo regolare dopo il periodo introduttivo
    • Date e paesi di disponibilitĂ 
  7. Salva

    Click Crea Salva

Per creare l'offerta introduttiva. SarĂ  disponibile per la prova immediatamente in modalitĂ  sandbox.

Esempi di configurazione dell'offerta

Esempio 1: Prova gratuita standard

Copia nel portapenne
Type: Free
Duration: 7 days
Then: $9.99/month

Giorni 1-7: Accesso gratuito

  • Giorno 8: Primo addebito di 9,99 $
  • Addebiti mensili continuano
  • Esempio 2: Prova gratuita personalizzata
Type: Pay Up Front
Price: $4.99
Duration: 3 months
Then: $9.99/month

Percorso dell'utente:

  • Giorno 1: Caricato $4.99
  • 90 giorni di accesso
  • Giorno 91: Caricato $9.99/mese
Type: Pay As You Go
Price: $2.99/month
Periods: 6 months
Then: $9.99/month

Percorso dell'utente:

  • Mesi 1-6: $2.99/mese
  • Mese 7+: $9.99/mese

Il plugin native-purchases gestisce automaticamente la presentazione e l'eligibilitĂ  dell'offerta introduttiva:

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);
}

Proposta di Valore Chiara:

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

Sottolineare i Risparmi:

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

Comunicazione trasparente:

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 giorni: App e giochi veloci per prendere una decisione
  • 7-14 giorni: Standard per la maggior parte degli app
  • 14-30 giorni: Strumenti complessi, app professionali
  • 30+ giorni: Valori B2B o aziende di alto valore
  • $0.99-$1.99: Barriera di ingresso molto bassa, adatto per la prova
  • 50% di sconto: Valore percepito forte
  • Primo mese gratuito: Modo comune, familiare
  • Prima che la prova finisca: Ricordare agli utenti il carico imminente
  • Sottolineare il valore: Mostrare statistiche di utilizzo, risultati
  • Cancellazione facile: Costruire fiducia con un processo trasparente

Utilizzare il testing in sandbox per verificare il comportamento:

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
  • Una offerta introduttiva per utente per gruppo di abbonamento (a vita)
  • Si applica solo ai nuovi abbonati
  • Non può essere utilizzata nuovamente dopo la cancellazione
  • Non disponibile per gli aggiornamenti/upgrade delle sottoscrizioni
  • introductoryPrice mostra i dettagli dell'offerta introduttiva
  • eligibility verifica se l'utente è qualificato
  • Applicato automaticamente al momento dell'acquisto
  • Non è necessario alcun metodo di acquisto speciale
  • Solo un'offerta introduttiva attiva per abbonamento alla volta
  • Non è possibile combinare con altri tipi di sconto
  • Non è possibile modificare le regole di eleggibilitĂ 
  • Apple controlla il controllo dell'eleggibilitĂ 

L'offerta introduttiva non viene visualizzata:

  • Verifica se l'offerta è attivata in App Store Connect
  • Verifica che l'utente non abbia giĂ  utilizzato un'offerta introduttiva
  • Assicurati che l'utente non sia giĂ  abbonato a qualcosa nel gruppo
  • Testa con un nuovo account sandbox

Errore di verifica dell'eligibilitĂ :

  • Attendere la sincronizzazione di App Store (può richiedere 2-3 ore)
  • Verifica che l'ID del prodotto sia corretto
  • Verifica la configurazione del gruppo di abbonamento
  • Testa in sandbox con un nuovo account di test

Prezzo sbagliato visualizzato:

  • Verifica le impostazioni dei prezzi regionali
  • Verifica la conversione della valuta
  • Assicurarsi che le date degli offerti siano correnti
  • Rinnova le informazioni del prodotto

Problemi di test in sandbox:

  • Usa durate accelerato (3 minuti = 1 settimana)
  • Crea nuovi conti di test per ogni test
  • Aspetta che la prova sia completata naturalmente
  • Verifica il conteggio di rinnovo (massimo 6 in sandbox)
  • Tasso di accettazione dell'offerta introduttiva
  • Tasso di conversione da prova a pagamento
  • Cancellazione durante la prova
  • Ritenzione dopo la prima fattura
  • Impatto sulle entrate
  • Prova gratuita vs. introduzione a pagamento
  • Variazioni della durata della prova
  • Percentuale di sconto
  • Sconto unico vs. sconto ricorrente
// 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,
});
}
});
  • Configura il testing del sandbox per testare le tue offerte introduttive
  • Configura le offerte promozionali per le campagne di win-back
  • Implementa l'analisi delle sottoscrizioni
  • Crea campagne di marketing mirate

Per ulteriori informazioni, si prega di consultare la documentazione ufficiale di Apple sulle offerte introduttive For more details, refer to the official Apple documentation on introductory offers.

Se stai utilizzando Crea offerta introduttiva per l'abbonamento iOS per pianificare pagamenti e acquisti, connettilo con Utilizzando @capgo/native-purchases per la capacitĂ  nativa in Utilizzando @capgo/native-purchases Capgo Pricing per il workflow del prodotto in Capgo Pricing Sistema di pagamento per il dettaglio di implementazione in Sistema di pagamento @capgo/native-purchases per i dettagli di implementazione in @capgo/acquisti nativi, e Iniziare per i dettagli di implementazione in Iniziare.