Arborescence des pages

Vous regardez une version antérieure (v. /pages/viewpage.action?pageId=753079803) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 4) afficher la version suivante »

Contenu


Les procédures de configuration Apple Pay sont données à titre indicatif, il est fortement conseillé de vérifier les procédures sur le site d'Apple Pay.


Présentation

Cet article vise à détailler la procédure de création des comptes sur Payline et Apple.

Pour fonctionner avec ApplePay nécessite :

  • Merchant Id - une clé marchand permettant de l'identifier
  • Apple Pay Payment Processing Certificate - Ce certificat permet au commerçant de payer via Apple Pay. Il permet de valider le paiement et de décrypter le Token reçu via sa clé privé
  • Apple Pay Merchant Identity Certificate - Ce certificat permet au commerçant de payer via Apple Pay sur le WEB. Il permet d'authentifier le commerçant sur le WEB. Il est necessaire uniquement dabs le cadre d'un paiement Apple Pay JS

La création de ses trois éléments se fait sur : https://developer.apple.com/account/

Certaine étape sont à réaliser par le commercant sur son compte Apple Pay, et d'autre par l'intégrateur Payline :

  • Cette étiquette indique que l'intégrateur Payline doit réaliser l'action : PAYLINE
  • Cette étiquette indique que le commerçant doit réaliser l'action : MARCHAND

Étape préliminaire - Définition du Merchant ID - PAYLINE

Par convention, tous les Merchant ID Apple Pay utilisés dans payline doivent avoir la forme suivante :


Dans le suite de cet article, le Merchant ID sera utilisé dans les nommages des fichiers.  Il sera représenté par : [ApplePay Merchant ID]

Le même Merchant ID Apple Pay sera utilisé en homo et en production.

Si le commercant souhaite utiliser plusieurs Merchant ID pour ses differents points de vente, alors il faut ajouter le libellé du PDV apres ID Marchant Payline :



Etape 1 - Création des CSR - PAYLINE

Les CSR destinées a générer les certificats doivent être faites par l'intégrateur Payline avant que le commerçant commence a créer son compte marchand. En effet il aura besoin de ces information pour créer son compte.

Outillage necessaire : opensll, keytool

Création de la CSR Merchant Identity Certificate - PAYLINE

Exécuter la ligne de commande suivante et respectant les paramètres et les réponses aux questions.


MacBook-Pro-de-Developpeur:certs testapplepay$ openssl req -sha256 -nodes -newkey rsa:2048 -keyout "[ApplePay Merchant ID].merchantIdentityCertificate.key" -out "[ApplePay Merchant ID].merchantIdentityCertificate.csr"
Generating a 2048 bit RSA private key
......................+++
.................................+++
writing new private key to '[ApplePay Merchant ID].merchantIdentityCertificate.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:.
Locality Name (eg, city) []:    
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Payline
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:merchant.com.payline.[ID Marchand Payline]
Email Address []:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
MacBook-Pro-de-Developpeur:certs testapplepay$
MacBook-Pro-de-Developpeur:certs testapplepay$ ls
[ApplePay Merchant ID].merchantIdentityCertificate.csr    [ApplePay Merchant ID].merchantIdentityCertificate.key


Création de la CSR Merchant Processing Certificate - PAYLINE

Exécuter la ligne de commande suivante et respectant les paramètres et les réponses aux questions.


MacBook-Pro-de-Developpeur:certs testapplepay$ openssl ecparam -out "[ApplePay Merchant ID].paymentProcessingCertificate.key" -name prime256v1 -genkey
MacBook-Pro-de-Developpeur:certs testapplepay$ openssl req -new -key "[ApplePay Merchant ID].paymentProcessingCertificate.key" -out "[ApplePay Merchant ID].paymentProcessingCertificate.csr" -sha256
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:.
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:.
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:merchant.com.payline.[ID Marchand Payline]
Email Address []:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
MacBook-Pro-de-Developpeur:certs testapplepay$ ls
[ApplePay Merchant ID].merchantIdentityCertificate.csr    [ApplePay Merchant ID].paymentProcessingCertificate.csr
[ApplePay Merchant ID].merchantIdentityCertificate.key    [ApplePay Merchant ID].paymentProcessingCertificate.key
MacBook-Pro-de-Developpeur:certs testapplepay$ 



Envoi des informations au commerçant - PAYLINE

