Passer à la navigation principale

Configurer la mise en sandbox de test iOS

GitHub

La mise en œuvre des achats en application sur iOS nécessite une configuration appropriée dans App Store Connect et sur vos appareils de test. Ce guide couvre tout ce dont vous avez besoin pour vous lancer dans la mise en œuvre de la sandbox.

  • Programme des développeurs Apple: Membre actif avec renouvellement annuel
  • Accords: Accord « Paiement d'applications payantes » signé avec les informations bancaires et fiscales complétées
  • Projet Xcode: Configuré avec un identifiant de bundle approprié et des capacités
  1. Signer l'accord des applications payantes

    Dans l'App Store Connect, naviguez vers Conventions, impôt et banque et complétez :

    • Signer l'accord des applications payantes
    • Ajoutez vos informations bancaires
    • Remplissez les formulaires fiscaux

    Attendez que Apple approuve vos informations (cela peut prendre entre 24 et 48 heures).

  2. Créez un Utilisateur de test de Sandbox

    Dans App Store Connect, allez à Utilisateurs et accès > Testeurs de Sandbox.

    Cliquez sur le + bouton pour créer un nouveau testeur de sandbox.

    Important : Utilisez une adresse e-mail qui n'est pas déjà associée à un ID Apple. Vous pouvez utiliser des alias e-mail :

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

    Créez un testeur de sandbox

  3. Configurer l'appareil de test (iOS 12+)

    À partir de iOS 12, vous n'avez plus besoin de vous déconnecter de votre compte iTunes pour tester les achats.

    Sur votre appareil iOS :

    1. Ouvrez Réglages
    2. Appuyez App Store
    3. Faites défiler vers le bas
    4. Appuyez Compte de test de sandbox
    5. Connectez-vous avec votre compte de test de sandbox
  4. Configurer le projet Xcode

    Vérifiez que votre projet Xcode possède :

    Identifiant de l'application

    • Doit correspondre à l'identifiant dans votre Centre de développement
    • Doit correspondre à l'identifiant dans App Store Connect

    Capacité d'achat en application

    1. Sélectionnez votre projet dans Xcode
    2. Allez à Signature et capacités
    3. Cliquez + Capacité
    4. Ajouter Achat en Ligne
  5. Créer des Produits d'Achat en Ligne

    Dans l'App Store Connect, naviguez vers votre application et créez vos produits d'achat en ligne (abonnements, consommables, etc.).

    Les produits doivent être au moins dans l'état « Prêt à Soumettre » pour les tests de sandbox.

  6. Testez votre mise en œuvre

    Construirez et exécutez votre application sur un appareil de test. Lorsque vous tenterez d'effectuer une achat, vous devriez voir :

    [Environnement : Sandbox]

    Cette confirmation indique que vous êtes dans l'environnement de sandbox et que vous ne serez pas facturé d'argent réel.

  • Aucune facture réelleToutes les achats sont gratuits en mode sandbox
  • Abonnements accélérés : Les durées d'abonnement sont raccourcies pour un test plus rapide
    • 1 semaine d'abonnement = 3 minutes
    • 1 mois d'abonnement = 5 minutes
    • 2 mois d'abonnement = 10 minutes
    • 3 mois d'abonnement = 15 minutes
    • 6 mois d'abonnement = 30 minutes
    • 1 an d'abonnement = 1 heure
  • Limite de renouvellement automatique: Les abonnements se renouvellent jusqu'à 6 fois dans le sandbox
  • Annulation immédiate: Les abonnements annulés expirent immédiatement
  • Créez plusieurs comptes de test pour différents scénarios
  • Utilisez les comptes de test uniquement sur des appareils de test
  • Évitez d'utiliser un ID Apple personnel pour le test de sandbox
  • Les comptes de test peuvent acheter n'importe quel produit, quel que soit le pays
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);

