Far approvare la propria app su App Store e Google Play può essere difficile, specialmente con l'implementazione di acquisti in-app (IAP) e abbonamenti. Con linee guida più stringenti nel 2025, capire cosa cercano i revisori è fondamentale. Questa guida completa copre tutto ciò che serve per superare la review al primo tentativo.
Ti servono istruzioni di setup dettagliate? Consulta le nostre guide complete: Review dell'App Store iOS | Review del Play Store Android
Perché le app con IAP vengono rifiutate
Le app con acquisti in-app sono soggette a controlli più severi perché comportano transazioni in denaro reale. Secondo le App Store Review Guidelines di Apple e le policy di monetizzazione di Google Play, i principali motivi di rifiuto nel 2025 sono:
- Prezzi poco chiari (42% dei rifiuti)
- Termini di abbonamento mancanti o poco chiari (31%)
- Pattern di UI ingannevoli (18%)
- Violazioni della privacy policy (9%)
Vediamo come evitare ciascuna di queste trappole.
Requisiti App Store iOS
📖 Guida completa per iOS: Per le istruzioni di configurazione, consulta la nostra Guida alla revisione App Store per iOS
1. Trasparenza totale sui prezzi
Apple richiede la trasparenza totale sui prezzi prima vicino al tasto di acquisto. È un requisito obbligatorio.
Cosa vuole vedere Apple:
- Prezzo ben visibile: “$9.99/mese”
- Frequenza di fatturazione indicata chiaramente
- Cosa ottiene l'utente con l'acquisto
- Quando avvengono gli addebiti
- Istruzioni per la cancellazione visibili

Errore comune: Nascondere il prezzo finché l'utente non clicca su “Abbonati” o mostrarlo solo nelle clausole in piccolo.
Soluzione:
// Example: Compliant subscription display
<div className="subscription-card">
<h2>Premium Plan</h2>
<p className="price">$9.99/month</p>
<ul>
<li>✓ Ad-free experience</li>
<li>✓ Unlimited cloud storage</li>
<li>✓ Priority support</li>
</ul>
<p className="terms">
Renews automatically. Cancel anytime in Settings.
</p>
<button>Subscribe Now</button>
</div>
Regola sulla coerenza dei prezzi: Tutti i prezzi devono corrispondere in:
- Scheda dell'App Store
- Schermate degli acquisti in-app
- Gestione degli abbonamenti
- Materiali di marketing
Anche una discrepanza di 1$ causa il rifiuto automatico.
2. Presentazione dei piani di abbonamento
Apple segnala le app che utilizzano i "dark pattern" per spingere verso piani costosi.
Requisiti:
- Mostra tutti i piani di abbonamento allo stesso modo
- Nessuna opzione premium pre-selezionata
- Confronto chiaro delle funzionalità
- Alternative più economiche facili da trovare
Vietato:
- Impostare i piani annuali come default
- Nascondere le opzioni mensili dietro clic extra
- Usare timer per creare falsa urgenza
- Falsa scarsità ("Solo 3 posti rimasti!")
3. Funzionalità di ripristino degli acquisti
Ogni app con IAP deve avere un tasto restore purchases funzionante senza richiedere assistenza. Scopri di più nella nostra Guida introduttiva.
Implementazione:
import { NativePurchases } from '@capgo/native-purchases';
async function restorePurchases() {
try {
const { customerInfo } = await NativePurchases.restorePurchases();
if (customerInfo.activeSubscriptions.length > 0) {
showSuccess('Purchases restored!');
unlockPremiumFeatures();
} else {
showInfo('No previous purchases found.');
}
} catch (error) {
showError('Restore failed. Please try again.');
}
}
4. Conformità alla privacy (Sezione 5.1.1)
Il 2025 porta regole sulla privacy più severe. Apple ora richiede:
Per ogni permesso:
- Spiegazione chiara prima richiesta
- Caso d'uso specifico (non generico)
- Come i dati vengono salvati/condivisi
- Che sia opzionale
Esempio Info.plist voci:
<key>NSCameraUsageDescription</key>
<string>Camera access lets you scan product barcodes for quick upgrades. Photos are never uploaded.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Location shows relevant local content in your Premium subscription.</string>
Le etichette privacy errate sono tra i principali motivi di rifiuto nel 2025.
Requisiti Google Play per Android
📖 Guida completa per Android: Per le istruzioni complete di setup, consulta la nostra Guida alla revisione di Android Play Store
1. Obbligo di Google Play Billing
Per i prodotti digitali (abbonamenti, contenuti in-app), devi devi usare Google Play Billing. I metodi di pagamento alternativi verranno rifiutati.
Beni digitali (Play Billing obbligatorio):
- Abbonamenti a funzionalità
- Valuta in-app
- Contenuti digitali (ebook, musica)
- Sblocchi premium
Beni fisici (Play Billing non consentito):
- Merce fisica
- Servizi fisici
- Donazioni per enti no-profit
Implementazione con native-purchases:
Per la configurazione completa di Android, vedi Test in Sandbox su Android e Creazione degli abbonamenti.
import { NativePurchases } from '@capgo/native-purchases';
// Automatically uses Google Play Billing on Android
await NativePurchases.configure({
apiKey: 'your_api_key'
});
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['premium_monthly']
});
2. Rinnovo automatico trasparente
Google richiede che sia chiaro che gli abbonamenti si rinnovano automaticamente, includendo:
- Notifica di rinnovo prima dell'addebito
- Promemoria del prezzo
- Accesso facile alla cancellazione
UI conforme:
<div className="subscription-terms">
<p>Subscription renews automatically at $9.99/month</p>
<p>Cancel anytime in Google Play Subscriptions</p>
<p>Next billing date: February 15, 2025</p>
<button onClick={openManagement}>
Manage in Google Play
</button>
</div>
3. Requisiti per la Privacy Policy
Obbligatorio per app con IAP:
- URL della privacy policy in Play Console
- Link alla privacy policy accessibile nell'app
- Dichiarazioni accurate nella sezione Data Safety
La sezione Data Safety deve dichiarare:
- Raccolta della cronologia acquisti
- Indirizzi email (per le ricevute)
- ID del dispositivo (prevenzione frodi)
- Dati analitici

