Apple Pay

Introduction
Apple Pay est le moyen de paiement mobile d'Apple, qui permet aux consommateurs de payer facilement et en toute sécurité des biens et services physiques tels que de l'alimentaire, des vêtements, des billets et des réservations dans vos applications iOS. En utilisant Touch ID, les utilisateurs peuvent rapidement et en toute sécurité effectuer leur paiement.
Les clients ajoutent leurs cartes de crédit ou de débit à son portefeuille sur son iPhone et ajoute les informations de paiement et d'expédition au portefeuille Apple Pay. Les détails de paiement que le consommateur entre dans le portefeuille Apple Pay sont tokenisés puis stockés en toute sécurité. Si le consommateur clique sur le bouton « Acheter avec Apple Pay » dans l'application, le paiement peut commencer immédiatement, car la carte avec laquelle le consommateur souhaite payer sera chargée depuis le portefeuille Apple Pay.
Notre SDK iOS vous permet d'ajouter facilement Apple Pay à votre application mobile. Nous gérerons le décryptage des données de paiement pour vous. Si vous le souhaitez, vous pouvez également choisir de décrypter vous-même les données et nous les envoyer pour traiter le paiement.
Vos clients peuvent utiliser des cartes des marques suivantes :
Apple Pay - Visa
Apple Pay - MasterCard
Apple Pay - American Express
Apple Pay - Cartes Bancaires
Avantages clés
- Une expérience utilisateur fluide grâce au Touch ID natif d'Apple
- Intégration facile pour les développeurs utilisant notre SDK iOS
- Un moyen de paiement sécurisé car les données de la carte du consommateur sont tokenisées et le Device PAN (DPAN) est utilisé pour traiter le paiement.
- Augmentez votre conversion pour les paiements in-app
- Un potentiel énorme en termes d'utilisation, grâce aux millions d'utilisateurs sur les appareils iOS.
Expérience de paiement

