Creare iOS Auto-Renewable Subscription
Copia una riga di comando con le istruzioni di installazione e la guida markdown completa per questo plugin.
Le sottoscrizioni auto-rinnovabili forniscono accesso ricorrente a contenuti, servizi o funzionalità premium nella tua app iOS. Questa guida ti guida attraverso la creazione di sottoscrizioni in App Store Connect.
Panoramica
Sezione intitolata “Panoramica”Le sottoscrizioni auto-rinnovabili si rinnovano automaticamente alla fine di ogni periodo di fatturazione fino a quando gli utenti non le cancellano. Sono perfette per:
- Contenuti e funzionalità premium
- Esperienze senza pubblicità
- Archiviazione e sincronizzazione in cloud
- Servizi di streaming
- Strumenti e utilità professionali
Requisiti
Sottosezione intitolata “Requisiti”Prima di creare le sottoscrizioni, è necessario:
- Creare un gruppo di sottoscrizioni per organizzare le sottoscrizioni
- Disporre di un'iscrizione attiva al programma di sviluppatore Apple
- Informazioni bancarie e fiscali complete in App Store Connect
Creare una sottoscrizione
Sezione intitolata “Creare una sottoscrizione”-
Naviga alle sottoscrizioni
In App Store Connect, seleziona il tuo app e vai a Monetizza > Sottoscrizioni.
Seleziona il tuo gruppo di sottoscrizioni o crea uno nuovo se necessario.

-
Crea nuova sottoscrizione
Clicca l'icona + vicino al tuo gruppo di sottoscrizioni per aggiungere una nuova sottoscrizione.
-
Inserisci informazioni base
Nome di Riferimento: Nome descrittivo per il tuo uso interno (non visualizzato ai clienti)
- Esempi: “Abbonamento Mensile Premium”, “Abbonamento Annuale Ultimo”, “Piano Base”
ID del Prodotto: Identificatore univoco per questa sottoscrizione (non può essere modificato in seguito)
- Formato:
com.yourcompany.yourapp.premium_monthly - Utilizza nomi descrittivi, in minuscolo, con underscore
- Richiesto per la configurazione del plugin native-purchases

-
Configura Durata
Seleziona la durata della sottoscrizione dalle opzioni disponibili:
- 1 settimana
- 1 mese
- 2 mesi
- 3 mesi
- 6 mesi
- 1 anno
La durata determina la frequenza con cui gli utenti vengono fatturati.
-
Impostazione del prezzo
Clicca Aggiungi prezzo della sottoscrizione per configurare il prezzo:
Territorio base: Seleziona il tuo mercato principale (di solito il tuo paese)
Prezzo: Imposta il prezzo della sottoscrizione
- L'Apple converte automaticamente in altre valute
- Scegli tra i livelli di prezzo dell'Apple
- Considera il valore percepito e i tassi di mercato

-
Condivisione della famiglia (Facoltativa)
Decidi se abilitare la condivisione della famiglia, che consente fino a 6 membri della famiglia di accedere alla sottoscrizione.
Abilita se:
- Il contenuto è adatto per l'uso familiare
- Vuoi aumentare la proposta di valore
- Il tuo modello di business lo supporta
Non abilitare se:
- La sottoscrizione è destinata all'uso individuale
- Il contenuto è personalizzato per l'utente
- Vuoi massimizzare il reddito per utente
-
Aggiungi Localizzazioni
Aggiungi informazioni di visualizzazione della sottoscrizione in tutte le lingue che il tuo app supporta:
Nome della SottoscrizioneNome utente (ad esempio, “Premium Mensile”)
Descrizione: Descrizione breve di cosa include la sottoscrizione
- Tenere le cose concise e focalizzate sul beneficio
- Menziona le principali caratteristiche
- Sottolinea la proposta di valore