Motivi comuni di rifiuto su entrambe le piattaforme
1. Incongruenze nei metadati
Perché viene rifiutato:
- Gli screenshot mostrano feature non presenti nell'app
- La descrizione promette funzioni inesistenti
- I prezzi differiscono da quelli nell'app

Prevenzione:
- Aggiorna gli screenshot a ogni submission
- Allinea la descrizione alle feature reali
- Verifica che ogni claim sia accurato
- Rimuovi i testi promozionali obsoleti
2. Marketing ingannevole
Motivi di rifiuto automatico:
- “#1 app” senza prove
- “Illimitato” con limiti nascosti
- Recensioni o valutazioni false
- Critiche ai competitor

Best Practice: Sii specifico e basati sui fatti:
- ✓ “Unisciti a oltre 50.000 utenti”
- ✗ “La migliore app al mondo”
- ✓ “Risparmia fino al 30% con il piano annuale”
- ✗ “Offerta a tempo limitato!”
3. Flussi di acquisto interrotti
Testa questi punti prima dell'invio:
- I prodotti vengono caricati correttamente
- L'acquisto va a buon fine
- Le funzioni Premium si sbloccano subito
- Il ripristino acquisti funziona
- I messaggi di errore sono chiari
- Gestione corretta dei problemi di rete
// Comprehensive error handling
async function handlePurchase(productId: string) {
try {
const { customerInfo } = await NativePurchases.purchaseProduct({
productIdentifier: productId
});
if (customerInfo.entitlements.active['premium']) {
unlockPremiumFeatures();
}
} catch (error: any) {
switch (error.code) {
case 'USER_CANCELLED':
// Silent - user backed out
break;
case 'ITEM_ALREADY_OWNED':
await NativePurchases.restorePurchases();
break;
case 'NETWORK_ERROR':
showError('Check your connection and try again.');
break;
default:
showError('Purchase failed. Please try again.');
}
}
}
Checklist pre-invio