- Dans les pays où Apple Pay est pris en charge, l'option d'ajouter une carte au portefeuille sur l'appareil du consommateur sera activée. Le consommateur peut ajouter ses détails de paiement ainsi que l'adresse de livraison et de facturation dans l'application.
-
Dans une application qui prend en charge Apple Pay, le bouton "Acheter avec Apple Pay" apparaîtra lorsque le consommateur sera prêt à passer à la caisse.
-
Les détails de la carte du consommateur sont visibles et peuvent être modifiés à la demande du consommateur. En outre, le montant total est également affiché. Le consommateur devra utiliser Touch ID pour valider le paiement.
-
Une fois le paiement validé, il sera envoyé via le flux d'achat habituel, afin que nous puissions traiter ce paiement.
Activation
Pour accepter les paiements pour cette méthode de paiement quel que soit le mode d'intégration, assurez-vous d'avoir un contrat d'acquisition avec l'un des acquéreurs pris en charge. Nous clarifierons cela avec vous pendant le processus de configuration.
Selon le mode d'intégration, des exigences supplémentaires sont applicables :
- Hosted Checkout Page : Acceptez les termes et conditions d'Apple comme décrit dans le chapitre dédié. Cela vous permettra d'enregistrer votre identifiant marchand Apple et d'offrir Apple Pay sur notre page de paiement sécurisée.
- Intégration mobile/client: Obtenez un compte développeur Apple actif et un abonnement au programme développeur iOS. Cela vous permettra de créer vos certificats Apple Pay comme décrit dans le chapitre dédié.
Pays & devises
Pays pris en charge
-
Australie
-
Belgique
-
Brésil
-
Bulgarie
-
Canada
-
Chine
-
Croatie
-
Chypre
-
République tchèque
-
Danemark
-
Estonie
-
Finlande
Devises prises en charge
- Albanian lek (ALL)
- Algerian dinar (DZD)
- Angolan kwanza (AOA)
- Argentine peso (ARS)
- Armenian dram (AMD)
- Aruban florin (AWG)
- Australian dollar (AUD)
- Azerbaijani manat (AZN)
- Bahamian dollar (BSD)
- Bahraini dinar (BHD)
- Bangladeshi taka (BDT)
- Barbados dollar (BBD)
Intégration
Pour que cette méthode de paiement apparaisse sur notre Hosted Checkout Page comme méthode de paiement sélectionnable, vos clients doivent :
- Être situés dans l'un des pays pris en charge.
- Posséder au moins l'une des cartes prises en charge dans leur portefeuille Apple Pay :
Apple Pay - Visa
Apple Pay - MasterCard
Apple Pay - American Express
Apple Pay - Cartes Bancaires
. - Utiliser le navigateur Safari.
- Utiliser l'un des appareils suivants :
iPhones avec Face ID et/ou Touch ID (sauf iPhone 5S).
Modèles d'iPad Pro, iPad Air, iPad et iPad mini avec Touch ID ou Face ID.
Apple Watch Séries 1, 2 et plus récentes, Apple Watch (1ère génération).
Modèles de Mac avec Touch ID, ou modèles de Mac introduits en 2012 ou plus récents avec un iPhone ou une Apple Watch compatible avec Apple Pay.
Assurez-vous également d'enregistrer votre identifiant de marchand comme décrit dans le chapitre dédié.
Nous proposons ces méthodes de paiement pour les modes d'intégration suivants. Apprenez dans nos guides dédiés les différences individuelles.
Trouvez un aperçu général dans le chapitre "Cinématique".
En fonction du mode d'intégration, des différences s'appliquent :
Hosted Checkout Page
Ajoutez les propriétés suivantes à une requête standard CreateHostedCheckout :
{
"order":{
"amountOfMoney":{
"currencyCode":"EUR",
"amount":1000
}
},
"hostedCheckoutSpecificInput":{
"locale":"en_GB",
"returnUrl":"https://yourReturnUrl.com"
},
"mobilePaymentMethodSpecificInput":{
"authorizationMode":"FINAL_AUTHORIZATION",
"paymentProductId":302
}
}
Propriétés | Remarques |
---|---|
order.amountOfMoney |
amount : Le montant brut que vous souhaitez facturer pour cette commande. |
hostedCheckoutSpecificInput |
locale : La langue de notre Hosted Checkout Page et de la feuille de paiement Apple Pay. returnUrl : L'URL vers laquelle nous redirigeons vos clients une fois le paiement finalisé. |
mobilePaymentMethodSpecificInput |
authorizationMode : Défini par "FINAL_AUTHORIZATION"/"SALE" en fonction de si vous souhaitez traiter les paiements en mode autorisation/Direct Sale. paymentProductId : L'identifiant numérique de la méthode de paiement sur notre plateforme. Trouvez cet identifiant dans le chapitre "Aperçu". Il instruit notre plateforme d'envoyer vos clients directement à la feuille de paiement Apple Pay. En cas d'omission, notre plateforme redirige vos clients vers la Hosted Checkout Page, leur permettant de choisir ce mode de paiement ou tout autre actif dans votre compte. |
Retrouvez des informations détaillées sur cet objet et ses propriétés dans notre documentation CreateHostedCheckoutAPI.
Intégration mobile/client
En fonction du mode de décryptage, des différences s'appliquent :
Nous gérons le décryptage
Ce mode externalise la complexité du décryptage des données de paiement vers notre plateforme. Assurez-vous de créer des certificats et de les télécharger comme décrit dans le chapitre dédié.
Ajoutez les propriétés suivantes à une requête standard CreatePayment lors de l'envoi des données décryptées à notre plateforme :
{
"mobilePaymentMethodSpecificInput": {
"encryptedPaymentData": "xxx",
"paymentProductId": 302,
"authorizationMode": "FINAL_AUTHORIZATION",
"ephemeralKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYcF+GXB1DjbKLn5PgxVky2QTk53HjfoIXOvE7kH6+lixJKSTv1AuPlAUsBD2Nu2qHFwP50Abeh1onwvmvMYY/g==",
"publicKeyHash": "uUhU0fJoEJNk11gR8Ptd5Uw+jAnudz24rC2EuVcrZhM="
},
"order": {
"amountOfMoney": {
"amount": 3000,
"currencyCode": "EUR"
}
}
}
Propriétés | Remarques |
---|---|
order.amountOfMoney |
amount : Le montant brut que vous souhaitez facturer pour cette commande. |
mobilePaymentMethodSpecificInput |
authorizationMode : Défini par "FINAL_AUTHORIZATION"/"SALE" en fonction de si vous souhaitez traiter les paiements en mode autorisation/Direct Sale. paymentProductId : L'identifiant numérique de la méthode de paiement sur notre plateforme. Trouvez cet identifiant dans le chapitre "Aperçu". encryptedPaymentData : Les données de paiement cryptées que notre plateforme décrypte pour la transaction réelle. ephemeralKey : Une clé unique utilisée par Apple pour crypter les données. publicKeyHash : Un identifiant unique pour obtenir la clé utilisée par Apple pour crypter les données. |
Trouvez des informations détaillées sur cet objet et ses propriétés dans notre CreatePaymentAPI.
Vous gérez le décryptage
Ce mode vous oblige à décrypter vous-même les données de paiement et à les envoyer à notre plateforme. Cela pourrait avoir un impact sur votre type de conformité PCI. Contactez votre acquéreur pour plus d'informations.
Vous devez également coder cette solution par vous-même. Cependant, vous pouvez utiliser nos SDK dans deux cas :
- SDK iOS : Ajouter le bouton Apple Pay à votre application qui ouvre la feuille de paiement Apple Pay. Lisez le tutoriel Apple pour plus d'informations.
- SDK Serveur : Envoyer les données de paiement décryptées à notre plateforme.
Assurez-vous de créer les certificats et de les télécharger sur votre serveur comme décrit dans le chapitre dédié.
Ajoutez les propriétés suivantes à une requête standard CreatePayment lors de l'envoi des données décryptées à notre plateforme :
{
"mobilePaymentMethodSpecificInput": {
"decryptedPaymentData": {
"dpan": "4761120010000492",
"cryptogram": "jiSRYgf6G2rjYwAAC0GPAHQAAAA=",
"expiryDate": "1225",
"cardholderName": "John Doe",
"eci": "7"
},
"paymentProductId": 302,
"authorizationMode": "FINAL_AUTHORIZATION"
},
"order": {
"amountOfMoney": {
"amount": 3000,
"currencyCode": "EUR"
}
}
}
Propriétés | Remarques |
---|---|
order.amountOfMoney |
amount : Le montant brut que vous souhaitez facturer pour cette commande. |
mobilePaymentMethodSpecificInput |
authorizationMode : Défini par "FINAL_AUTHORIZATION"/"SALE" en fonction de si vous souhaitez traiter les paiements en mode autorisation/Direct Sale. paymentProductId : L'identifiant numérique de la méthode de paiement sur notre plateforme. Trouvez cet identifiant dans le chapitre "Aperçu". decryptedPaymentData : Les données de paiement décryptées pour la transaction réelle. Lisez le chapitre dédié pour des informations détaillées. |
Mapper les propriétés PKPayment à mobilePaymentMethodSpecificInput
Après avoir décrypté le token de paiement sur votre serveur e-commerce, vous devez envoyer ces données via une requête CreatePayment. Comme vous ne pouvez pas utiliser notre SDK iOS pour créer une masse chiffrée, vous devez transmettre ces données via mobilePaymentMethodSpecificInput.decryptedPaymentData. Ce tableau montre comment PKPayment se mappent aux mobilePaymentMethodSpecificInput.decryptedPaymentData.
PKPayment objet | propriété decryptedPaymentData |
---|---|
token.data.applicationPrimaryAccountNumber |
dpan |
token.data.applicationExpirationDate |
expiryDate |
token.data.paymentData.onlinePaymentCryptogram |
cryptogram |
token.data.paymentData.eciIndicator |
eci |
Selon la requête individuelle, PKPayment peut contenir des informations de commande supplémentaires. Appliquez la cartographie suivante pour les inclure dans votre requête CreatePayment :
PKPayment objet | propriété order.customer |
---|---|
billingContact.emailAddress ou shippingContact.emailAddress |
contactDetails |
billingContact.name |
personalInformation.name |
billingContact.postalAddress |
billingAddress |
order.customer.shippingAddress |
shippingAddress |
Trouvez des informations détaillées sur cet objet et ses propriétés dans notre CreatePaymentAPI.
Cinématique
En fonction du mode d'intégration et du mode de décryptage, des différences s'appliquent :
- Hosted Checkout Page
- Intégration mobile/client
Hosted Checkout Page
En fonction des appareils utilisés par vos clients, des différences s'appliquent :
Avec un appareil Apple
- Vos clients finalisent une commande sur leur appareil Apple dans votre boutique et sélectionnent Apple Pay.
- Vous envoyez cette demande CreateHostedCheckout à notre plateforme.
- Vous redirigez vos clients via le redirectUrl vers notre Hosted Checkout Page.
- Vos clients cliquent sur le bouton "Apple Pay" sur le Hosted Checkout Page. Le Hosted Checkout Page ouvre la feuille de paiement.
- L'appareil Apple ouvre l'application Apple Pay. Vos clients confirment le paiement dans l'application.
- Nous recevons le résultat de la transaction.
- Nous redirigeons vos clients vers votre returnURL sur leur appareil Apple.
- Vous demandez le résultat de la transaction à notre plateforme via GetHostedCheckout ou recevez le résultat via webhooks.
- Si la transaction a été réussie, vous pouvez livrer les biens/services.
Avec un appareil de bureau et un appareil mobile
Ce flux implique l'interaction entre l'appareil mobile/tablette et l'appareil de bureau de vos clients. L'appareil mobile/tablette doit être un appareil Apple, mais l'appareil de bureau peut être de n'importe quelle marque.
- Vos clients finalisent une commande sur leur appareil de bureau dans votre boutique et sélectionnent Apple Pay.
- Vous envoyez cette demande CreateHostedCheckout à notre plateforme.
- Vous redirigez vos clients sur leur appareil de bureau via le redirectUrl vers notre Hosted Checkout Page.
- Vos clients cliquent sur le bouton "Apple Pay" sur le Hosted Checkout Page. Un code QR est affiché. Vos clients scannent le code QR affiché avec leur appareil mobile/tablette Apple.
- L'appareil mobile/tablette Apple ouvre l'application Apple Pay. Vos clients confirment le paiement dans l'application.
- Nous recevons le résultat de la transaction.
- Nous redirigeons vos clients vers votre returnURL sur leur appareil de bureau.
- Vous demandez le résultat de la transaction à notre plateforme via GetHostedCheckout ou recevez le résultat via webhooks.
- Si la transaction a été réussie, vous pouvez livrer les biens/services.
Intégration mobile/client
Selon que vous laissez la gestion du décryptage des données de paiement à notre charge ou que vous le faites vous-même, des différences s'appliquent :
Nous gérons le décryptage
Assurez-vous de créer les certificats Apple comme décrit ici.
- Vos clients finalisent une commande dans votre application et sélectionnent Apple Pay.
- Votre application envoie la demande de commande à votre serveur e-commerce et ouvre la feuille de paiement.
- Vos clients confirment le paiement dans l'application.
- Vous envoyez les données de paiement cryptées dans la propriété mobilePaymentMethodSpecificInput.encryptedPaymentdata via cette demande CreatePayment à notre plateforme.
- Notre plateforme décrypte les données de paiement et les envoie à Apple.
- Notre plateforme reçoit des données de paiement cryptées de la part d'Apple.
- Notre plateforme décrypte les données de paiement et les envoie à votre acquéreur pour traiter le paiement.
- Nous recevons le résultat de la transaction.
- Vous demandez le résultat de la transaction à notre plateforme via GetPaymentDetails ou recevez le résultat via webhooks.
- Votre application affiche le résultat de la transaction.
- Si la transaction a été réussie, vous pouvez livrer les biens/services.
Vous gérez le décryptage
Assurez-vous de créer les certificats Apple et de configurer votre compte développeur Worldline/Apple comme décrit ici.
- Vos clients finalisent une commande dans votre application et sélectionnent Apple Pay.
- Votre application envoie la demande de commande à votre serveur e-commerce et ouvre la feuille de paiement.
- Vos clients confirment le paiement dans l'application.
- Votre serveur e-commerce reçoit les données cryptées de la part d'Apple.
- Votre serveur e-commerce décrypte les données.
- Vous envoyez les données de paiement décryptées dans les propriétés
mobilePaymentMethodSpecificInput.decryptedPaymentData
mobilePaymentMethodSpecificInput.publicKeyHash
mobilePaymentMethodSpecificInput.ephemeralKey
via cette demande CreatePayment à notre plateforme. - Notre plateforme envoie les données de paiement décryptées à votre acquéreur pour traiter le paiement.
- Nous recevons le résultat de la transaction.
- Vous demandez le résultat de la transaction à notre plateforme via GetPaymentDetails ou recevez le résultat via webhooks.
- Votre application affiche le résultat de la transaction.
- Si la transaction a été réussie, vous pouvez livrer les biens/services.
Test
Consultez nos Cas de test pour des données de test et des instructions détaillées.
- Assurez-vous d'utiliser le bon endpoint et de renseigner l'URL de production dès que vous avez terminé vos tests.
- Les données dans notre Cas de test fonctionnent UNIQUEMENT pour les demandes de paiement dans notre environnement de test. Utiliser ces données dans notre environnement de production entraînera des résultats de test indésirables.
Informations supplémentaires
Proposer ce mode de paiement nécessite que vous enregistriez votre ID Marchand (pour le mode d'intégration Hosted Checkout Page) et/ou que vous créiez vos certificats Apple Pay (pour Intégration mobile/client).
Enregistrez votre ID Marchand (Hosted Checkout Page)
- Connectez-vous au Merchant Portal. Allez dans Entreprise > Moyens de paiement > Comment accepter des paiements avec Apple Pay > Hosted Checkout Page.
- Lisez les termes et conditions d'Apple Pay en cliquant sur le lien correspondant. Cochez "J'ai lu et j'accepte les termes et conditions" pour les approuver
- Cliquez sur "Activer Apple Pay". Vous êtes prêt à proposer Apple Pay à vos clients via le Hosted Checkout Page mode d'intégration
Notez les points suivants :
- Si vous refusez les termes et conditions d'Apple Pay, la méthode de paiement ne sera pas disponible sur notre Hosted Checkout Page
- Les termes et conditions d'Apple peuvent changer. Tenez-vous informé en y accédant régulièrement
Créer des certificats Apple Pay (Intégration mobile/client)
Pour les paiements via Intégration mobile/client, vous devez créer des certificats Apple. Selon que vous nous laissez gérer le déchiffrement des données de paiement ou vous le faites vous-même, des différences s’appliquent :
Nous gérons le déchiffrement
Cela nécessite de créer des certificats et de les télécharger dans le Back Office. Pour ce faire, suivez ces étapes :
- Connectez-vous au Merchant Portal. Allez à Entreprise > Moyens de paiement > Comment accepter des paiements avec Apple Pay > SDK mobiles et serveur à serveur
- Suivez les instructions sur la page pour
a) Télécharger la demande de signature de certificat (CSR) sur cette page.
b) Créer le certificat Apple Pay sur le portail développeur Apple en utilisant ce CSR.
c) Télécharger le certificat généré via le bouton "Télécharger le certificat".
Trouvez des informations détaillées sur la façon d'appliquer ce mode de déchiffrement dans les chapitres “Intégration” et “Cinématique".
Attention aux points suivants :
- Assurez-vous de créer des certificats distincts pour notre environnement de test et de production.
- Apple vous permet de créer un maximum de trois certificats par ID Marchand. Notez qu'un seul certificat par ID Marchand peut être actif. Utilisez les trois emplacements pour gérer les certificats expirants.
- En raison de cette limitation, nous recommandons d'utiliser un ID Marchand différent pour notre environnement de test et de production.
- Les certificats Apple expirent après deux ans. Assurez-vous de créer et de télécharger un nouveau certificat à temps. Nous vous informerons par e-mail dès qu'un certificat est sur le point d'expirer.
Vous gérez le déchiffrement
Cela nécessite de créer des certificats et de les télécharger sur votre serveur. Pour ce faire, suivez ces étapes :
- Contactez-nous pour configurer votre compte Worldline pour vous permettre de gérer le déchiffrement par vous-même.
- Configurez votre compte Développeur Apple pour gérer le jeton Apple Pay par vous-même.
- Créez les certificats Apple Pay sur le portail développeur Apple
a) Créer une demande de signature de certificat
b) Créer un certificat d'identité marchand
c) Créer un certificat de traitement des paiements - Ecrivez le code pour votre application pour le déchiffrement des données.
Trouvez des informations détaillées sur la façon d'appliquer ce mode de déchiffrement dans les chapitres “Intégration” et “Cinématique".
Ce mode de déchiffrement nécessite plus d'efforts de votre part, notamment :
- Déchiffrer le jeton de paiement Apple Pay.
- Génération de clés publiques.
- Création de demandes de signature de certificat (CSR).
Nous recommandons de l’implémenter uniquement si vous :
- Préférez gérer vous-même le chiffrement des données.
- Souhaitez accéder au jeton de paiement avant de traiter le paiement réel.
Si vous choisissez ce mode de décryptage, assurez-vous de respecter le type de conformité PCI nécessaire. Apple Pay suit la spécification de tokenisation de paiement EMV® – Cadre technique v1.0. Comme les tokens ne sont pas des données pertinentes pour PCI, vous devez vous conformer à SAQ-A. Cependant, si vous utilisez notre SDK JavaScript, un niveau différent peut s'appliquer. Contactez votre acquéreur pour plus d'informations