Créer des achats intégrés
Vous pouvez suivre ces guides pour créer des achats intégrés (in app purchase) et des abonnements :
- Créer un achat intégré dans l'application dans l’App Store ConnectVeillez également à accepter les accords pour les applications payantes, à renseigner les informations fiscales et à ajouter un compte bancaire dans le tableau de bord des accords d'App Store Connect.
- Créer un produit intégré à l'application dans la console Google Play
- Créer un abonnement dans la Console Google Developer
Il se peut que l'on vous demande d'entrer quelques informations supplémentaires pour permettre les paiements dans votre compte de développeur.
Comme vous devrez créer un achat intégré dans chaque plateforme, veillez à utiliser le même identifiant de produit sur les deux plateformes, de sorte que le déclenchement de l'achat intégré via JavaScript soit plus facile (voir ci-dessous).
Déclencher un achat intégré dans l'application
Tout d'abord, vous voudrez probablement vérifier si l'utilisateur actuel utilise votre application, car un utilisateur de navigateur ordinaire ne pourra pas effectuer d'achats intégrés.
executeWhenAppReady()dans notre script d'aide de l'application. Elle garantit que votre site web n'essaie pas d'interagir avec l'application avant qu'elle ne soit prête ou lorsque votre site web est chargé à l'aide d'un navigateur normal (Erreur de référence, la fonction n'est pas définie). Ensuite, si l'utilisateur utilise votre application, vous pouvez utiliser le JavaScript ci-dessous pour déclencher un achat intégré dans l'application.
<script>
try {
// productId is the ID you specified for the in app purchase product in App Store Connect and the Google Play Console
// consumable is a boolean value that indicates whether the product can be purchased multiple times (consumable==true) or just once (consumable==false)
// subscriptions should use consumable==false
// userIdentifier can be any string that identifies the current user.
// The userIdentifier will be sent to your server's unlocking endpoint if the purchase is successful (so you can then unlock the product that was bought on your server)
resultingStatus = await makeInAppPurchase(productId, consumable, userIdentifier)["status"];
switch (resultingStatus) {
case "failed":
// The purchase failed, for example due to an error while verifying the purchase
break;
case "canceled":
// The user canceled the purchase, for example by pressing the back button
break;
case "completed":
// The purchase was successful
break;
}
} catch (e) {
// Some kind of error occurred, e.g. the given productId is invalid
}
</script>
Pendant que vous attendez la fonction, l'utilisateur sera sur un écran fourni par l'application. La fonction JavaScript renverra une fois l'achat terminé afin que vous puissiez recharger la page ou mettre à jour l'interface utilisateur comme vous le jugez nécessaire. Une fois que l'utilisateur ferme l'écran de l'application native, il retournera sur votre site web.

Restaurer les achats intégrés
executeWhenAppReady()dans notre script d'aide de l'application. Elle garantit que votre site web n'essaie pas d'interagir avec l'application avant qu'elle ne soit prête ou lorsque votre site web est chargé à l'aide d'un navigateur normal (Erreur de référence, la fonction n'est pas définie). Vous pouvez également proposer une option "Restore Purchases (Restaurer les achats)" à vos utilisateurs.
<script>
restorePurchases()
</script>
Généralement, la restauration des achats est nécessaire lorsque les utilisateurs désinstallent l'application et l'installent à nouveau sur un nouvel appareil. Ils peuvent alors restaurer leurs achats précédents. Les informations et les achats de l'utilisateur sont déjà stockés sur votre serveur, lequel est indépendant de l'appareil de l'utilisateur.
Nous vous donnons encore la possibilité d'intégrer une fonctionnalité de restauration des achats dans l'espoir qu'elle puisse être utile dans d'autres circonstances, par exemple, en cas de problème lors de la vérification et du déverrouillage des achats d'un utilisateur.
Prochaines étapes
Après qu'un utilisateur a effectué un achat dans l'application, l'achat doit être vérifié sur un serveur et s'il est vérifié avec succès, le contenu acheté doit être déverrouillé sur votre serveur.
Veuillez consulter vos paramètres d'achat intégrés dans l'application pour plus d'informations et pour accéder à des guides.