Apple Pay dans Xamarin.iOS
Ce guide explore la configuration de l’environnement Xamarin.iOS à utiliser avec Apple Pay pour payer des biens physiques, tels que des aliments, des divertissements et des appartenances via votre application. Il inclut des informations sur les identificateurs, certificats et droits requis.
Apple Pay a été introduit avec iOS 8, permettant aux utilisateurs de payer des biens physiques tels que des aliments, des divertissements et des appartenances via leurs appareils iOS. Il est disponible sur i Téléphone 6 et i Téléphone 6 Plus, et peut également être associé à l’Apple Watch pour les achats en magasin. Lorsqu’il est utilisé sur un i Téléphone, il utilise Touch ID comme moyen de confirmer et d’autoriser les transactions à l’carte de crédit ou de débit d’un utilisateur.
Spécifications
Apple Pay est disponible uniquement dans iOS 8 et versions ultérieures, et nécessite donc un minimum de Xcode 6.
Les éléments suivants sont également nécessaires pour intégrer Apple Pay à votre application :
- Plateforme de processeur de paiement
- Identificateur du marchand
- Un certificat Apple Pay
- Droits Apple Pay
Ce document examine ces éléments plus en détail.
Différences entre Apple Pay et IAP
La principale différence entre Apple Pay et l’achat in-app (IAP), concerne les produits qu’ils vendent. Les biens physiques sont vendus via Apple Pay ; nourriture, hébergement et divertissement physique (tels que les billets de cinéma) sont tous des exemples de ceci. En revanche, IAP vend des biens virtuels , tels que du contenu premium ou supplémentaire, et des abonnements – pensez à des mois supplémentaires d’un service de diffusion en continu ou à des vies supplémentaires dans un jeu.
Les frameworks utilisés sont également une différence clé ; PassKit est utilisé pour Apple Pay, tandis que StoreKit fournit l’API d’infrastructure pour IAP.
Avec Apple Pay, Apple indique qu’il « [ne charge pas les utilisateurs, les marchands ou les développeurs d’utiliser Apple Pay pour Paiements ». En comparaison, les IAP ont un coût de 30 % pour chaque transaction. De plus, avec Apple Pay, la transaction ne passe pas par Apple du tout, au lieu de cela, elle passe par une plateforme de paiement.
Utilisation d’une plateforme de processeur de paiement
L’une des parties fondamentales d’Apple Pay est le traitement des paiements. Bien qu’il soit possible de le faire vous-même, il nécessite une connaissance significative du chiffrement, comme indiqué dans le guide de traitement des paiements d’Apple. Les plateformes de traitement des paiements, d’autre part, gèrent ces opérations pour vous, ce qui vous permet de vous concentrer sur la création de votre application.
Deux options sont les suivantes :
Stripe : inscrivez-vous à Stripe.com pour accéder à leurs API.
JudoPay - case activée leur exemple de code Xamarin sur github et s’inscrire à JudoPay.com.
Approvisionnement pour Apple Pay
La configuration d’une application pour utiliser Apple Pay nécessite une configuration sur le portail des développeurs Apple et dans votre application. Il existe plusieurs étapes à suivre pour provisionner correctement votre application pour Apple Pay :
- Créez un ID de marchand :
- Créez un ID d’application avec la fonctionnalité Appliquer le paiement et ajoutez-y le commerçant :
- Générez un certificat pour l’ID marchand :
- Générez un profil d’approvisionnement avec l’ID d’application nouvellement créé :
- Ajouter des droits Apple Pay :
Utilisation d’Apple Pay
Apple a apporté plusieurs améliorations à Apple Pay dans iOS 10 qui permettent à l’utilisateur d’effectuer des paiements sécurisés à partir de sites web et grâce à l’interaction avec Siri et Cartes.
Avec iOS 10, plusieurs nouvelles API ont été ajoutées qui fonctionnent avec iOS et watchOS pour prendre en charge les réseaux de paiement dynamiques et un nouvel environnement de test de bac à sable.
Intégration du site web Apple Pay
Nouveautés d’iOS 10, le développeur peut incorporer Apple Pay directement dans leurs sites web à l’aide d’ApplePay JS. Les utilisateurs parcourant le site web avec Safari dans iOS ou macOS peuvent effectuer des paiements avec Apple Pay en validant la transaction sur leur i Téléphone ou Apple Watch. Pour plus d’informations, consultez la référence applePay JP Framework d’ApplePay.
Améliorations apportées à PassKit Framework
Dans iOS 10, l’infrastructure PassKit a été développée pour prendre en charge Apple Pay en dehors et UIKit
pour permettre aux émetteurs carte de présenter leurs propres carte à partir de leurs applications.
Prise en charge d’Apple Pay en dehors de UIKit
En utilisant PKPaymentAuthorizationController et PKPaymentAuthorixationControllerDelegate, une application peut prendre en charge les mêmes fonctionnalités fournies par PKPaymentAuthorizationViewController sans utiliser UIKit. Bien que cette nouvelle API soit requise pour prendre en charge Apple Pay sur l’Apple Watch (et dans des intentions spécifiques également), elle est facultative dans d’autres situations (telles que les applications existantes). Toutefois, Apple suggère de passer à la nouvelle API dès que possible pour fournir une prise en charge étendue d’Apple Pay dans toutes les applications du développeur avec une base de code unique. Pour plus d’informations sur l’intégration des intentions et de Siri, consultez notre documentation Introduction à SiriKit .
Présentation des cartes d’émetteur à partir d’applications
Avec iOS 10, de nouvelles fonctionnalités ont été ajoutées à l’infrastructure PassKit qui permettent aux émetteurs carte de présenter leurs carte à partir de leurs propres applications. Le développeur peut ajouter un PKPaymentButtonTypeInStore
UIButton à l’interface utilisateur de l’application qui affiche un bouton Apple Pay pour un carte.
La PresentPaymentPass
méthode de la classe PKPassLibrary peut également être utilisée pour afficher par programmation le carte.
Prise en charge du nouveau réseau de paiement
Nouveautés d’iOS 10, une application peut prendre automatiquement en charge un nouveau réseau de paiement lorsqu’elle devient disponible sans que le développeur ait à modifier, recompiler l’application et la soumettre à nouveau dans l’App Store.
La nouvelle méthode AvailableNetworks de la PKPaymentNetwork
classe permet à une application de découvrir les réseaux disponibles sur l’appareil de l’utilisateur lors de l’exécution. En outre, la propriété SupportedNetworks a été développée pour prendre le nom du fournisseur de paiement comme argument. À l’aide de ces méthodes, une application peut prendre automatiquement en charge n’importe quel réseau pris en charge par le fournisseur de paiement.
Pour plus d’informations, consultez notre Apple Pay Configuration et le Guide Apple Pay d’Apple.
Nouvel environnement de test
Avec iOS 10, Apple a introduit un nouvel environnement de test qui permet au développeur de provisionner des carte de test de paiement directement sur un appareil iOS. Ce nouvel environnement de test retourne ensuite des données de paiement de test chiffrées à l’application.
Pour activer le nouvel environnement de test, procédez comme suit :
- Créez un compte iCloud de test dans iTunes Connecter.
- Connectez-vous à l’appareil iOS avec le nouveau compte de test.
- Définissez la région souhaitée pour tester l’application.
- Utilisez l’un des carte de paiement de test du Guide Apple Pay pour effectuer des paiements.
Important
En basculant des comptes iCloud, l’appareil bascule automatiquement vers le nouvel environnement de test. Toutefois, Apple exige toujours que l’application soit testée avec des carte réelles dans un environnement de production avant la soumission à l’App Store iTunes.
Résumé
Dans cet article, nous avons exploré les différents éléments requis pour utiliser Apple Pay dans votre application. Nous avons examiné comment créer un ID marchand et comment il est utilisé dans le fichier Entitlements.plist, qui doit être modifié manuellement.