Настройка приема оплаты через Apple Pay

Внимание!

Для настройки данного способа оплаты необходимо следующее:
  • Ваш сайт должен поддерживать HTTPS;
  • Должна быть подключена Яндекс.Касса со способом подключения по API и настроен способ оплаты "Яндекс Касса (API)" в Moguta.CMS
  • Для настройки и функционирования Apple Pay нужно будет купить подписку на аккаунт разработчика за 99$ в год (прим.: цена указана на момент написания данной инструкции)
  • Для подготовки электронных сертификатов понадобится устройство на операционной системе MacOS (iMac, iMac Pro, MacBook, и т.д.)
 
 Инструкция по подключению

Подключение Яндекс.Кассы

Как настроить и подключить Яндекс.Кассу по методу API вы можете узнать из нашей инструкции http://wiki.moguta.ru/nastroyki-oplaty/integratsiya-s-yandeks-kassa-api


Создание аккаунта разработчика Apple

Как завести аккаунт разработчика Apple можно узнать из инструкции Яндекс (см. раздел 1 "Регистрация в Apple Developer Program") https://kassa.yandex.ru/files/manual_connection_Apple_Pay(website).pdf


Обмен сертификатами с Apple

1. Авторизуйтесь в личном кабинете developer.apple.com;
2. Перейдите в раздел "Certificates, IDs & Profiles";
Скриншот

3. Начните создание сертификата кнопкой "Create a Certificate";
Скриншот

4. Прокрутите список вниз и выберите "Apple Pay Payment Processing Certificate";
Скриншот

5. Придумайте имя и название идентификатора. Имя произвольное, оно нигде использоваться при настройке не будет. Идентификатор желательно задавать по советам Apple: merchant.<домен верхнего уровня>.<домен второго уровня>. Например для сайта moguta.ru будет выглядеть так: merchant.ru.moguta;
6. В разделе "Apple Pay Payment Processing Certificate" нажмите "Create Certificate";
Скриншот

7. Выберите вариант "No", чтобы обозначить, что оплаты будут не в Китае;
Скриншот

8. Прикрепите файл .csr, полученный от Яндекс, и нажмите Download, чтобы скачать сертификат от Apple в формате .cer;
Скриншот

Скриншот

9. Отправьте .cer файл в Яндекс и дождитесь ответа о том, что они со своей стороны всё настроили.

Верификация домена в Apple

1. В разделе "Apple Pay Payment Processing on the Web" нажимаем "Add Domain в Merchant Domains";
Скриншот

2. Укажите домен вашего сайта;
Скриншот

3. Нажмите 'Download', чтобы получить текстовый файл. Сохраните его на сервере так, чтобы он был доступен по ссылке https://<домен>/.well-known/apple-developer-merchantid-domain-association.txt
Скриншот

4. Нажмите "Verify", и Apple проверит доступность этого файла. Если всё верно, то домен будет одобрен;

Генерация сертификата для интернет-магазина

1. Нажимаем "Create Certificate" в разделе "Apple Pay Merchant Identity Certificate";
Скриншот

2. Откройте на устройстве с MacOS приложение "Связка ключей" (Keychain Access);
3. Выберите "Связка ключей" -> "Ассистент сертификации"->"Запросить сертификат у бюро сертификации...";
Скриншот

4. Заполните поля "E-mail" и "Общее имя" (произвольное), e-mail БС не нужен. Выберите "Запрос: Сохранен на диске";
Скриншот

5. Сохраните файл;
Скриншот

6. Загрузите сохраненный файл в Apple;
Скриншот

7. Скачайте получившийся сертификат merchant_id.cer по кнопке "Download";
8. Откройте в "Связка ключей", загрузите туда полученный сертификат, найдите его через поиск по общему имени и экспортируйте закрытый ключ в формате "Обмен персональной информацией (.p12)";
Скриншот

Скриншот

Скриншот

9. Задайте пароль;
Скриншот

10. Откройте приложение "Терминал" (Terminal.app);
11. Для получения файла приватного ключа введите следующую команду:

openssl pkcs12 -in <путь до файла>.p12 -out ApplePay.key.pem -nocerts -nodes

12. Терминал запросит пароль, введите тот который вы задавали при экспорте сертификата;
13. Для получения файла сертификата введите следующую команду:

openssl x509 -inform der -in merchant_id.cer -out merchant_id.pem

14. На сервере сайта в каталоге с Moguta.CMS создайте папку certs и загрузите в неё полученные файлы merchant_id.pem и ApplePay.key.pem.


Настройка оплаты в Moguta.CMS

1. В MerchantIdentifier введите идентификатор, который был задан в пункте инструкции 3.5;
2. В MerchantName введите название магазина, которое будет выводится у клиента при оплате;
3. В Password введите пароль, который был задан в пункте инструкции 5.9;
4. В CertPath введите путь до merchant_id.pem из корня сайта;
5. В KeyPath введите путь до ApplePay.key.pem из корня сайта;
Скриншот