Saltare al contenuto

Configura i Test di Sandbox iOS

GitHub

Per effettuare test delle acquisti in-app su iOS è necessaria una configurazione corretta in App Store Connect e sui dispositivi di test. Questa guida copre tutto ciò di cui hai bisogno per iniziare con i test del sandbox.

  • Programma sviluppatore Apple: Iscrizione attiva con rinnovo annuale
  • Accordi: Accordo firmato “Applicazioni a pagamento” con informazioni bancarie e fiscali completate
  • Progetto Xcode: Configurato con identificatore di bundle e capacità corretti
  1. Sottoscrivi l'Accordo per le Applicazioni a pagamento

    In App Store Connect, naviga a Accordi, Tasse e Banche e completa:

    • Sottoscrivi l'Accordo per le Applicazioni a pagamento
    • Aggiungi le tue informazioni bancarie
    • Completa i moduli di tasse

    Aspetta che Apple approvi le tue informazioni (questo può richiedere 24-48 ore).

  2. Crea un Utente di Test Sandbox

    In App Store Connect, vai a Utenti e Accesso > Testers Sandbox.

    Clicca sul + crea un nuovo tester di sabbia.

    ImportanteUsa un indirizzo email che non è già associato a un ID Apple. Puoi utilizzare alias email:

    • Gmail: youremail+test@gmail.com
    • iCloud: youremail+test@icloud.com

    Crea tester di sabbia

  3. Configura dispositivo di prova (iOS 12+)

    A partire da iOS 12, non è più necessario disconnettersi dal tuo account iTunes per testare gli acquisti.

    Sul tuo dispositivo iOS:

    1. Apri Impostazioni
    2. Tocca App Store
    3. Scorri fino in fondo
    4. Tocca Account di Sandbox
    5. Accedi con il tuo account di test di sandbox
  4. Configura il Progetto Xcode

    Assicurati che il tuo progetto Xcode abbia:

    Identificatore del Bundle

    • Deve corrispondere all'identificatore nel tuo Centro per sviluppatori
    • Deve corrispondere all'identificatore in App Store Connect

    Capacità di acquisto in-app

    1. Seleziona il tuo progetto in Xcode
    2. Vai a Firma e capacità
    3. Clicca Aggiungi capacità
    4. Aggiungi Acquisto in-app
  5. Crea prodotti di acquisto in-app

    In App Store Connect, naviga al tuo app e crea i tuoi prodotti di acquisto in-app (abbonamenti, consumabili, ecc.).

    I prodotti devono essere almeno in stato "Pronto per la pubblicazione" per il testing del sandbox.

  6. Verifica la tua Implementazione

    Costruisci e esegui l'app sul dispositivo di test. Quando effettui un acquisto, dovresti vedere:

    [Ambiente: Sandbox]

    Questa conferma indica che ti trovi nell'ambiente di test e non sarai addebitato denaro reale.

  • Nessuna spesa reale: Tutti gli acquisti sono gratuiti in modalità sandbox
  • Abbonamenti accelerati: Le durate degli abbonamenti sono abbreviate per un test più veloce
    • 1 settimana di sottoscrizione = 3 minuti
    • 1 mese di sottoscrizione = 5 minuti
    • 2 mesi di sottoscrizione = 10 minuti
    • 3 mesi di sottoscrizione = 15 minuti
    • 6 mesi di sottoscrizione = 30 minuti
    • 1 anno di sottoscrizione = 1 ora
  • Limite di rinnovo automatico: Le sottoscrizioni si rinnovano fino a 6 volte in sandbox
  • Cancellazione immediata: Le sottoscrizioni annullate scadono immediatamente
  • Crea più conti di test per diversi scenari
  • Usa conti di test solo su dispositivi di test
  • Non usare l'ID Apple personale per il testing del sandbox
  • I conti di test possono acquistare qualsiasi prodotto indipendentemente dalla regione
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
const { isBillingSupported } = await NativePurchases.isBillingSupported();
if (!isBillingSupported) {
throw new Error('StoreKit not supported on this device');
}
// Fetch products (automatically uses sandbox when available)
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['premium_monthly'],
productType: PURCHASE_TYPE.SUBS,
});
// Make test purchase
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: 'premium_monthly',
productType: PURCHASE_TYPE.SUBS,
});
console.log('Test purchase successful!', transaction.transactionId);