Les 3 informations précédentes doivent être communiquées au commerçant par email :

  • Apple Pay Merchant ID : [ApplePay Merchant ID]
  • Merchant Identity Certificate : [ApplePay Merchant ID].merchantIdentityCertificate.csr
  • Payment Processing Certificate : [ApplePay Merchant ID].paymentProcessingCertificate.csr

Etape 2 - Création du Merchant ID - MARCHAND

  • Se connecter au compte Apple Pay
  • Aller sur : Certificates, Identifiers & Profiles

  • Merchant IDs, puis +

  • Remplir les champs Description et ID
    • Le commerçant peut utiliser la description qu'il souhaite
    • le champ ID doit être valorisé avec le [ApplePay Merchant ID]

Etape 3 - Création des Certificats - MARCHAND

Pour créer les 2 certificats marchand, il faut cliquer dans le menu sur Merchant IDs, puis Merchant ID correspondant dans le tableau, puis Edit




Génération du Apple Pay Merchant Identity CertificateMARCHAND

  • Cliquer sur "Create Certificate" puis dans l'écran suivant sur "Continue"


  • Télécharger le fichier [ApplePay Merchant ID].merchantIdentityCertificate.csr sur le site d'Apple pour obtenir le .cer
  • Cliquer "generate" , télécharger le ".cer" précédemment généré pour créer le certificat


  • Télécharger le certificat sur votre poste de travail et le stocker puis le renommer en  [ApplePay Merchant ID].merchantIdentityCertificate.cer (il faudra l'envoyer a Payline).

Génération du Apple Pay Payment Processing CertificateMARCHAND

  • Dans l'encart "Apple Pay Payment Processing Certificate", cliquer sur "Create Certificate"

  • Cliquer sur "Continue" et à l'étape generate, charger le csr "[ApplePay Merchant ID].paymentProcessingCertificate.csr".

  • Télécharger le certificat sur votre poste de travail et le stocker puis le renommer en  [ApplePay Merchant ID].paymentProcessingCertificate.cer (il faudra l'envoyer a Payline).

Validation des domaines- MARCHAND

Il est également nécessaire de valider les domaines que le marchand va utiliser. Dans le cadre des pages web de paiement il doit créer deux domaines :

Cela s'effectue dans le pavé "Merchant Domains"

Etape 4 - Integration des certificats dans Payline - PAYLINE

Les certificats créés sont ajoutés dans un keystore puis mis en base de donnée

Récupération des CER- PAYLINE

Les 2 fichiers *.cer envoyés par le commercants sont à deposer dans le même répertoire que les fichiers *.key et *.csr.

transfomer cer en pem
MacBook-Pro-de-Developpeur:certs testapplepay$ ls
[ApplePay Merchant ID].merchantIdentityCertificate.cer        [ApplePay Merchant ID].paymentProcessingCertificate.csr
[ApplePay Merchant ID].merchantIdentityCertificate.csr        [ApplePay Merchant ID].paymentProcessingCertificate.csr.cer
[ApplePay Merchant ID].merchantIdentityCertificate.key        [ApplePay Merchant ID].paymentProcessingCertificate.key



Creation du keystore Marchand - PAYLINE

Apple Pay fonctionne avec une configuration par marchand. Il y a donc 1MerchandID, 1 payment processing certificate, 1 merchant identity certificate par contrat Apple Pay Payline

Les deux certificats (clés) seront stockés dans 1 KeyStore qui sera insérer en base de données. Il y aura 1 keystore par marchand. Si un commercant a plusieurs configuration ApplePay il faudra toujours reparrtir du keystore de production et mle me

Si un marchand possède 2 contrats Apple Pay, il aura 1 keystore contenant les 2 clés du contrat #1 et les 2 clés du contrat #2. Pour les différencier, on nomme l'alias de chaque clé d'une manière unique avec l'id technique du contrat :

  • idTechniqueContract.apple-pay
  • idTechniqueContract.apple-pay-js

Exemple :

Il est donc nécessaire à cette étape que le contrat commerçant Apple Pay sur Payline soit créé. Dans la suite, l'ID technique de contrat sera symbolisé par 1234567.

Les lignes de commande suivantes sont a respecter scrupuleusement (Apple Merchant ID et Technical contract ID a remplacer):

Complément d'informations ici : Configuration d'ApplePay JS (sur le web)

transfomer cer en pem
MacBook-Pro-de-Developpeur:certs testapplepay$ openssl x509 -inform der -in "[ApplePay Merchant ID].merchantIdentityCertificate.cer" -out "[ApplePay Merchant ID].merchantIdentityCertificate.pem"
MacBook-Pro-de-Developpeur:certs testapplepay$ openssl x509 -inform der -in "[ApplePay Merchant ID].paymentProcessingCertificate.cer" -out "[ApplePay Merchant ID].paymentProcessingCertificate.pem"
MacBook-Pro-de-Developpeur:certs testapplepay$ ls
[ApplePay Merchant ID].merchantIdentityCertificate.cer [ApplePay Merchant ID].merchantIdentityCertificate.pem [ApplePay Merchant ID].paymentProcessingCertificate.key
[ApplePay Merchant ID].merchantIdentityCertificate.csr [ApplePay Merchant ID].paymentProcessingCertificate.cer [ApplePay Merchant ID].paymentProcessingCertificate.pem
[ApplePay Merchant ID].merchantIdentityCertificate.key [ApplePay Merchant ID].paymentProcessingCertificate.csr
MacBook-Pro-de-Developpeur:certs testapplepay$ openssl pkcs12 -export -in "[ApplePay Merchant ID].merchantIdentityCertificate.pem" -inkey "[ApplePay Merchant ID].merchantIdentityCertificate.key" -out "[ApplePay Merchant ID].merchantIdentityCertificate.p12" -name 1234567.apple-pay-js
Enter Export Password:
Verifying - Enter Export Password:
MacBook-Pro-de-Developpeur:certs testapplepay$ openssl pkcs12 -export -in "[ApplePay Merchant ID].paymentProcessingCertificate.pem" -inkey "[ApplePay Merchant ID].paymentProcessingCertificate.key" -out "[ApplePay Merchant ID].paymentProcessingCertificate.p12" -name 1234567.apple-pay
Enter Export Password:
Verifying - Enter Export Password:
MacBook-Pro-de-Developpeur:certs testapplepay$ keytool -importkeystore -srckeystore "[ApplePay Merchant ID].merchantIdentityCertificate.p12" -destkeystore PaylineKeystore.jks -alias 1234567.apple-pay-js -srcstoretype PKCS12 -deststoretype PKCS12 -deststorepass experian -srcstorepass experian
Import du fichier de clés [ApplePay Merchant ID].merchantIdentityCertificate.p12 vers PaylineKeystore.jks...
MacBook-Pro-de-Developpeur:certs testapplepay$ keytool -importkeystore -srckeystore "[ApplePay Merchant ID].paymentProcessingCertificate.p12" -destkeystore PaylineKeystore.jks -alias 1234567.apple-pay -srcstoretype PKCS12 -deststoretype PKCS12 -deststorepass experian -srcstorepass experian
Import du fichier de clés [ApplePay Merchant ID].paymentProcessingCertificate.p12 vers PaylineKeystore.jks...
MacBook-Pro-de-Developpeur:certs testapplepay$ 
MacBook-Pro-de-Developpeur:certs testapplepay$ 
MacBook-Pro-de-Developpeur:certs testapplepay$ keytool -list -keystore PaylineKeystore.jks
Entrez le mot de passe du fichier de clés :  
Type de fichier de clés : PKCS12
Fournisseur de fichier de clés : SUN

Votre fichier de clés d'accès contient 2 entrées

1234567.apple-pay-js, 9 août 2018, PrivateKeyEntry, 
Empreinte du certificat (SHA-256) : 48:BE:32:D7:57:13:69:C2:29:72:F0:76:68:47:F0:DA:37:17:76:9B:75:DC:B2:8E:31:BF:B6:1C:18:FC:68:B4
1234567.apple-pay, 9 août 2018, PrivateKeyEntry, 
Empreinte du certificat (SHA-256) : 40:83:D9:50:4C:ED:6D:97:CE:39:0D:11:53:73:5E:4A:1F:AB:9A:53:1F:6C:9E:16:83:A1:56:D5:F3:06:C4:70
MacBook-Pro-de-Developpeur:certs testapplepay$



Etape 5 : Inserer le Keystore en base de données - PAYLINE

La dernière étape consiste a réaliser un paysup pour demander a ce que le Keystore soit uploader sur le compte du marchand.

TODO : mettre un exemple de paysup type

  • Aucune étiquette