Lorsqu'elle est correctement configurée, vous devriez observer :

  1. Bannière de sandbox pendant l'achat : « [Environnement : Sandbox] »
  2. Les produits chargent avec succès
  3. Les achats sont terminés sans frais réels
  4. Les factures sont validées correctement
  5. Les abonnements se renouvellent automatiquement (à un rythme accéléré)

Produits ne chargent pas :

  • Vérifiez que l'identifiant de l'ensemble correspond à App Store Connect
  • Vérifiez que les accords sont signés et approuvés
  • Assurez-vous que les produits sont au moins au statut « Prêt à soumettre »
  • Attendez 2-3 heures après avoir créé des produits

“Impossible de se connecter à l’iTunes Store” :

  • Vérifiez que votre compte sandbox est configuré correctement
  • Vérifiez que le dispositif est connecté à Internet
  • Essayez de vous déconnecter et de vous reconnecter à votre compte sandbox
  • Redémarrez l'application

Achats enregistrés en silence :

  • Vérifiez les messages d'erreur dans la console Xcode
  • Vérifiez que la capacité d'achat en application est activée
  • Assurez-vous que l'adresse e-mail de votre compte sandbox n'est pas un ID Apple réel
  • Essayez de créer un nouveau compte de test sandbox

Erreurs de validation de récépissé :

  • Utilisez l'endpoint de validation de récépissé sandbox pour les tests
  • Endpoint de production : https://buy.itunes.apple.com/verifyReceipt
  • Endpoint de sandbox : https://sandbox.itunes.apple.com/verifyReceipt
  • Le plugin native-purchases gère cela automatiquement

Durée de souscription incorrecte :

  • N'oubliez pas que les souscriptions sont accélérées dans le sandbox
  • Utilisez le tableau de conversion ci-dessus pour les durées attendues
  • Les souscriptions se renouvellent automatiquement jusqu'à 6 fois dans le sandbox

“Cette adresse Apple n'a pas encore été utilisée dans l'App Store” :

  • C'est normal pour de nouveaux comptes de sandbox
  • Procédez à l'achat pour activer le compte
  • Se produit uniquement lors de la première utilisation
  1. Créez plusieurs comptes de test pour différentes scénarios de test
  2. Tester toutes les durées de souscription pour vérifier le comportement
  3. Tester l'annulation et la renouvellement des flux
  4. Vérifier la validation de la réception fonctionne correctement
  5. Tester la restauration des achats la fonctionnalité
  6. Vérifier l'amélioration de la souscription/diminution le comportement
  7. Tester avec des conditions de réseau dégradées
FonctionnalitéSandboxProduction
Charges réellesNonOui
Durée de l'abonnementAccéléréNormal
Limite de renouvellement automatique6 foisInfini
Effet d'annulationImmédiatFin de période
Point de réception de la factureURL de sandboxURL de production
Seulement pour les comptes de testOuiNon

Ressources supplémentaires

Ressources supplémentaires

Pour plus de détails, consultez la documentation officielle de StoreKit d'Apple sur le test de sandbox.

Continuez de Configure iOS Sandbox Testing

Si vous utilisez

Configure iOS Sandbox Testing pour planifier l'approbation et la distribution de l'application, connectez-le à Using @__CAPGO_KEEP_0__/native-purchases pour la capacité native dans Using @capgo/native-purchases, Using @capgo/__CAPGO_KEEP_1__-in-app-review @capgo/capacitor-in-app-review Détails d'implémentation dans @capgo/capacitor-examen-en-ligne-de-l'application, En utilisant @capgo/capacitor-examen-en-ligne-de-l'application Détails d'implémentation dans @capgo/capacitor-marché-natif, @capgo/capacitor-marché-natif Détails d'implémentation dans @capgo/capacitor-marché-natif, et En utilisant @capgo/capacitor-marché-natif Détails d'implémentation dans En utilisant @capgo/capacitor-marché-natif.