Quando configurato correttamente, dovresti osservare:

  1. Banner del sandbox durante l'acquisto: “[Ambiente: Sandbox]”
  2. Prodotti caricano con successo
  3. Acquisti completati senza spese reali
  4. Le ricevute si verificano correttamente
  5. Le sottoscrizioni si rinnovano automaticamente (a un ritmo accelerato)

Prodotti non caricano:

  • Verifica che l'identificatore del pacchetto corrisponda a App Store Connect
  • Verifica che gli accordi siano firmati e approvati
  • Assicurati che i prodotti siano almeno nella condizione “Pronto per la pubblicazione”
  • Attendi 2-3 ore dopo aver creato i prodotti

“Impossibile connettersi allo Store iTunes”:

  • Verifica che l'account sandbox sia configurato correttamente
  • Verifica che il dispositivo sia collegato a Internet
  • Prova a disconnettersi e a riaccedere all'account sandbox
  • Riavvia l'app

Acquisti che falliscono in silenzio:

  • Controlla il console di Xcode per i messaggi di errore
  • Verifica che la capacità di acquisto In-App sia abilitata
  • Assicurati che l'indirizzo email dell'account sandbox non sia un ID Apple reale
  • Crea un nuovo account di test sandbox per provare

Errori di validazione del ricevuto:

  • Utilizza l'endpoint di validazione del ricevuto sandbox per testare
  • Endpoint di produzione: https://buy.itunes.apple.com/verifyReceipt
  • Endpoint sandbox: https://sandbox.itunes.apple.com/verifyReceipt
  • Il plugin native-purchases gestisce automaticamente questo aspetto

Durata della sottoscrizione sbagliata:

  • Ricorda che le sottoscrizioni sono accelerate nel sandbox
  • Utilizza la tabella di conversione sopra per le durate previste
  • Le sottoscrizioni si rinnovano automaticamente fino a 6 volte nel sandbox

“Questa Apple ID non è ancora stata utilizzata nell'iTunes Store”:

  • Questo è normale per nuovi account sandbox
  • Procedi con l'acquisto per attivare l'account
  • Succede solo alla prima utilizzo
  1. Creare più account di test per diversi scenari di test
  2. Testare tutte le durate delle sottoscrizioni per verificare il comportamento
  3. Testare la cancellazione e la rinnovazione dei flussi
  4. Verificare la validazione del ricevuto funziona correttamente
  5. Test ripristino acquisti __CAPGO_KEEP_0__
  6. __CAPGO_KEEP_0__ Verifica l'aggiornamento/abbassamento della sottoscrizione
  7. __CAPGO_KEEP_0__

Test con condizioni di rete scarse

Produzione vs. Sandbox
__CAPGO_KEEP_0__SandboxProduzione
Carichi realiNo
Durata della sottoscrizioneAcceleratoNormale
Limite di rinnovo automatico6 volteSenza limiti
Effetto della cancellazioneIstantaneoFine del periodo
Punto di ricezione della ricevutaURL di sandboxURL di produzione
Solo per conti di testNo

Per ulteriori informazioni, si prega di consultare il documentazione ufficiale di Apple StoreKit sul testing del sandbox.

Continua da Configurazione del testing del sandbox iOS

Sezione intitolata “Continua da Configurazione del testing del sandbox iOS”

Se stai utilizzando Configura il testing di sandbox per iOS per pianificare l'approvazione e la distribuzione della store, connettilo con Usando @capgo/acquisti nativi per la capacità nativa in Usando @capgo/acquisti nativi, Usando @capgo/capacitor-recensione in-app per la dettaglio di implementazione in @capgo/capacitor-recensione in-app, Usando @capgo/capacitor-recensione in-app per la capacità nativa in Usando @capgo/capacitor-recensione in-app, @capgo/capacitor-mercato nativo per il dettaglio di implementazione in @capgo/capacitor-mercato nativo, e Usando @capgo/capacitor-mercato nativo per la capacità nativa in Usando @capgo/capacitor-mercato nativo.