Configurer la test de sandbox iOS
Copiez une invite de configuration avec les étapes d'installation et la guide markdown complet pour ce plugin.
La mise en œuvre de tests de 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 démarrer avec les tests de sandbox.
Prérequis
Section intitulée « Prérequis »- Programme Apple Developer : Membre actif avec renouvellement annuel
- Accords : Accord « Applications payantes » signé avec informations bancaires et fiscales complétées
- Projet Xcode : Configuré avec un identifiant de bundle approprié et des capacités
Procédure de mise en place
Section intitulée « Procédure de mise en place »-
Signez l'Accord sur les Applications Payantes
Dans App Store Connect, naviguez vers Accords, Taxes et Banques et complétez :
- Signez l'Accord sur les Applications Payantes
- Ajoutez vos informations bancaires
- Complétez les formulaires fiscaux
Attendez que Apple approuve vos informations (cela peut prendre 24 à 48 heures).
-
Créez un Utilisateur de Test de Sandbox
Dans App Store Connect, allez à Utilisateurs et Accès > Testeurs de Sandbox.
Cliquez sur + bouton pour créer un nouveau testeur de sandbox.
ImportantUtilisez une adresse e-mail qui n'est pas déjà associée à un ID Apple. Vous pouvez utiliser des alias d'adresse e-mail :
- Gmail :
youremail+test@gmail.com - iCloud :
youremail+test@icloud.com

- Gmail :
-
Configurer 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 :
- Ouvrir Réglages
- Appuyer App Store
- Faites défiler jusqu'en bas
- Appuyez Compte de sandbox
- Connectez-vous avec votre compte de test de sandbox
-
Configurez le projet Xcode
Vérifiez que votre projet Xcode a :
Identifiant de l'ensemble de ressources
- Doit correspondre à l'identifiant dans votre Centre de développement
- Doit correspondre à l'identifiant dans App Store Connect
Capacité d'Achat In-App
- Sélectionnez votre projet dans Xcode
- Allez à Signature et Capacités
- Cliquez + Capacité
- Ajoutez Achat In-App
-
Créez des produits d'achat In-App
Dans App Store Connect, naviguez vers votre application et créez vos produits d'achat In-App (abonnements, consommables, etc.).
Les produits doivent être au moins dans « Prêt à Soumettre » pour les tests de sandbox.
-
Testez votre mise en œuvre
Construirez et exécutez votre application sur un appareil de test. Lorsque vous effectuez une transaction, vous devriez voir :
[Environnement : Sandbox]
Cette confirmation indique que vous êtes dans l'environnement de sandbox et que vous ne serez pas facturé de vraies sommes d'argent.
Notes importantes
Caractéristiques de l'environnement de sandboxAucun frais réel
: Toutes les transactions sont gratuites en mode sandbox- Abonnements accélérés: Les durées d'abonnement sont raccourcies pour un test plus rapide
- Section titled “Important Notes”Section titled “Sandbox Environment Characteristics”
- 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 en sandbox
- Annulation immédiate : Les abonnements annulés expirent immédiatement
Gestion du compte de sandbox
Section intitulée “Gestion du compte de sandbox”- Créez plusieurs comptes de test pour différents scénarios
- Utilisez uniquement des comptes de test sur des appareils de test
- N'utilisez pas votre identifiant Apple personnel pour la mise en boîte de test
- Les comptes de test peuvent acheter n'importe quel produit, quel que soit le pays
Utilisation de la mise en boîte de test
Section intitulée « Utilisation de la mise en boîte de test »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 purchaseconst transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'premium_monthly', productType: PURCHASE_TYPE.SUBS,});
console.log('Test purchase successful!', transaction.transactionId);Vérification
Section intitulée « Vérification »Lorsque la configuration est correcte, vous devriez observer :
- Bannière de la boîte de test pendant l'achat : « [Environnement : Boîte de test] »
- Les produits chargent avec succès
- Les achats sont complets sans frais réels
- Les reçus sont validés correctement
- Les abonnements se renouvellent automatiquement (à un rythme accéléré)
Résolution des problèmes
Section intitulée « Résolution des problèmes »Les 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 dans l'état « Prêt à soumettre »
- Attendez 2-3 heures après avoir créé des produits
« Impossible de se connecter à l'App Store de test » :
- Vérifiez que le compte de test est configuré correctement
- Vérifiez que le dispositif est connecté à Internet
- Essayez de vous déconnecter et de vous reconnecter au compte de test
- Redémarrez l'application
Les achats échouent en silence :
- Vérifiez le journal de console de Xcode pour les messages d'erreur
- Vérifiez que la capacité d'Achat en Ligne est activée
- Assurez-vous que l'adresse e-mail du compte de test 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 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 sandbox
- Procédez au paiement pour activer le compte
- Se produit uniquement lors de la première utilisation
Meilleures Pratiques
Section intitulée « Meilleures Pratiques »- Créez plusieurs comptes de test pour différents scénarios de test
- Testez toutes les durées de souscription pour vérifier le comportement
- Testez les flux de suppression et de renouvellement de comptes
- Vérifiez la validation des reçus qui fonctionne correctement
- Testez la restauration des achats fonctionnalité
- Vérifiez l'upgrade/downgrade de l'abonnement comportement
- Testez avec des conditions de réseau dégradées
Production vs. Environnement de test
Section intitulée “Production vs. Environnement de test”| Fonctionnalité | Environnement de test | Production |
|---|---|---|
| Charges réelles | Non | Oui |
| Durée de l'abonnement | Accéléré | Normal |
| Limite de renouvellement automatique | 6 fois | Infini |
| Effet d'annulation | Immédiat | Fin de période |
| Point de terminaison de la facture | URL de sandbox | URL de production |
| Seulement pour les comptes de test | Oui | Non |
Ressources supplémentaires
Section intitulée « Ressources supplémentaires »Pour plus de détails, consultez la documentation officielle de StoreKit d'Apple sur la mise en test de sandbox.
Continuez de la configuration de la mise en test iOS
Section intitulée « Continuez de la configuration de la mise en test iOS »Si vous utilisez Configurez les tests de sandbox iOS pour planifier l'approbation et la distribution de l'application, connectez-l’avec En utilisant @capgo/achats-natifs pour la capacité native dans En utilisant @capgo/achats-natifs, En @capgo/capacitor-avis-de-l'utilisateur pour le détail d'implémentation dans En @capgo/capacitor-avis-de-l'utilisateur, En utilisant @capgo/capacitor-avis-de-l'utilisateur pour la capacité native dans En utilisant @capgo/capacitor-avis-de-l'utilisateur, En @capgo/capacitor-marché-natif pour le détail d'implémentation dans En @capgo/capacitor-marché-natif, et En utilisant @capgo/capacitor-marché-natif pour la capacité native dans En utilisant @capgo/capacitor-marché-natif.