-
Immagine promozionale per l'App Store (Facoltativa)
Carica un'immagine promozionale per questa sottoscrizione (312x390 pixel):
- Mostra nella pagina di sottoscrizione dell'App Store
- Deve corrispondere al design dell'app
- Includi il nome della sottoscrizione per chiarezza
-
Salva e Invia
Clicca Salva per creare l'abbonamento.
Per Abbonamento Primo:
- Deve essere inviato con una nuova versione dell'app
- Includi nella tua prossima sottoscrizione della App Store
- Non può essere inviato indipendentemente
Per Abbonamenti Successivi:
- Può essere inviato direttamente dalla pagina Abbonamenti
- Non richiede una nuova versione dell'app
- Disponibile dopo l'approvazione della prima sottoscrizione
Stato della Sottoscrizione
Sezione intitolata “Stato della Sottoscrizione”La tua sottoscrizione avrà uno dei seguenti stati:
| Stato | Descrizione | Puoi Testare? |
|---|---|---|
| Dati mancanti | Setup incompleto | Sì (sandbox) |
| Pronto per la Sottomissione | Completo ma non sottoposto | Sì (sandbox) |
| In attesa di revisione | Sottoposto a Apple | Sì (sandbox) |
| In revisione | In rassegna da Apple | Sì (sandbox) |
| Approvato | Disponibile per l'acquisto | Sì |
| Rifiutato | Richiede modifiche | Sì (sandbox) |
Utilizzo nell'App
Sezione intitolata “Utilizzo nell'App”Una volta creata, riferisci la sottoscrizione nell'app utilizzando l'ID del prodotto:
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();}Con 12-Mesi di Impegno Mensile
Sezione intitolata “Con 12-Mesi di Impegno Mensile”Se la tua sottoscrizione di App Store Connect è configurata con un piano di fatturazione mensile e 12-mesi di impegno, StoreKit può restituire termini di prezzo aggiuntivi per quel prodotto. Utilizza quei termini per mostrare il carico mensile, il prezzo di impegno totale e il periodo di impegno completo 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', });}For the full paywall and entitlement flow, see Piani mensili di impegno mensile per iOS.
Pratiche raccomandate
Sottosezione intitolata “Pratiche raccomandate”Strategia di prezzo
Sottosezione intitolata “Strategia di prezzo”- Piani mensili: Barriera di ingresso più bassa, costruisce abitudine
- Piani annuali: Miglior valore, maggiore LTV, minor churn
- Più livelli: Base, Premium, Ultimate per diversi segmenti di utenti
- Analisi competitiva: Ricerca i prezzi degli app simili
ID dei prodotti
Sottosezione intitolata “ID dei prodotti”- Usa denominazioni coerenti:
company.app.tier_duration - Includi livello e durata nell'ID:
premium_monthly,ultimate_annual - Evita di modificare gli ID dei prodotti (sono permanenti)
- Documenta tutti gli ID dei prodotti per il tuo team
Condivisione di famiglia
Sottosezione intitolata “Condivisione di famiglia”- Abilita per le app orientate alla famiglia (giochi, educativa, intrattenimento)
- Considera l'impatto sulle entrate
- Testare il comportamento di condivisione attentamente
- Comunicare la capacità di condivisione nella promozione
Localizzazione
Sezione intitolata “Localizzazione”- Traduci tutti i nomi e le descrizioni delle sottoscrizioni
- Considerare le differenze di prezzo regionali
- Testare la visualizzazione in tutte le lingue supportate
- Usare un linguaggio di marketing adatto alla cultura
Immagini promozionali
Sezione intitolata “Immagini promozionali”- Mantieni uno stile visivo coerente
- Includi il nome della sottoscrizione e il beneficio chiave
- Aggiornamento per promozioni stagionali
- Corrispondenza al linguaggio di design dell'app
Pattini di abbonamento comuni
Sottosezione intitolata “Pattini di abbonamento comuni”Nivello unico (Freemium)
Sottosezione intitolata “Nivello unico (Freemium)”Free App + Premium Subscription- Basic: Free (limited features)- Premium Monthly: $4.99- Premium Annual: $39.99 (save 33%)Pattini di abbonamento multipli (Buono, Migliore, Miglior)
Sottosezione intitolata “Pattini di abbonamento multipli (Buono, Migliore, Miglior)”- Basic Monthly: $4.99- Premium Monthly: $9.99- Ultimate Monthly: $19.99
- Basic Annual: $49.99- Premium Annual: $99.99- Ultimate Annual: $199.99Pattini di abbonamento misti (Consumabile + Abbonamento)
Sottosezione intitolata “Pattini di abbonamento misti (Consumabile + Abbonamento)”- Credit packs (consumable)- Monthly subscription (unlimited credits)- Annual subscription (unlimited + bonus features)Risoluzione dei problemi
Sezione intitolata “Risoluzione dei problemi”La sottoscrizione non si carica nell'app:
- Verifica che l'ID del prodotto corrisponda esattamente (senza distinzione tra maiuscole e minuscole)
- Controlla che la sottoscrizione sia nel gruppo delle sottoscrizioni
- Assicurati che l'identificatore del pacchetto corrisponda a quello di App Store Connect
- Attendi 2-3 ore dopo aver creato il prodotto
Non è possibile inviare la sottoscrizione:
- Completa tutti i campi obbligatori (nome, descrizione, prezzo)
- Aggiungi almeno una localizzazione
- Verifica che le informazioni bancarie/tributarie siano approvate
- Verifica la prima sottoscrizione (richiede versione dell'app)
Disabilitato il toggle di condivisione della famiglia:
- Già abilitato (non può essere disabilitato)
- Verifica i dettagli della sottoscrizione
- Contatta il supporto Apple se rimani bloccato
Nessuna fascia di prezzo disponibile:
- Potrebbe essere limitato in alcune aree geografiche
- Scegli una fascia alternativa
- Contatta Apple per domande di prezzo
Errore "ID del prodotto non valido":
- Deve essere nel formato del dominio inverso
- Non può contenere spazi o caratteri speciali
- Controlla gli errori di ortografia
- Verifica l'unicità su tutti i prodotti
Passaggi successivi
Sezione intitolata “Passaggi successivi”- Crea un'offerta introduttiva per attirare nuovi sottoscrittori
- Pianificazione mensile di impegno per il merchandising per offerte di abbonamento annuale supportate
- Configura il testing del sandbox per testare le tue sottoscrizioni
- Configura offerte promozionali per il win-back e la retention
- Implementa il tracking delle analisi delle sottoscrizioni
Risorse aggiuntive
Sezione intitolata “Risorse aggiuntive”Per ulteriori informazioni, si rinvia alla documentazione ufficiale di Apple sulle sottoscrizioni auto-rinnovabili.
Continua da Creare sottoscrizione auto-rinnovabile iOS
Sezione intitolata “Continua da Creare sottoscrizione auto-rinnovabile iOS”Se stai utilizzando Creare sottoscrizione auto-rinnovabile iOS per pianificare l'approvazione e la distribuzione della tua app, connettila con Utilizza @capgo/native-purchases per la capacità nativa in Utilizza @capgo/native-purchases, @capgo/capacitor-in-app-review per i dettagli di implementazione in @capgo/capacitor-in-app-review, Utilizzando @capgo/capacitor-in-app-review per la capacità nativa in Utilizzando @capgo/capacitor-in-app-review, @capgo/capacitor-native-market per i dettagli di implementazione in @capgo/capacitor-native-market, e Utilizzando @capgo/capacitor-native-market per la capacità nativa in Utilizzando @capgo/capacitor-native-market.