При интеграции Apple Pay по API отдельной кнопкой необходимо провести генерацию сертификатов Apple Pay.
Создайте папку на вашем устройстве в которую будут сохранены сертификаты.
2. Откройте Terminal в данной папке.
2.1. Проведите команду openssl ecparam -genkey -name prime256v1 -out ecckey.key
2.2. Проведите команду openssl req -new -sha256 -key ecckey.key -out ecccertreq.csr -subj /CN=www.mydomain.com
, где www.mydomain.com - ваш домен.
3. Войдите в ваш Apple Developer аккаунт https://developer.apple.com/
4. Создайте новый Identifier по ссылке https://developer.apple.com/account/resources/identifiers/merchant/add/
В поле Identifier нужно вводить домен сайта задом наперед. Для примера, при домене google.com.ua нужно вводить ua.com.google
В поле Description запрещено вводить спец символы, например, @, &, *, ', ", -, .
5. Вернитесь в общий список ваших Identifiers по ссылке https://developer.apple.com/account/resources/identifiers/list/merchant
Найдите необходимый Identifier созданный вами и нажмите на него для перехода к его настройкам.
6. В разделе Apple Pay Payment Processing Certificate нажмите кнопку Create Certificate
7. Нажмите Continue.
8. Загрузите ecccertreq.csr из вашей папки с сертификатами и нажмите Continue.
9. Нажмите Download для скачивания файла apple_pay.cer и сохраните его в папку с сертификатами.
10. Вернитесь к вашему Identifier в списке https://developer.apple.com/account/resources/identifiers/list/merchant
11. В разделе Merchant Domains нажмите кнопку Add Domain.
12. Введите ваш домен и нажмите кнопку Save.
13. Нажмите Download для скачивания файла apple-developer-merchantid-domain-association.txt
Данный файл нужно разместить на вашем сервере в папке .well-known согласно пути https://ВАШ_ДОМЕН/.well-known/apple-developer-merchantid-domain-association.txt
После размещения файла нажмите кнопку Verify.
Status: Verified - успешная верификация.
Status: Pending - верификация не завершена, просрочена или требует повторения.
14. В разделе Apple Pay Merchant Identity Certificate нажмите кнопку Create Certificate.
15. Откройте новый Terminal в папке с сертификатами.
Проведите команду openssl req -new -newkey rsa:2048 -nodes -out rsacertreq.csr -keyout rsakey.key -subj /CN=www.mydomain.com
, где http://www.mydomain.com - ваш домен.
16. Загрузите rsacertreq.csr из вашей папки с сертификатами и нажмите Continue.
17. Нажмите Download для скачивания файла merchant_id.cer и сохраните его в папку с сертификатами.
18. Откройте новый Terminal в папке с сертификатами.
18.1. Проведите команду openssl x509 -inform DER -in merchant_id.cer -out merchant_id.pem
18.2. Проведите команду openssl pkcs12 -export -out Certificates.p12 -inkey rsakey.key -in merchant_id.pem
18.3. Придумайте и введите пароль используя только цифры (от 5 до 10 символов). Для подтверждения попросит ввести пароль еще раз. Пароль сохранить в файл password.txt в папке с сертификатами.
18.4. Проведите команду openssl pkcs12 -in Certificates.p12 -out ApplePay.crt.pem -clcerts -nokeys
18.5. Введите ранее придуманый пароль.
19. Откройте файл rsakey.key редактором кода и замените теги:
-----BEGIN PRIVATE KEY-----
на -----BEGIN RSA PRIVATE KEY-----
-----END PRIVATE KEY-----
на -----END RSA PRIVATE KEY-----
Файл rsakey.key переименовать в ApplePay.key.pem
20. Откройте файл ecckey.key редактором кода.
Удалите все кроме содержимого между тегами -----BEGIN EC PRIVATE KEY-----
та -----END EC PRIVATE KEY-----
. Теги также удалить. Получившиеся данные выровнять в одну строку.
В результате вы получите для примера:MHcCAQEEIGOcj9yGqWYQsFb69go2TXk3nZ2+1bWCnxWK677sZAVFoAoGCCqGSM49AwEHoUQDQgAEhnrbXXeXyKQhYIeznMgw1fqJVNkkMdN00hDpK8u0SXclbUFiNdeIQo07Bb/xU+sUrnL3RBJ0SoP9YVmRDfrzEg==
Все полученные файлы просьба заархивировать и отправить в чат для тех поддержки.
Список файлов в архиве:
apple_pay.cer
ApplePay.crt.pem
ApplePay.key.pem
Certificates.p12
ecccertreq.csr
ecckey.key
merchant_id.cer
merchant_id.pem
password.txt
rsacertreq.csr