Usa questa checklist prima di ogni invio. Per procedure di test dettagliate:
- Testing iOS: Guida al testing in sandbox su iOS
- Testing Android: Guida al testing in sandbox su Android
Test
- Testa tutti i livelli di abbonamento
- Verifica il corretto funzionamento dei free trial
- Testa le offerte introduttive
- Conferma il ripristino degli acquisti
- Testa su più dispositivi
- Verifica gli account sandbox/test
Prezzi e termini
- Prezzi uniformi su tutte le piattaforme
- Termini dell'abbonamento chiari
- Istruzioni per la cancellazione visibili
- Frequenza di fatturazione indicata
- Durata del free trial accurata
Privacy e permessi
- Privacy policy linkata nello store
- Privacy policy accessibile nell'app
- Tutti i permessi giustificati
- Descrizioni Info.plist chiare (iOS)
- Data Safety completato (Android)
Metadati
- Gli screenshot mostrano la versione corrente
- Descrizione coerente con le feature
- Nessun testo segnaposto
- Classificazione per età corretta
- Tutte le affermazioni sono verificabili
Qualità Code
- Nessun crash all'avvio
- Tutte le feature funzionano come descritto
- Gestione degli errori implementata
- Stati di caricamento visibili
- Errori di rete gestiti
Tempistiche previste per la revisione

iOS:
- Standard: 24-48 ore
- Periodi di picco: 3-5 giorni
- Weekend: nessuna revisione
- Accelerata: disponibile per bug critici
Android:
- Iniziale: 7 giorni in media
- Update: solitamente più rapidi
- Review continue: il rilascio è immediato
- Violazioni delle policy: sospensione immediata possibile
Consiglio pro: Invia le app iOS da lunedì a mercoledì per evitare ritardi nel weekend.
Cosa fare in caso di rifiuto

Passo 1: capire il problema
- Leggi attentamente la notifica di rifiuto
- Prendi nota della linea guida citata
- Verifica gli esempi forniti
- Cerca pattern nel feedback
Passo 2: risolvi a fondo
- Risolvi la causa principale, non i sintomi
- Testa a fondo la correzione
- Documenta tutte le modifiche
- Screenshot prima/dopo
Fase 3: Rispondi in modo professionale

