Saltare al contenuto

Create iOS Auto-Renewable Subscription

GitHub

Le sottoscrizioni auto-rinnovabili forniscono accesso ricorrente a contenuti, servizi o funzionalità premium nell'app iOS. Questa guida ti guida attraverso la creazione di sottoscrizioni in App Store Connect.

Le sottoscrizioni auto-rinnovabili si rinnovano automaticamente alla fine di ogni periodo di fatturazione fino a quando gli utenti non annullano. Sono perfette per:

  • Contenuti e funzionalità premium
  • Esperienze senza pubblicità
  • Memoria di archiviazione cloud e sincronizzazione
  • Servizi di streaming
  • Strumenti e utilità professionali

Prima di creare le sottoscrizioni, devi:

  1. Crea un gruppo di sottoscrizioni per organizzare le tue sottoscrizioni
  2. Essere un membro attivo del programma di sviluppatore Apple
  3. Inserire informazioni bancarie e fiscali complete in App Store Connect
  1. 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.

    Naviga alle sottoscrizioni

  2. Creare una nuova sottoscrizione

    Clicca sul + l'icona accanto al tuo gruppo di sottoscrizioni per aggiungere una nuova sottoscrizione.

  3. Inserisci Informazioni Base

    Nome di Riferimento: Nome descrittivo per il tuo uso interno (non visualizzato ai clienti)

    • Esempi: “Mensile Premium”, “Annuale Ultimo”, “Piano Base”

    ID del Prodotto: Identificatore univoco per questa sottoscrizione (non può essere modificato in seguito)

    • Formato: com.yourcompany.yourapp.premium_monthly
    • Usa nomi descrittivi, in minuscolo, con underscore
    • Richiesto per la configurazione del plugin native-purchases

    Immettere dettagli di abbonamento

  4. Configura Durata

    Seleziona la durata dell'abbonamento dalle opzioni disponibili:

    • 1 settimana
    • 1 mese
    • 2 mesi
    • 3 mesi
    • 6 mesi
    • 1 anno

    La durata determina con quale frequenza gli utenti vengono fatturati.

  5. Configura Prezzi

    Clicca Aggiungi Prezzo Abbonamento A configurare i prezzi:

    Territorio Base: Seleziona il tuo mercato principale (di solito il tuo paese)

    Prezzo: Imposta il prezzo dell'abbonamento

    • Apple converte automaticamente in altre valute
    • Scegli tra i livelli di prezzo di Apple
    • Considera il valore percepito e i tassi di mercato

    Configura i prezzi

  6. Condivisione Familiare (Facoltativa)

    Decidi se abilitare la condivisione familiare, che consente fino a 6 membri della famiglia di accedere all'abbonamento.

    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
  7. Aggiungi Localizzazioni

    Aggiungi informazioni di visualizzazione della sottoscrizione in tutte le lingue supportate dall'app:

    Nome della sottoscrizione: Nome a faccia aperta (ad esempio, "Premium Mensile")

    Descrizione: Breve descrizione di cosa include la sottoscrizione

    • Tienilo conciso e focalizzato sui benefici
    • Menziona le caratteristiche chiave
    • Sottolinea la proposta di valore

    Aggiungi localizzazioni

  8. Immagine promozionale per l'App Store (Facoltativa)

    Carica un'immagine promozionale per questa sottoscrizione (312x390 pixel):

    • Si visualizza nella pagina della sottoscrizione dell'App Store
    • Corrisponda al design dell'app
    • Includere il nome dell'abbonamento per chiarezza
  9. Salva e Invia

    Clicca Salva Per la prima abbonamento:

    Deve essere presentato con una nuova versione dell'app

    • Includere nella tua prossima presentazione nella App Store
    • Salva
    • Non è possibile inviare in modo autonomo

    Per le sottoscrizioni successive:

    • Può essere inviato direttamente dalla pagina Sottoscrizioni
    • Non richiedono una nuova versione dell'app
    • Sono disponibili dopo l'approvazione della prima sottoscrizione

La tua sottoscrizione avrà uno di questi stati:

