Расщепление платежей

Расщепление платежа – это способ, при котором оплата, совершаемая потребителем, разбивается на уровне платежного агента, и он распределяет поступившие средства по поставщикам услуг.

1.png

Схема "Расщепление платежей"

1. Пользователь заходит на веб-сайт услуги, указывает сумму, которую хочет оплатить. Выбирает "оплата банковской картой".

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

3. На стороне платёжной платформы выполняются подготовка виджета с учётом параметров вызова.

4. На стороне платежной платформы Vepay происходит расщепление платежа (платежный агент сам задает сумму платежа на каждого партнера, указывая в параметрах его id).

5. Платёжная форма отображается в пользовательском интерфейсе. Пользователь вводит реквизиты карты для оплаты, нажимает оплатить.

6. От виджета к платёжной платформе отправляется запрос на выполнение целевого действия с учётом всех данных, введённых пользователем.

7. На стороне платёжной платформы выполняется регистрация номера карты (если требуется) и регистрация платежа. Данные передаются в платёжную среду.

8. В платёжной среде открывается страница банка-эмитента. Пользователь подтверждает платеж с помощью кода из sms. Нажимает "оплатить". Выполняются проверка карты и обработка платежа. В платёжную платформу поступает информация о результате.

9. В платёжной платформе обрабатывается итоговая информация. Происходит отправка частей платежа получателям.

10. Платежному агенту на заданный URL (если указан колбэк) отправляется программное оповещение о платеже.

11. Происходит перенаправление пользователя на страницу клиента в соответствии с результатом оплаты.

 

Описание API Расщепления платежей

1. На метод https://api.vepay.online/merchant/pay-parts поступает запрос, формата:


{
  "type":1,
  "extid":"166224",
  "descript":"descript..",
  "successurl":"http://example.com/s.php",
  "cancelurl":"http://example.com/e.php",
  "postbackurl":"http://example.com/p.php",
  "failurl":"http://example.com/e.php",
  "timeout":50,
  "fullname":"Test TEst Test1",
  "document_id":"Test document",
  "parts":[
    {
      "merchant_id":1,
      "amount":800
    },
    {
      "merchant_id":2,
      "amount":200
    }
  ]
}

2. На метод https://api.vepay.online/mfo/pay/lk-parts поступает запрос, формата:


{
  "type": 3,
  "extid": "641211",
  "descript": "descript..",
  "successurl": " http://site.ru/s",
  "cancelurl": " http://site.ru/e",
  "postbackurl":"http://site.ru/p",
  "failurl": " http://site.ru/f",
  "timeout": 50,
  "fullname": "Test TEst Test1",
  "document_id": "Test document",
  "parts": [
    {
      "merchant_id": 120,
      "amount": 10
    },
    {
      "merchant_id": 122,
      "amount": 20
    }
  ]
}

3. На метод https://api.vepay.online/mfo/pay/auto-parts поступает запрос, формата:


{
  "card": 346,
  "extid": "2123412412",
  "postbackurl":"http://example.com/p.php",
  "fullname":"string",
  "document_id":"string",
  "parts": [
    {
      "merchant_id": 120,
      "amount": 10
    },
    {
      "merchant_id": 122,
      "amount": 20
    }
  ]
}

Предполагается разработка новых методов, аналогично существующим. Смысл в том, чтобы, для создания платежей, дополнительной информацией, передавать список мерчантов (идентификаторы), с указанием размера их части. При этом, в теле запроса, значение amount не передается, т к это избыточно.

Параметры запроса:

Параметры Значение
type Тип шлюза
extid Внешний идентификатор запроса от платежного агента, который инициирует запрос
descript Описание платежа 
successurl Адрес Url для возврата после завершения платежа (успех)
cancelurl Адрес Url для возврата после отказа от оплаты
postbackurl Адрес Url для обратного вызова
failurl Адрес Url для возврата после завершения платежа (ошибка)
timeout Тайм-аут ожидания оплаты, от 10 до 60 минут
fullname Полное имя плательщика
merchant_id
Идентификаторы партнеров (поставщиков услуг) между которыми будет поделен платеж
document_id Идентификатор документа. Указывается для основания платежа
amount Cумма платежа, руб
card ИД карты (для автоплатежа)
parts Часть платежа
parts[merchant_id] Идентификатор мерчанта
parts[amount] Сумма части
Войти в кабинет
Техническая поддержкаinfo@vepay.online