{"id":137861,"date":"2021-08-26T00:00:00","date_gmt":"2021-08-26T00:00:00","guid":{"rendered":"https:\/\/adapty.io\/fr-ios-in-app-purchases-part-4-server-side-purchase-validation\/"},"modified":"2021-08-26T00:00:00","modified_gmt":"2021-08-26T00:00:00","slug":"ios-in-app-purchases-part-4-server-side-purchase-validation","status":"publish","type":"post","link":"https:\/\/adapty.io\/fr\/blog\/ios-in-app-purchases-part-4-server-side-purchase-validation\/","title":{"rendered":"Achats int\u00e9gr\u00e9s sous iOS, partie 4 : validation des achats c\u00f4t\u00e9 serveur"},"content":{"rendered":"\n
La validation par le serveur (validation du re\u00e7u (receipt validation) c\u00f4t\u00e9 serveur<\/a>) est un moyen de v\u00e9rifier l’authenticit\u00e9 de l’achat. Contrairement \u00e0 la validation bas\u00e9e sur le dispositif, la validation du serveur se produit – attendez – du c\u00f4t\u00e9 du serveur. La validation signifie que l’appareil ou le serveur fait une requ\u00eate aux serveurs d’Apple pour savoir si l’achat a r\u00e9ellement eu lieu et s’il \u00e9tait valide.<\/p>\n\n\n\n\n\n Il convient de noter que la validation du serveur n’est pas obligatoire – les achats int\u00e9gr\u00e9s fonctionneront toujours sans elle. Il pr\u00e9sente cependant quelques avantages :<\/p>\n\n\n\n D’apr\u00e8s notre exp\u00e9rience, le premier avantage suffit \u00e0 lui seul \u00e0 mettre en place le traitement des achats par serveur.<\/p>\n\n\n\n En g\u00e9n\u00e9ral, le processus de validation des re\u00e7us sous iOS ressemble \u00e0 ceci :<\/p>\n\n\n\n Pour envoyer une demande de validation de paiement, vous devez inclure le secret partag\u00e9 pour autoriser la demande. Vous pouvez en g\u00e9n\u00e9rer un dans App Store Connect. <\/p>\n\n\n\n Le secret partag\u00e9 peut \u00eatre cr\u00e9\u00e9 pour une application sp\u00e9cifique (secret sp\u00e9cifique \u00e0 l’application) ou pour toutes les applications du compte (secret principal).<\/p>\n\n\n\n Pour g\u00e9n\u00e9rer un secret sp\u00e9cifique \u00e0 l’application, ouvrez la page de l’application dans App Store Connect, allez dans Achats int\u00e9gr\u00e9s \u2192 G\u00e9rer et cliquez sur Secret partag\u00e9 sp\u00e9cifique \u00e0 l’application. Dans la fen\u00eatre qui s’ouvre, vous pourrez g\u00e9n\u00e9rer un nouveau jeton ou copier le jeton existant.<\/p>\n\n\n\n Pour recevoir le secret pour toutes les applications de votre compte, ouvrez la page Users and Access et s\u00e9lectionnez l’onglet Secret partag\u00e9.<\/p>\n\n\n\n Une fois que vous avez re\u00e7u le secret partag\u00e9, vous pouvez envoyer des re\u00e7us pour les faire valider sur les serveurs d\u2019Apple. Cela se fait par le biais de la requ\u00eate verifyReceipt<\/a>. Vous devez envoyer une requ\u00eate POST \u00e0 https:\/\/buy.itunes.apple.com\/verifyReceipt<\/a>. Dans le corps de requ\u00eate JSON, transmettez le secret partag\u00e9 dans le champ password<\/em> et le re\u00e7u dans le champ receipt-data<\/em>. Il y a aussi le param\u00e8tre optionnel exclude-old-transactions<\/em>. S’il s’agit de la valeur r\u00e9elle, alors pour chaque abonnement auto-renouvelable, vous recevrez uniquement la derni\u00e8re transaction en lieu et place de l’historique complet des renouvellements.<\/p>\n\n\n\n Voici la charge utile de la demande de validation d’achat :<\/p>\n\n\n\nPourquoi valider les achats ?<\/h2>\n\n\n\n
\n
Validation des achats<\/h2>\n\n\n\n
<\/figure>\n\n\n\nG\u00e9n\u00e9ration du secret partag\u00e9 (shared secret)<\/h3>\n\n\n\n

<\/figure>\n\n\n\n
Demande de validation de paiement<\/h3>\n\n\n\n