-
Nouveautés dans StoreKit et les achats intégrés
Découvrez les dernières améliorations de l'API StoreKit qui vous permettront d'offrir à vos clients une expérience d'achat intégré exceptionnelle. Nous passerons en revue les nouveaux champs ajoutés à AppTransaction, Transaction et RenewalInfo, ainsi que les mises à jour des codes d'offre d'achat intégré. Nous aborderons également la création de demandes d'achat intégré signées à l'aide de la bibliothèque serveur de l'App Store et les améliorations de la mise en avant des abonnements avec SwiftUI.
Chapitres
- 0:00 - Introduction
- 0:36 - Explorer les nouvelles fonctionnalités
- 10:24 - Signer les demandes d’achat intégré
- 14:21 - Mettre en avant les abonnements
Ressources
- Set up offer codes
- Advanced Commerce API
- Simplifying your implementation by using the App Store Server Library
- Implementing a store in your app using the StoreKit API
- Human Interface Guidelines: In-app purchase
- StoreKit
Vidéos connexes
WWDC25
WWDC24
WWDC23
WWDC21
-
Rechercher dans cette vidéo…
-
-
- 0:00 - Introduction
Découvrez les nouvelles fonctionnalités de StoreKit, notamment les mises à jour du framework principal, la bibliothèque App Store Server pour la consignation des demandes d’achat intégré, et les vues SwiftUI pour la commercialisation des abonnements.
- 0:36 - Explorer les nouvelles fonctionnalités
Trois types de clés ont été mis à jour dans StoreKit : AppTransaction, Transaction et RenewalInfo. Ces types vous fournissent des informations précieuses sur l’achat de votre app, ainsi que sur l’historique des transactions et le statut d’abonnement de vos clients. « AppTransaction » comprend désormais deux nouveaux champs dans iOS 18.4. « appTransactionID » est une valeur globale unique pour chaque compte Apple qui télécharge votre app. Elle est rétro-déployée dans iOS 15. Cet identifiant est également unique pour chaque membre du groupe familial pour les apps prenant en charge le partage familial. Le champ originalPlatform indique la plateforme sur laquelle le client a acheté l’app à l’origine, par exemple iOS, macOS, tvOS ou visionOS. Ces informations vous permettent de prendre en charge les changements de modèle commercial et d’attribuer les droits appropriés aux clients. Le type « Transaction » représente un achat intégré réussi et comprend des informations telles que la date d’achat, l’ID du produit et la date d’expiration pour les abonnements à renouvellement automatique. À partir d’iOS 18.4, l’API Transaction.currentEntitlement(for:) est remplacée par Transaction.currentEntitlements(for:). Cette nouvelle API renvoie une séquence asynchrone de transactions donnant droit au client à un produit donné, car un client peut disposer de plusieurs droits par différents moyens. Le modèle « Transaction » comporte trois nouveaux champs cette année : « appTransactionID », « offer period », qui détaille la période d’abonnement associée à une offre utilisée, et « advancedCommerceInfo », qui s’applique uniquement aux apps qui utilisent l’API Advanced Commerce. L’API Advanced Commerce facilite la prise en charge des achats intégrés pour les catalogues de contenu volumineux, les expériences créatives et les abonnements avec options supplémentaires. Enfin, le type « RenewalInfo », spécifique aux abonnements à renouvellement automatique, contient des informations détaillées sur le statut de renouvellement de l’abonnement, ce qui vous permet de gérer et de comprendre efficacement les activités basées sur des abonnements. Il inclut des informations telles que la date du prochain renouvellement de l’abonnement et, pour les abonnés dont l’abonnement a expiré, le motif de l’expiration. Ces motifs peuvent vous permettre de mieux comprendre le comportement des clients et d’adapter vos stratégies en conséquence. Par exemple, si un abonnement expire en raison d’une augmentation de prix, vous pouvez utiliser cette information pour proposer des promotions de fidélisation et encourager les clients à se réabonner. À partir d’iOS 18.4, l’API « SubscriptionStatus » a été améliorée. Vous pouvez désormais interroger les statuts d’abonnement à l’aide d’un ID de transaction. Cette mise à jour offre davantage de flexibilité et un meilleur accès aux données. De plus, quatre nouveaux champs ont été ajoutés au type « RenewalInfo ». Vous bénéficiez ainsi d’informations plus complètes sur les détails de l’abonnement.
- 10:24 - Signer les demandes d’achat intégré
Cette année, les nouvelles API Purchase Option et View Modifier nécessitent des signatures Web JSON (JWS). Grâce à ces API, vous pouvez définir l’éligibilité des clients aux offres de lancement et signer des offres promotionnelles au format JWS. La bibliothèque App Store Server simplifie le processus de signature JWS. Vous devez récupérer votre clé de signature d’achat intégré dans App Store Connect et l’utiliser avec la bibliothèque pour créer des requêtes signées.
- 14:21 - Mettre en avant les abonnements
Une nouvelle vue SwiftUI appelée « SubscriptionOfferView » a été conçue pour vous aider à présenter et promouvoir les abonnements à renouvellement automatique dans vos apps. Cette vue simplifie le processus de commercialisation des abonnements en chargeant automatiquement les métadonnées du produit depuis l’App Store lorsqu’elles sont déclarées à l’aide d’un identifiant d’abonnement à renouvellement automatique. Vous pouvez personnaliser l’apparence de « SubscriptionOfferView » en utilisant l’image d’abonnement configurée dans App Store Connect ou en fournissant une icône personnalisée. Vous pouvez également définir une icône de remplacement à afficher pendant le téléchargement des métadonnées de l’abonnement. Vous pouvez également améliorer la vue avec le modificateur « subscriptionOfferViewDetailAction », qui ajoute un bouton « detailLink ». Lorsque vous appuyez sur ce bouton, vous déclenchez l’action personnalisée que vous avez préalablement configurée. Cette action consiste généralement à diriger les clients vers une boutique d’abonnements intégrée à l’app, où ils peuvent découvrir et acheter les forfaits disponibles. Pour choisir l’offre d’abonnement à présenter dans une vue SubscriptionOfferView, tenez compte du statut d’abonnement actuel de l’utilisateur grâce au modificateur « subscriptionStatusTask » disponible dans iOS 17. Grâce à la conversion des différents statuts d’abonnement de StoreKit vers un format adapté à votre app, vous pourrez actualiser dynamiquement l’interface utilisateur. Vous pouvez configurer « SubscriptionOfferView » pour afficher différents forfaits en fonction du statut du client, à l’aide du paramètre « visibleRelationship ». Les options disponibles sont « upgrade », « downgrade », « crossgrade », « current » et « all ».