Revolut
Настройка Revolut
Необходимо создать приватный и публичный ключи:
openssl genrsa -out revolut_privat.pem 2048 openssl req -new -x509 -key revolut_privat.pem -out revolut_public.cer -days 1825
При создании публичного ключа Вас попросят заполнить некоторую информацию:
Country Name (2 letter code) []: State or Province Name (full name) []: Locality Name (eg, city) []: Organization Name (eg, company) []: Organizational Unit Name (eg, section) []: Common Name (eg, fully qualified host name) []: Email Address []:
Можете заполнить или оставить эти поля пустыми
Войдите в Revolut Business portal, перейдите в раздел Settings > Business API.
Нажмите Add certificate.
Вставьте содержимое revolut_public.cer в поле X509 public key.
Укажите OAuth redirect URI как https://admin.mikbill.pro/json/index/revolutoauth
Нажмите Continue.
Вас перебросит на страницу API Certificate где нужно будет скопировать ClientID.
Настройка MikBill
Для настройки в админ. панели открываем: Настройки ⇒ Прием платежей, вкладка Платёжные системы (новые)
Нужно включить модуль, (на время настройки еще включить логирование запросов)
Ввести ID клиента из Revolut Business portal раздела API Certificate
Указать domain как адрес админки БЕЗ / в конце и http:// или https:// в начале
Ввести содержимое revolut_privat.pem
Всё, настройка закончена.
Активация API
Войдите в Revolut Business portal и перейдите в Business API настройки.
Выберите ранее созданный сертификат и нажмите Enable access.
Нажмите Authorise. Это запустит 2-factor authentication (2FA) process.
После успешного прохода 2FA вас перекинет на указанный в OAuth url админки где вы должны будете увидеть сообщение OAuth has been successfully refreshed.
После чего API считается активированным и можно начинать работу
Импорт платежей
Выгрузка платежей происходит путем запуска консольной команды revolut_import
Тестовая выгрузка
Для проведения тестовой выгрузки можно запустить команду revolut_import с параметром dryRun
cd /var/www/mikbill/admin php index.php revolut_import dryRun
Данный параметр укажет что выгруженные платежи не нужно зачислять абонентам. Это позволит оценить правильность выгрузки и скорректировать алгоритм в случаи ошибок.
После того как в импорте платежей не будет ошибок, можно очистить все платежи командой revolut_flush и запускать уже импорт в боевом режиме.
cd /var/www/mikbill/admin php index.php revolut_flush
Production выгрузка
cd /var/www/mikbill/admin php index.php revolut_import