StatoDescrizionePuoi Testare?
Dati mancantiConfigurazione incompletaSì (sandbox)
Pronto per la sottoscrizioneCompleta ma non inviataSì (sandbox)
In attesa di revisioneInvia alla AppleSì (sandbox)
In revisione presso AppleSì (sandbox)Approvata
Sì (sandbox)Disponibile per l'acquisto
RifiutatoDa modificareSì (sandbox)

Una volta creato, si riferisca alla sottoscrizione nell'applicazione utilizzando l'ID del prodotto:

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Fetch subscription products direct from StoreKit
const { 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 data
const { 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();
}

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 questi termini per visualizzare 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',
});
}

Per la full paywall e il flusso di entitoli, vedere Piani di fatturazione mensili di impegno per iOS.

  • Piani mensili: Barriera di ingresso più bassa, costruisce abitudine
  • Offerte annuali: Miglior valore, maggiore LTV, minor churn
  • Più livelli: Base, Premium, Ultimate per diversi segmenti di utenti
  • Analisi competitiva: Ricerca prezzi simili di altre app
  • 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
  • Abilita per gli app orientati alla condivisione familiare (giochi, educativi, intrattenimento)
  • Considera l'impatto sulle entrate
  • Testa il comportamento di condivisione attentamente
  • Comunica la capacità di condivisione nella pubblicità
  • Traduci tutti i nomi e le descrizioni delle sottoscrizioni
  • Considera le differenze di prezzo regionali
  • Testa la visualizzazione in tutte le lingue supportate
  • Utilizza un linguaggio di marketing adatto alla cultura
  • Mantieni uno stile visivo coerente
  • Includi il nome della sottoscrizione e il beneficio principale
  • Aggiorna per le promozioni stagionali
  • Corrispondi al linguaggio di design dell'app
Free App + Premium Subscription
- Basic: Free (limited features)
- Premium Monthly: $4.99
- Premium Annual: $39.99 (save 33%)

Livelli multipli (Buono, Migliore, Miglior)

Sezione intitolata “Multi-Tier (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.99
- Credit packs (consumable)
- Monthly subscription (unlimited credits)
- Annual subscription (unlimited + bonus features)

L'abbonamento non si carica nell'app:

  • Verifica che l'ID del prodotto corrisponda esattamente (senza distinzione tra maiuscole e minuscole)
  • Controlla che l'abbonamento sia presente nel gruppo degli abbonamenti
  • Assicurati che l'identificatore del bundle 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 e fiscali siano approvate
  • Controlla se la prima sottoscrizione (richiede versione dell'app)

Dispositivo di condivisione della famiglia disabilitato:

  • Già abilitato (non può essere disabilitato)
  • Controlla nei dettagli della sottoscrizione
  • Contatta il Supporto Apple se si è bloccati

Livello di prezzo non disponibile:

  • Potrebbe essere limitato in alcune aree geografiche
  • Scegli un livello alternativo
  • Contatta Apple per domande di prezzo

Errore "ID prodotto non valido"

  • Deve essere nel formato di dominio inverso
  • Non può contenere spazi o caratteri speciali
  • Controlla gli errori di ortografia
  • Verifica l'unicità rispetto a tutti i prodotti

Per ulteriori informazioni, si rinvia alla documentazione ufficiale di Apple sulle sottoscrizioni auto-rinnovabili.

Continua da Creare sottoscrizione iOS auto-rinnovabile

Sezione intitolata “Continua da Creare sottoscrizione iOS auto-rinnovabile”

Se stai utilizzando Creare sottoscrizione iOS auto-rinnovabile per pianificare l'approvazione e la distribuzione del negozio, connettilo con Utilizzare @capgo/native-purchases per la capacità nativa in Utilizzare @capgo/native-purchases @capgo/capacitor-recensione-in-app per il dettaglio di implementazione in @capgo/capacitor-recensione-in-app Utilizzare @capgo/capacitor-recensione-in-app per la capacità nativa in Utilizzare @capgo/capacitor-recensione-in-app @capgo/capacitor-mercato-nativo per il dettaglio di implementazione in @capgo/capacitor-mercato-nativo, e Utilizzare @capgo/capacitor-mercato-nativo per la capacità nativa in Utilizzare @capgo/capacitor-mercato-nativo