Crea un abbonamento iOS a rinnovo automatico
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Le sottoscrizioni auto-rinnovabili offrono l'accesso ricorrente a contenuti, servizi o funzionalità premium nella tua app iOS. Questa guida ti spiegherà come creare le sottoscrizioni in App Store Connect.
Panoramica
Sezione intitolata “Panoramica”Le sottoscrizioni auto-rinnovabili si rinnovano automaticamente alla fine di ogni periodo di fatturazione finché l'utente non le annulla. Sono ideali per:
- Contenuti e funzionalità premium
- Esperienze senza pubblicità
- Cloud storage e sincronizzazione
- Servizi di streaming
- Strumenti e utility professionali
Prerequisiti
Sezione intitolata “Prerequisiti”Prima di creare le sottoscrizioni, devi:
- Crea un gruppo di abbonamenti per organizzare i tuoi abbonamenti
- Avere un abbonamento attivo all'Apple Developer Program
- Completa le informazioni bancarie e fiscali in App Store Connect
Creazione di un abbonamento
Sezione intitolata “Creazione di un abbonamento”-
Vai su Subscriptions
In App Store Connect, seleziona la tua app e vai su Monetizzazione > Abbonamenti.
Seleziona il tuo gruppo di abbonamenti o creane uno nuovo se necessario.

-
Crea nuovo abbonamento
Clicca sul + icona accanto al gruppo di abbonamento per aggiungere un nuovo abbonamento.
-
Inserisci le informazioni di base
Nome di riferimento: Nome descrittivo per uso interno (non visibile agli utenti)
- Esempi: “Premium Monthly”, “Ultimate Annual”, “Basic Plan”
ID Prodotto: Identificativo univoco per questo abbonamento (non modificabile in seguito)
- Formato:
com.yourcompany.yourapp.premium_monthly - Usa nomi descrittivi in minuscolo con underscore
- Obbligatorio per configurare il plugin native-purchases

-
Configura la durata
Seleziona la durata dell'abbonamento tra le opzioni disponibili:
- 1 settimana
- 1 mese
- 2 mesi
- 3 mesi
- 6 mesi
- 1 anno
La durata determina ogni quanto vengono addebitati gli utenti.
-
Configura il prezzo
Clicca su Aggiungi il prezzo dell'abbonamento per configurare i prezzi:
Territorio base: Seleziona il tuo mercato principale (di solito il tuo paese)
Prezzo: Imposta il prezzo dell'abbonamento
- Apple converte automaticamente nelle altre valute
- Scegli tra i livelli di prezzo di Apple
- Considera il valore percepito e le tariffe di mercato

-
Condivisione in famiglia (opzionale)
Decidi se abilitare la Condivisione in famiglia, che permette fino a 6 membri della famiglia di accedere all'abbonamento.
Attivala se:
- I contenuti sono adatti all'uso familiare
- Vuoi aumentare la proposta di valore
- Il tuo modello di business lo consente
Non attivarla se:
- L'abbonamento è solo per uso individuale
- I contenuti sono personalizzati per l'utente
- Vuoi massimizzare i ricavi per utente
-
Aggiungi localizzazioni
Aggiungi le informazioni sull'abbonamento in tutte le lingue supportate dalla tua app:
Nome visualizzato dell'abbonamento: Nome visibile all'utente (es. “Premium Mensile”)
Descrizione: Breve descrizione di cosa include l'abbonamento
- Sii conciso e punta sui vantaggi
- Menziona le funzionalità principali
- Evidenzia la proposta di valore

