Полный поток перенаправления

Обзор

Поток «Полное перенаправление» запускается после завершения потока «Начать перенаправление» и выполнения пользователем платежа в веб-интерфейсе эмитента. Целью потока полного перенаправления является:

  1. Сообщите Google и платежному интегратору , что платеж прошел успешно.
  2. Перенаправьте пользователя обратно в Google через интегратора.

Как работает поток

Интегратор может передать заполненную платежную информацию в Google тремя различными способами.

  1. Интегратор перенаправляет пользователя в Google, добавляя в ответ на перенаправление платежную информацию.
  2. Интегратор отправляет HTTPS-запрос в конечную точку Google RedirectPaymentCompleteNotification после завершения платежа.
  3. Google отправляет HTTPS-запрос в конечную точку GetRedirectPaymentStatus интегратора, и интегратор отправляет в ответ данные платежа.

Полный процесс перенаправления

На следующей диаграмме последовательности показано взаимодействие между браузером пользователя, Google, интегратором и эмитентом:

Полный процесс перенаправления

Вот список объектов на диаграмме выше:

  • Пользователь : Это человек, совершивший платеж.
  • Пользовательский интерфейс Google : веб-интерфейс или интерфейс приложения Google, в котором клиент инициировал платеж.
  • Сервер Google : внутренний сервер Google, который получает заполненные платежные данные и предоставляет пользователю приобретенные товары или услуги.
  • Платежный интегратор . Платежный интегратор, который будет выступать в качестве посредника между Google и эмитентом.
  • Эмитент : Эмитент, через которого пользователь произвел платеж.

Мы предполагаем, что пользователь только что завершил оплату на веб-сайте эмитента, что запускает поток полного перенаправления.

  1. Пользователь совершает оплату на портале эмитента.
  2. Эмитент создает URL-адрес перенаправления, указывающий на интегратора, с информацией о совершенном платеже.
  3. Эмитент перенаправляет пользователя на внутренний сервер платежного интегратора.
  4. Интегратор платежей создает ответ перенаправления , используя информацию из перенаправления эмитента.
  5. Платежный интегратор перенаправляет пользователя в Google.
  6. Платежный интегратор отправляет в Google уведомление RedirectPaymentCompleteNotification . Используется в случае сбоя перенаправления после того, как пользователь завершил оплату.
  7. Если Google не получит ответ о перенаправлении или RedirectPaymentCompleteNotification , Google отправит вызов GetRedirectPaymentStatus интегратору платежей, который должен ответить информацией о статусе платежа.
  8. Google обрабатывает платежную информацию и предоставляет пользователю приобретенные товары или услуги.

Уведомление о завершении перенаправления платежа

Как показано на диаграмме выше, Google требует, чтобы интеграторы отправляли в Google уведомление RedirectPaymentCompleteNotification , когда интегратор определяет, что перенаправленный платеж был принят или отклонен. Это уведомление можно отправить в Google до или после того, как пользователь будет перенаправлен обратно в Google.

Если интегратор узнает о завершении (принятии или отклонении) перенаправленного платежа даже через несколько дней после начала перенаправления, он все равно должен отправить в Google RedirectPaymentCompleteNotification . Эти уведомления помогают обновить окончательный статус платежа и необходимы для правильной обработки сверки.

Лучшие практики и другие соображения

Меры предосторожности

URL-адрес ответа на перенаправление будет включать незашифрованное поле redirectRequestId и зашифрованный объект RedirectResponse с тем же значением. Google проверит, что оба этих значения соответствуют полю requestId , отправленному в запросе на перенаправление .