Centro di risoluzione iOS:
Thank you for the feedback. I have addressed the issue:
Issue: Subscription pricing not clear upfront
Fix: Added explicit pricing display on subscription screen
showing "$9.99/month" before purchase button. Also added
cancellation instructions on the same screen.
Screenshots showing changes are attached. Test account
provided in App Review Notes.
Appello Android:
Subject: Policy Violation Appeal - [App Name]
I have received notification regarding [Policy X.Y].
Changes made:
1. Updated subscription UI to show all pricing upfront
2. Added clear cancellation instructions
3. Implemented restore purchases functionality
Version [X.Y.Z] addresses all concerns. Test account
credentials provided below for verification.
Fase 4: Reinvia subito
- Le nuove revisioni sono più rapide
- In genere entro 24 ore
- Includi un account di test
- Fai riferimento alla precedente submission
Aggiornamenti 2025 e nuovi requisiti
Modifiche iOS
Informativa sulle funzionalità AI (Nuovo)
- Etichettare i contenuti generati dall'AI
- Spiegare l'uso dell'AI
- Documentare la sicurezza dei contenuti
Maggiore chiarezza sugli abbonamenti
- Confronto affiancato dei piani richiesto
- Non nascondere le opzioni più economiche
- Percorsi chiari per upgrade/downgrade
Rafforzamento della privacy
- Applicazione rafforzata della Sezione 5.1.1
- Più controlli sulla giustificazione dei dati
- Regole più rigide per le app per bambini
Modifiche Android
Fatturazione alternativa (Regionale)
- Consentito in SEE e Corea del Sud
- Deve comunque offrire l'opzione Google Play
- Commissioni di servizio ridotte
Requisiti per gli abbonamenti API
- Le nuove app devono usare le API monetization.subscriptions
- Le API di fatturazione legacy sono deprecate
- Migliori strumenti di gestione abbonamenti
Best practice per il successo
1. Usa gli SDK corretti
Il @capgo/native-purchases il plugin gestisce correttamente entrambe le piattaforme:
// Single API for iOS and Android
await NativePurchases.configure({
apiKey: 'your_api_key'
});
// Automatically uses correct billing system
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['premium_monthly']
});
// Platform-specific logic handled automatically
await NativePurchases.purchaseProduct({
productIdentifier: 'premium_monthly'
});
2. Implementa una gestione degli errori adeguata
Gestisci correttamente tutti gli stati di acquisto:
- Annullamento da parte dell'utente (silenzioso)
- Errori di rete (opzione di retry)
- Già posseduto (restore)
- Prodotto non disponibile (informa l'utente)
- Pagamento in sospeso (ricontrolla più tardi)
3. Comunica chiaramente
Gli utenti devono sempre sapere:
- Cosa stanno acquistando
- Quanto costa
- Quando verrà effettuato l'addebito
- Come annullare l'abbonamento
- Cosa succede dopo la prova gratuita
4. Testa a fondo
iOS Sandbox:
- Crea account di test in App Store Connect
- Configura sul dispositivo (Impostazioni > App Store > Sandbox)
- Nota: le durate degli abbonamenti sono accelerate
Test delle licenze Android:
- Aggiungi account di test in Play Console
- Visualizza la notifica “Test purchase”
- Nessun addebito reale
Risorse
Documentazione della piattaforma
- Linee guida per la revisione dell'App Store iOS
- Policy per gli sviluppatori di Google Play
- Linee guida per gli acquisti in-app su iOS
- Documentazione Google Play Billing
Guide all'implementazione
- Guida al setup iOS per native-purchases
- Guida al setup Android per native-purchases
- Gruppi di abbonamento iOS
- Abbonamenti Android
Guide dettagliate per la review
Ti serve aiuto da un esperto?
Bloccato con la revisione dell'app o hai bisogno di assistenza pratica? Il nostro team offre supporto dedicato per l'implementazione degli acquisti in-app e la preparazione alla review.
Prenota una call di consulenza con noi per ricevere aiuto personalizzato su:
- Revisione dell'implementazione IAP
- Preparazione alla revisione App Store
- Guida alla strategia di submission
- Assistenza per la risoluzione dei rifiuti
- Supporto completo per setup e test
Abbiamo aiutato centinaia di app a superare la review!
Conclusione
Superare la review con gli acquisti in-app nel 2025 richiede attenzione ai dettagli, comunicazione chiara e un'implementazione corretta. I punti chiave:
- La trasparenza è obbligatoria - Mostra sempre i prezzi in anticipo
- Segui le regole della piattaforma - Usa i sistemi di billing richiesti
- Testa a fondo - Trova i problemi prima dei reviewer
- Comunica chiaramente - Gli utenti non devono mai confondersi
- Prepara la documentazione - Prepara degli account di test
Seguendo questa guida e usando gli strumenti giusti come il plugin native-purchases, aumenterai notevolmente le probabilità di approvazione al primo tentativo.
Ricorda: i reviewer cercano app che rispettino gli utenti e le linee guida. Sviluppa con questo approccio e l'approvazione arriverà.
Ti serve aiuto per implementare gli acquisti in-app? Dai un'occhiata alla nostra documentazione completa o contatta la community per supporto.
Continua da Come superare la review dell'App Store per gli acquisti in-app nel 2025
Se stai usando Come superare la revisione App Store per gli acquisti in-app nel 2025 per pianificare l'approvazione e la distribuzione negli store, collegalo a @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, Utilizzo di @capgo/capacitor-native-market per la funzionalità nativa in Utilizzo di @capgo/capacitor-native-market, e Aggiornamenti OTA Capacitor: Guida all'approvazione App Store per il contesto pratico in Aggiornamenti OTA Capacitor: Guida all'approvazione App Store.