1.4. Оплата с использованием формы

Введение

Оплата — тип транзакции, при которой Плательщик получает товар или услугу от Присоединяющейся Стороны в обмен на деньги или другие активы. Интеграция по форме позволяет Присоединяющейся стороне снять с себя ответственность за хранение, обработку и передачу карточных данных Плательщика или какой-либо другой конфиденциальной информации о платеже. Эти данные вводятся Плательщиком на платёжной форме ConnPay в среде, сертифицированной по стандарту безопасности PCI DSS.
Все формы настраиваемы. Примеры и макросы - см. настройки Платёжной Формы, Предварительно Заполненных Данных, Формы Ожидания и Финишной Формы в разделе Настройка Форм.

Значение терминов см. в Глоссарии.

Сценарий оплаты по форме

  @startuml
  skinparam roundcorner 20
  skinparam sequenceArrowThickness 2
  skinparam ParticipantPadding 30
  actor Плательщик as Customer
  participant "Веб-сайт\nПрисоединяющейся Стороны" as Merchant
  participant "Платёжный Шлюз" as g
  autonumber
  Customer -> Merchant: Инициализация
  activate Merchant
  == Запрос на проведение оплаты ==
  Merchant -> g: api/v2/sale-form
  activate g
  g --> Merchant: Redirect-url, orderId
  deactivate g
  Merchant -> Customer: Предоставление redirect-url \nбраузеру Плательщика
  deactivate Merchant
  activate Customer
  Customer -> g: GET redirect-url
  deactivate Customer
  activate g
  g --> Customer: Форма оплаты
  deactivate g
  activate Customer
  Customer -> g: Подтверждение формы
  deactivate Customer
  activate g
  g --> g: Обработка оплаты
  == Финальное перенаправление клиента ==
  g -> Customer: redirect_url веб-сайта Присоединяющейся Стороны
  activate Customer
  Customer -> Merchant: POST redirect_url\nstatus, orderid
  deactivate Customer
  activate Merchant
  group Получение финального статуса
  == Получение обратного вызова \nПрисоединяющейся Стороны ==
  Merchant <- g: Обратный вызов с финальным статусом
  g <-- Merchant: HTTP 200
  deactivate g
  == Запрос статуса ==
  Merchant -> g: api/v2/status
  activate g
  g --> Merchant: Ответ \nstatus, order-stage
  deactivate g
  end
  Merchant --> Customer: Показ результата
  deactivate Merchant
  @enduml

(2) Для имплементации запроса на проведение оплаты по форме см. /api/v2/sale-form/.
(9) Для имплементации финального перенаправления Плательщика см. Финальное Перенаправление.
(11,12) Для обработки обратного вызова с окончательным статусом заказа см. Обратный вызов Присоединяющейся Стороны.
(13) Для имплементации запроса статуса заказа, см. /api/v2/status/. Статус должен запрашиваться несколько раз с интервалом в 3-5 секунд до получения финального статуса.