Метод служит для авторизации карты и блокировки на ней указанной суммы после прохождения плательщиком 3DS авторизации. Метод используется для авторизации платежа по карте, подписанной на 3-D Secure.
Следует использовать данный метод, если метод pay вернул ошибку 6001 и передал параметры PaReq, ASCUrl и PD.
Передача параметров метода выполняется исключительно методом POST в кодировке UTF-8.
Процесс проведения транзакции в этом случае состоит из следующих этапов:
- Вызов метода pay и получение кода 6001.
- Перенаправление плательщика на сайт эмитента.
- Обработка ответа от сайта эмитента.
- Вызов метода process3Ds с передачей параметров, полученных от сайта эмитента.
Вместе с кодом 6001, в ответ на вызов pay, сервер возвращает дополнительные параметры, относящиеся к 3-D Secure: PaReq, ASCUrl и PD. Получив код 6001, необходимо направить плательщика на страницу, адрес которой указан в параметре ASCUrl. Переход на страницу ASCUrl должен быть осуществлен методом POST с передачей параметров PaReq, MD и TermUrl:
- PaReq — значение параметра PaReq из ответа сервера PayOnline на вызов pay.
- MD — номер транзакции и значение параметра PD из ответа сервера PayOnline на вызов pay, разделенные точкой с запятой.
- Для примера выше MD будет равен 1015368;OXf4nrsM4Oi0N7TbFRr QZdbaFQ8M0Dc0WGZUOdBPZ 3C2NXIrKlKObWBLTtzeknQY
- TermUrl — адрес страницы на сервере мерчанта, которая будет обрабатывать результат авторизации плательщика на сайте банка эмитента.
После того, как плательщик введет авторизационные данные на странице
ASCUrl, он будет перенаправлен на страницу, которую вы укажете в TermUrl.
На страницу
TermUrl будут переданы параметры PARes и MD.
MD будет содержать то же значение, которое передавалось в запросе к
ASCUrl.
Из значения
MD необходимо восстановить параметры TransactionId и PD, которые были получены во время вызова pay, после чего можно вызывать метод process3Ds.
- MerchantId — Идентификатор сайта. Обязательный параметр.
- TransactionId — Идентификатор транзакции в системе PayOnline. Обязательный параметр.
- PARes — Значение, полученное страницей TermUrl от банка эмитента.
- PD — Значение, полученное при вызове метода pay с кодом ошибки 6001.
- SecurityKey — Открытый ключ, подтверждающий целостность параметров запроса. Обязательный параметр.
- CustomData — Любые другие параметры