Обозначение

Сплитование позволяет перевести средства разным получателям посредством одной транзакции

Предварительная настройка

  1. Для создания пользователей необходимо воспользоваться роутом https://cloudpayments.atlassian.net/wiki/spaces/CA/pages/2611707931#%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B0%D1%82%D0%B5%D0%BB%D1%8F

  2. Необходимо получить платежные идентификаторы пользователей (layoutId). Они возвращаются из ответа создания получателей или их можно получить по методу поиска пользователей https://cloudpayments.atlassian.net/wiki/spaces/CA/pages/2611707931#%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D1%81%D0%BF%D0%B8%D1%81%D0%BA%D0%B0-%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9

Проведение платежа

Получение publicId

Перед проведением платежа определяем терминал, по которому будет происходить оплата.

Адрес: https://api.cloudtips.ru/api/payment/publicid

Тип: POST

Запрос:

Наименование

Тип

Обязательность(в флоу сплитования)

Описание

layoutId

String

Да

Идентификатор платежной ссылки (один из пользователей, который участвует в сплитовании)

split

Array

Нет

Массив сотрудников, для которых будет применено сплитование

split[].layoutId

string

Нет

Идентификатор платежной страницы сотрудника

split[].amount

decimal

Нет

Сумма, которая будет переводиться конкретному получателю

Пример запроса:

{
  "layoutId": "layoutId2",
  "split" : 
  [
      {
          "layoutId" : "layoutId1",
          "amount" : 100
      },
      {
          "layoutId" : "layoutId2",
          "amount" : 200
      }
  ]
}

Ответ:

Наименование

Тип

Обязательность

Описание

publicId

String

Да

Уникальный идентификатор терминала

succeed

Boolean

Да

Статус запроса, значение true и false

errors

Array of string

Да

Возвращатеся список ошибок, относящихся целиком к запросу

validationErrors

Array of string

Да

Поле представлено в формате ключ-значение и содержит ошибки, которые отнести к конкретному полю запроса

Пример ответа:

{
  "data": {
    "publicId": "string"
  },
  "succeed": true,
  "statusCode": 0,
  "errors": [
    "string"
  ],
  "validationErrors": {
    "additionalProp1": [
      "string"
    ],
    "additionalProp2": [
      "string"
    ],
    "additionalProp3": [
      "string"
    ]
  }
}

Проведение оплаты

В методы авторизации платежа добавляется объект Split, который отвечает за сплитование.

Методы, куда передается объект Split:

Измененные параметры (только в request)

Наименование

Тип

Обязательность (в флоу сплитования)

Описание

amount

decimal

Да

Сумма транзакции (сумма всех значений split[].Amount)

layoutId

Array

Да

Идентификатор платежной ссылки (один из пользователей, который участвует в сплитовании)

split[].layoutId

string

Да

идентификатор платежной страницы сотрудника

split[].amount

decimal

Да

сумма, которая будет переводиться сотруднику

Ограничения