Перейти к основному содержимому

Сплит-платежи по API

Эта схема позволяет разделить один платеж на несколько с помощью методов отправки выплат и приема платежей.

Она вам подойдет, если:

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

Кому подходит

Площадкам, на которых люди продают друг другу товары и услуги, платят за это деньги и перечисляют площадке комиссию.

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

Есть:

  • отправитель — человек, который платит деньги за товар или услугу;
  • получатель выплаты — человек, который получает часть денег (например, за продажу товаров);
  • компания — получает часть денег, например, комиссию за использование своего сайта (это вы).

Вкратце:

  1. Вы начинаете списание с холдированием и замораживаете деньги на карте отправителя.

  2. Потом проводите выплату получателю.

  3. Когда выплата проходит, списываете замороженную сумму с карты отправителя.

Разница между суммой платежа, который вы получили, и суммой выплаты, которую провели — это ваша комиссия.

А теперь подробнее.

Как провести сплит-платеж

Шаг 1. Токенизируйте карту получателя

Покажите получателю выплаты виджет токенизации. Получатель введет данные карты, а вам вернется ее токен.

Это можно сделать один раз, сохранить токен и потом отправлять на карту деньги по этому токену.

Шаг 2. Создайте запрос на списание денег с карты отправителя

  1. Создайте платежную сессию session/create.
  2. Получите токен для работы с виджетом — с идентификатором платежной сессии, созданной на предыдущем шаге.
  3. Вызовите виджет платежной формы и покажите отправителю выплаты.

Отправитель проходит через процесс оплаты: вводит данные карты, подтверждает оплату по 3D Secure, если нужно.

Сумма платежа замораживается на карте отправителя.

Шаг 3. Получите уведомление о холдировании

Банк 131 пришлет вам вебхук ready_to_capture. Это значит, что деньги успешно заморозились на карте отправителя. Можно проводить выплату.

Шаг 4. Отправьте выплату получателю

Заплатите получателю деньги — проведите выплату по токену его карты, который вы заранее получили и сохранили.

В этом примере получатель — самозанятый, выплата проводится с фискализацией в налоговой, вам приходит чек.

  1. Создайте новую платежную сессию session/create.

  2. Отправьте деньги получателю запросом session/start/payout/fiscalization, в запросе передайте:

  • токен банковской карты получателя,
  • ФИО получателя в параметре recipient.full_name,
  • ИНН получателя в tax_reference,
  • назначение платежа в поле metadata.
  1. Получите вебхук payment_finished с чеком.

Шаг 5. Спишите замороженные деньги с карты отправителя

Это можно сделать запросом capture_request.