Каскадное проведение платежей

Общая информация

По различным причинам проведение платежей может прерываться. Например, на стороне провайдеров или банков причинами могут служить технические сбои, задержки в обработке платежа или же достижение лимитов, заданных для пользователя на стороне какого-либо провайдера.

Для таких случаев в платформе Rocketpay поддерживается возможность каскадного проведения платежей. Каскадное проведение включает в себя последовательные дополнительные попытки проведения платежа через резервных провайдеровЭта возможность доступна только для разовых оплат в одну или две стадии как с поддержкой, так и без поддержки протокола 3‑D Secure.

Для поддержки такой возможности на стороне веб-сервиса не требуются какие-либо технические доработки относительно реализации стандартного проведении разовых оплат. Подробная информация о подключении и схеме каскадного проведения оплат представлена далее.

Подключение и настройка

Чтобы подключить каскадное проведение платежей, со стороны мерчанта необходимо согласовать с курирующим менеджером Rocketpay подключение этой возможности и протестировать каскадное проведение оплат совместно с сотрудниками технической поддержки Rocketpay.

Схема проведения

Каскадное проведение платежа начинается стандартно: от веб-сервиса к платежной платформе отправляется запрос на оплату через Payment Page, после приема и обработки которого пользователю отображается платежная форма для ввода данных карты, а затем осуществляется первая попытка проведения оплаты через одного из провайдеров, при необходимости включая аутентификацию пользователя по протоколу 3‑D Secure. Если эта попытка завершается списанием средств, то от платежной платформы к веб-сервису отправляется оповещение с итоговым статусом платежа — success, а иначе продолжается каскадное проведение платежа.

Далее, пока ни одна из выполненных попыток не привела к успешному списанию и дополнительные попытки еще не исчерпаны, на стороне платежной платформы инициируется выполнение новой попытки. Если в рамках дополнительной попытки не требуется аутентификация 3‑D Secure, то попытка выполняется без взаимодействия с пользователем. Если требуется аутентификация, то на Payment Page отображаются сообщение об ошибке, введенные ранее данные карты и кнопка Повторить попытку. Затем с согласия пользователя продолжается выполнение этой оплаты с повторной аутентификацией. Статусу платежа присваивается одно из промежуточных значений awaiting_3ds_result, awaiting_redirect_result или processing).

Каскадное проведение платежа заканчивается стандартно: от платежной платформы к веб-сервису отправляется оповещение с одним из итоговых статусов платежа: success, если одна из выполненных попыток привела к списанию средств, или decline, если ни одна из выполненных попыток не привела к списанию и лимит на дополнительные попытки исчерпан.

Далее представлена схема каскадного проведения оплаты в контексте оплаты в одну стадию с возможной аутентификацией 3‑D Secure 1.

Рис.: Каскадное проведение оплаты с поддержкой 3‑D Secure 1

  1. От платежной платформы к провайдеру передается запрос на проведение платежа.
  2. На стороне провайдера выявляется необходимость в аутентификации пользователя. Если требуется аутентификация, то к платформе отправляются данные для перенаправления пользователя, а иначе отправляется запрос к эмитенту на проведение платежа.
  3. От платежной платформы к Payment Page направляется оповещение с данными для перенаправления пользователя.
  4. Осуществляется взаимодействие с пользователем:
    • Если аутентификация первичная, то выполняется перенаправление пользователя на страницу аутентификации (ACS URL) эмитента.
    • Если аутентификация повторная, то сначала пользователю отображается страница с ранее введенными данными карты, сообщением об ошибке и предложением повторить попытку оплаты, и далее с согласия пользователя выполняется перенаправление на страницу аутентификации (ACS URL) эмитента.
  5. Пользователю отображается страница аутентификации, и он осуществляет требуемые действия.
  6. На стороне эмитента выполняется аутентификация пользователя.
  7. От эмитента к платежной платформе передаются данные о результате аутентификации.
  8. Выполняется перенаправление пользователя к Payment Page.
  9. Пользователю отображается страница ожидания в платежной форме.
  10. От платежной платформы к провайдеру отправляется запрос на продолжение проведение платежа.
  11. На стороне провайдера осуществляется обработка запроса на проведение платежа. В результате от сервиса провайдера либо к платформе отправляется уведомление об отказе, и на стороне платформы инициируется дополнительная попытка, либо к эмитенту отправляется запрос на проведение оплаты, и продолжается стандартное проведение платежа.

Формат оповещений

При каскадном проведении оплат с прямым использованием платежных карт от платежной платформы к веб-сервису отправляются только итоговые оповещения стандартного формата, описание которого представлено в разделе Оповещения (callbacks) в Payment Page.