-
Immagine promozionale App Store (Opzionale)
Carica un'immagine promozionale per questo abbonamento (312x390 pixel):
- Viene mostrata nella pagina abbonamenti dell'App Store
- Deve rispecchiare il design della tua app
- Includi il nome dell'abbonamento per chiarezza
-
Salva e invia
Clicca su Salva per creare l'abbonamento.
Per il primo abbonamento:
- Deve essere inviato con una nuova versione dell'app
- Includi nel prossimo invio all'App Store
- Non può essere inviato separatamente
Per gli abbonamenti successivi:
- Possono essere inviati direttamente dalla pagina Abbonamenti
- Non richiedono una nuova versione dell'app
- Disponibili dopo l'approvazione del primo abbonamento
Stato dell'abbonamento
Sezione: “Stato dell'abbonamento”Il tuo abbonamento avrà uno di questi stati:
| Stato | Descrizione | Testabile? |
|---|---|---|
| Metadati mancanti | Configurazione incompleta | Sì (sandbox) |
| Pronto per l'invio | Completato ma non inviato | Sì (sandbox) |
| In attesa di revisione | Inviato ad Apple | Sì (sandbox) |
| In revisione | In fase di revisione da Apple | Sì (sandbox) |
| Approvato | Disponibile per l'acquisto | Sì |
| Rifiutato | Richiede modifiche | Sì (sandbox) |
Utilizzo nell'app
Sezione: “Utilizzo nell'app”Una volta creata, fai riferimento all'abbonamento nella tua app usando il product ID:
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();}Mensile con impegno di 12 mesi
Sezione: “Piani mensili con impegno di 12 mesi”Se l'abbonamento su App Store Connect è configurato con fatturazione mensile e impegno di 12 mesi, StoreKit può restituire termini di prezzo aggiuntivi per quel prodotto. Usa questi dati per mostrare l'importo mensile, il prezzo totale dell'impegno e la durata completa prima dell'acquisto.
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', });}Per il flusso completo di paywall ed entitlement, consulta Piani di fatturazione iOS con impegno mensile.
Best practice
Sezione “Best practice”Strategia di pricing
Sezione: “Strategia di pricing”- Piani mensili: Barriera d'ingresso più bassa, crea l'abitudine
- Piani annuali: Più valore, LTV più alto, churn più basso
- Più livelli: Basic, Premium, Ultimate per diversi segmenti di utenti
- Analisi competitiva: Analizza i prezzi di app simili
Product ID
Sezione intitolata “Product ID”- Usa una nomenclatura coerente:
company.app.tier_duration - Includi livello e durata nell'ID:
premium_monthly,ultimate_annual - Evita di cambiare i product ID (sono permanenti)
- Documenta tutti i product ID per il tuo team
Condivisione in famiglia
Sezione: “Family Sharing”- Abilitalo per le app per famiglie (giochi, istruzione, intrattenimento)
- Valuta l'impatto sui ricavi
- Testa a fondo il comportamento della condivisione
- Comunica la funzione di condivisione nel marketing
Localizzazione
Sezione: “Localizzazione”- Traduci tutti i nomi e le descrizioni degli abbonamenti
- Considera le differenze di prezzo tra regioni
- Testa la visualizzazione in tutte le lingue supportate
- Usa un linguaggio di marketing culturalmente appropriato
Immagini promozionali
Sezione intitolata “Immagini promozionali”- Mantieni uno stile visivo coerente
- Includi il nome dell'abbonamento e il vantaggio principale
- Aggiorna per le promozioni stagionali
- Coerente con il design dell'app
Modelli di abbonamento comuni
Sezione intitolata “Modelli di abbonamento comuni”Singolo Tier (Freemium)
Sezione intitolata “Singolo Tier (Freemium)”Free App + Premium Subscription- Basic: Free (limited features)- Premium Monthly: $4.99- Premium Annual: $39.99 (save 33%)Multi-Tier (Base, Pro, Premium)
Sezione intitolata “Multi-Tier (Base, Pro, Premium)”- Basic Monthly: $4.99- Premium Monthly: $9.99- Ultimate Monthly: $19.99
- Basic Annual: $49.99- Premium Annual: $99.99- Ultimate Annual: $199.99Ibrido Consumabile + Abbonamento
Sezione intitolata “Ibrido Consumabile + Abbonamento”- Credit packs (consumable)- Monthly subscription (unlimited credits)- Annual subscription (unlimited + bonus features)Risoluzione problemi
Sezione intitolata “Troubleshooting”L'abbonamento non si carica nell'app:
- Verifica che il Product ID sia identico (case-sensitive)
- Controlla che l'abbonamento sia nel gruppo abbonamenti
- Assicurati che il bundle identifier corrisponda a App Store Connect
- Attendi 2-3 ore dopo la creazione del prodotto
Impossibile inviare l'abbonamento:
- Compila tutti i campi obbligatori (nome, descrizione, prezzo)
- Aggiungi almeno una localizzazione
- Verifica l'approvazione dei dati bancari/fiscali
- Controlla se è il primo abbonamento (richiede versione app)
Interruttore Family Sharing disabilitato:
- Già abilitato (non può essere disabilitato)
- Controlla nei dettagli dell'abbonamento
- Contatta il supporto Apple se hai problemi
Fascia di prezzo non disponibile:
- Potrebbe essere limitato in alcuni territori
- Scegli una fascia alternativa
- Contatta Apple per domande sui prezzi
Errore “Invalid Product ID”:
- Deve essere in formato reverse domain
- Non può contenere spazi o caratteri speciali
- Controlla eventuali refusi
- Verifica che sia unico tra tutti i prodotti
Prossimi passi
Sezione intitolata “Prossimi passi”- Crea un'offerta introduttiva per attirare nuovi abbonati
- Piani di fatturazione mensili per l'impegno su merce per le offerte di abbonamento annuali supportate
- Configura il testing in sandbox per testare i tuoi abbonamenti
- Configura offerte promozionali per win-back e retention
- Implementa il tracking delle analytics degli abbonamenti
Risorse aggiuntive
Sezione “Risorse aggiuntive”Per maggiori dettagli, consulta la documentazione ufficiale Apple sugli abbonamenti auto-rinnovabili.
Continua da Crea abbonamento auto-rinnovabile su iOS
Sezione intitolata “Continua da Crea abbonamento auto-rinnovabile su iOS”Se stai usando Crea un abbonamento iOS a rinnovo automatico per pianificare l'approvazione e la distribuzione negli store, collegalo a Utilizzo di @capgo/native-purchases per la funzionalità nativa in Utilizzo di @capgo/native-purchases, @capgo/capacitor-in-app-review per i dettagli di implementazione in @capgo/capacitor-in-app-review, Utilizzo di @capgo/capacitor-in-app-review per la funzionalità nativa in Utilizzo di @capgo/capacitor-in-app-review, @capgo/capacitor-native-market per i dettagli di implementazione in @capgo/capacitor-native-market, e Utilizzo di @capgo/capacitor-native-market per la funzionalità nativa in Utilizzo di @capgo/capacitor-native-market.